A company buying over the counter identifies itself by its CUI, and that code is rarely on file before the first sale. Searching for it in the Choose customer dialog of the Point of Sale would normally end on "no customers found" -- yet the company is public record at ANAF.
This module turns that dead end into the way company customers are added at the till:
- a search that reads as a Romanian CUI is recognised as one, with or without the RO prefix, since the customer reading it off a document does not know which of the two the shop keeps;
- a customer already on file under that CUI is offered straight away, even when the cashier would never have found them by name;
- when there is none, a Create from ANAF button fetches the company -- name, VAT status, registration number and registered address -- creates it and puts it on the order in one step. The same ANAF history the partner form keeps is recorded, so it does not matter that the customer came in through the till.
Choosing a company as the customer does not turn the receipt into an invoice. In Romania the fiscal receipt is what the till issues and it settles the sale on its own; the invoice is asked for, not assumed.
auto_awesome What this module does
AI-generated from the code · Odoo 20.0In the Point of Sale customer search, a Romanian tax code (CUI) typed by the cashier is recognised, an existing customer with that code is found, and if none exists a button fetches the company from ANAF, creates it and puts it on the order.
This module makes the customer search of the Point of Sale work with Romanian company tax codes (CUI). When the cashier types something that looks like a CUI — 2 to 10 digits, with or without the RO prefix and with or without spaces — the till treats it as a tax code search instead of a name search.
If a customer already on file carries that code (with or without RO), that customer is returned and selected on the order, even if the cashier would never have found them by name.
If nobody matches, the usual "no customer found" text is replaced by a message showing the code and a button "Create from ANAF (VAT: ...)". Pressing it asks the Romanian tax authority for the company registered under that code, creates the customer with the data returned (including the Romanian country and the ANAF VAT status information), and puts it on the current order. Errors from ANAF or an invalid code are shown as a notification at the till.
A second behaviour changes how orders behave: choosing a company as customer no longer automatically marks the order as to be invoiced. The price list and fiscal position are still updated, but the invoice is only produced if the cashier asks for it, because in Romania the fiscal receipt settles the sale.
The module touches the customer record (res.partner) and the Point of Sale order, and adds its logic to the customer selection screen of the Point of Sale.
Depends on
Models and fields (1)
- res.partner · extends an existing model
Text generated by AI (DeepSeek) from reading the Odoo 20.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 2 confirmed, 7 with no information of 9 versions.
Sources · Odoo 20.0
Confirmed on 2026-11-03 in branch 20.0 of OCA/l10n-romania.
terminal Installation and usage
OCA documentation · Odoo 20.0Configuration
Source · Odoo 20.0Nothing to configure in the Point of Sale. The lookup uses the ANAF web service configured for Romania - Partner Create by VAT, so a company customer added at the till is the same record the back office would have created from the partner form.
Usage
Source · Odoo 20.0In the Choose customer dialog of the Point of Sale, type the customer's CUI, with or without the RO prefix.
If a customer is already on file under that code, they show up in the list as usual. If none does, the dialog offers Create from ANAF: it fetches the company from ANAF, creates it with its registered name and address, and puts it on the current order.
A CUI that ANAF does not know is refused with that reason, and no customer is created -- the receipt should not go out to a company named after a number.
No verified information in OCA: Installation.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.