In Uzbekistan a sales document does not end in Odoo. The electronic invoice is issued through an operator, the receipt through a cash register entered in the registry, and the waybill in the tax system. Odoo's official Uzbekistan localization (Fiscal Localization → “uz Uzbekistan”) provides accounting and tax settings, not the connection to these systems.
The parts are linked: the code appears on the invoice and the receipt, and the signature confirms the invoice.
Mandatory for all business entities since 1 January 2020. The seller signs the document and sends it through an operator, the roaming operator checks it, and the buyer confirms it. The list of operators is published on the official page and changes over time (gov.uz).
The key that confirms a document. The law treats an ERI as equal to a handwritten signature when three conditions are met. The key can be obtained through the Tax Committee’s E-IMZO system.
The 17-digit national code of a product or service. It appears on the invoice and the online receipt. Its first 11 digits must match the base code.
For cash and card payments, the receipt is sent to the tax system in real time through a cash register device from the state registry. E-POS is not a type defined by law; it is one company’s product.
When goods are transported, the waybill is issued electronically. If the goods are sold at the moment of dispatch, from 19 March 2025 the invoice can be combined with the waybill.
Tobacco, alcohol, beer, household appliances, medicines, water and soft drinks. From 1 July 2026 the check of the marking code on the receipt and invoice becomes stricter.
You select the localization in the Accounting settings, in the Fiscal Localization field, as the “uz Uzbekistan” package. The table is based on the Odoo 20 documentation (the 19 documentation says the same). The package cannot be replaced once journal entries exist, so the choice is made at the start of the project.
| Goal | In the Odoo documentation | Extra work (BUline) |
|---|---|---|
| Chart of accounts | Available: preconfigured to Uzbekistan standards. If a new account is not given a tag, it behaves like an off-balance-sheet account and does not appear in the report | Comparing with the company’s current accounts, opening any missing account with a tag; review by the accountant |
| VAT | Available, according to the documentation: 12% standard rate, 0% on exports, 0% on exempt operations | The rule for choosing the correct tax type in a document, fiscal positions. The optional 6% VAT regime (PF-100, 26 May 2026; from 1 June 2026 to 1 January 2030): for trade, catering and service businesses. 6% applies to the whole turnover, profit tax is 0%, VAT paid on purchases is not offset, and the decree sets no turnover threshold for entry. The accountant confirms whether it applies; the Odoo localization documentation does not mention this regime. VAT settings → |
| Balance sheet and profit and loss statement | Available: IFRS-style, tag-based (Accounting Reports module) | Checking the first report against the accountant’s figures to the last digit |
| Electronic invoice (connection to an operator) | Not in the documentation: not mentioned on the page; Uzbekistan is not on the list of Odoo e-invoicing pages | Choosing an operator, fields, signing procedure, connection method: a separate project |
| Signing with an ERI | Not described in the documentation: the Odoo Sign page for Uzbekistan states compliance and lists confirmation by SMS, email, geoIP and a drawn signature; signing with an ERI key is not described | How to use the ERI in the operator’s account or through E-IMZO when connecting |
| IKPU (MXIK) code | Not in the documentation: not mentioned in the localization documentation | A field on the product card, a code check on import, change tracking |
| Online cash register and fiscal receipt | Not in the documentation: an Odoo POS receipt is an internal document, and a fiscal module is not mentioned in the documentation | Connection to the API of a cash register device from the registry. Cash desk and POS → |
| Electronic waybill | Not in the documentation: not mentioned | Matching stock movements and transport data to the waybill fields |
In the Odoo Apps Store search (25 October 2026), “uzbekistan” returns “Uzbekistan e-Faktura” and its “CN” and “In” variants (20.0, author Pokutsoft), and “didox” returns “Didox Integration” (19.0, author todoo.uz). The search works by name, so this is not a complete list. Before installation we check each module’s capabilities, license and compatibility with the new version. According to the Odoo documentation, such modules are not compatible with Odoo Online.
The procedure comes from the regulation under Resolution No. 522. An Odoo invoice does not enter this chain on its own: one sale creates two documents. Operator, roaming and ERI →
Creates the document in special software, enters the buyer’s details, signs it with an ERI and sends it through the operator to the roaming operator. For a sale to an individual who is not an entrepreneur, only the seller signs.
The document is checked against the requirements and delivered through the buyer’s operator. A document with an error, or an incomplete one, is returned to the seller.
Confirms with an ERI or rejects, stating a reason. The response can be given at any time: until then the document stays in the “delivered” status.
A document confirmed by the buyer goes back to the seller through the roaming operator.
Once both parties have confirmed, the document receives a QR code. Confirmed documents are stored with the roaming operator for at least 10 years.
A hypothetical sale, step by step. The Odoo column relies on the localization’s ready-made features; the EHF column (the official electronic invoice, e-faktura) relies on Resolutions No. 522 and No. 830.
| Stage | In Odoo | In the EHF system |
|---|---|---|
| The seller confirms the invoice | A journal entry and the tax amount are created | The EHF is prepared separately and signed with an ERI |
| The roaming operator checks | No data comes back | If there is an error, the document is returned |
| The buyer responds | No data comes back | The status is “confirmed” or “rejected”, and a QR code is attached |
| Risk level (from 2026) | Not mentioned in the documentation | Low or high risk; VAT on a high-risk document is offset only after it has been paid in full to the budget |
Under Cabinet of Ministers Resolution No. 830 (26 December 2025), from 1 January 2026 EHFs are divided into low-risk and high-risk categories. The share of high-risk EHFs must not exceed 10% of the total number of EHFs issued by VAT payers. The main consequence concerns VAT offset: VAT on a high-risk EHF is offset after it has been paid to the budget in full (if paid in part, up to the amount paid). The payment is made through the personal account, stating the EHF identification number.
This is BUline’s analysis, not a legal requirement. We choose the route at the diagnostic, based on the operator’s capabilities, the number of documents and how the ERI is handled.
Operators describe their capabilities on their own sites, and we have not tested them independently. E-DOCS writes about connecting 1C or your own software through an open REST API; the Didox API documentation is on a separate site (api-docs.didox.uz). We check other operators’ documentation separately.
Article 4 of Law ZRU-793 treats an ERI as equal to a handwritten signature when three conditions are met at the same time: the signature’s validity is confirmed, the key certificate was valid at the time of verification or signing, and the signature was used for the purpose stated in the certificate. The certificate’s validity must not exceed 24 months from registration (Article 22); the conditions for extension are set out separately in the law. In a legal entity, the head is responsible for the use of the key. When an ERI equals a paper signature →
The national catalogue is maintained by the “New Technologies” center under the Tax Committee (tasnif.soliq.uz). If a code is not found, the taxpayer sends a request from the personal account with an ERI signature; the operator reviews it within three business days. A change or deletion of a code takes effect after 30 days (except adding a new code and editing a name). Stating the correct code on the invoice and the online receipt is the taxpayer’s obligation; if the first 11 digits of the code do not match the base code, this counts as a non-conformity. How MXIK works →
Under Presidential Decree PF-5813 and Cabinet of Ministers Resolution No. 943, a point that accepts cash sends the receipt to the tax system in real time. Since 1 January 2022 this applies to all business entities. The difference →
Cabinet of Ministers Resolution No. 168 came into force on 19 March 2025. Under it, if goods are sold at the moment of dispatch, the electronic invoice can be issued combined with the electronic goods-transport waybill. Combining is not mandatory (“can be issued”). If goods are collected without a vehicle or are not sold together with dispatch, they cannot be combined; sales by corporate bank card or through a marketplace are also excluded. A transfer between two warehouses involves no sale, so the waybill type “warehouse to warehouse” is used. In case of a technical failure, a paper waybill is entered electronically within five calendar days after the system is restored. Resolution No. 168 →
The stages follow the general BUline Method. The timeline is agreed in writing after the diagnostic. Implementation process →
We study the operator, the holders of ERI keys, the number of documents, the state of product codes, the cash register device, the waybill flow and the Odoo hosting type. Result: a business requirements document (BRD).
We approve the connection route (parallel work, file or API), the additional fields in Odoo, the data owners and the test plan. Written answers are obtained from the operator and the cash register provider.
The localization and fields are configured, one test per document type is run in a test database, then a pilot with real documents in one department.
The accountant, warehouse and logistics staff are trained by role: document status, handling a rejected document, the code and the waybill. Instructions and video lessons are provided.
After launch, 30 days of intensified support, then agreed ongoing support.
This list speeds up the diagnostic. We can start even if not everything is ready.
| Mistake | Consequence | How we prevent it |
|---|---|---|
| Sending the buyer an Odoo invoice and not creating an EHF | There is no official document; the buyer offsets the tax based on the EHF | Defining the connection route and the person responsible at the start of the project |
| The amount, date or tax rate in Odoo and in the EHF do not match | A mismatch both in the buyer’s books and in your reporting | Linking the fields and a monthly reconciliation |
| Sharing an ERI key between employees or giving it to a third-party program | The key holder’s liability, the risk of the key leaking | A separate key for each employee, a list of expiry dates |
No. An Odoo invoice is an accounting document, whereas the official EHF is signed with an ERI through an operator and passes into the tax system. Odoo’s Uzbekistan documentation does not mention a connection to e-faktura, so this link is built separately.
It depends on the selected operator’s open interface, the procedure for using the ERI key and the Odoo hosting. Third-party modules are visible in the Apps Store, and we do not recommend them without testing them ourselves. At the diagnostic we open the operator’s documentation and confirm the route in writing.
Not for electronic invoices and government systems: they require a certified key. For a contract, another route under the Civil Code remains open, but for a specific document a lawyer’s opinion is obtained.
A responsible employee who knows the product selects the code from the catalogue. A change takes effect after 30 days, so we check the status of codes in Odoo regularly. If a code is not found, a request is sent, which is reviewed within three business days.
The deadline for sending the data to the operator is 24 hours under PF-5813 and, for the first offline receipt, 48 hours under clause 31 of Resolution No. 943 (version of 23 January 2026). We confirm the current deadline in writing with the tax service and write the offline procedure accordingly.
The new version of clause 4 of Resolution No. 943 prohibits secondary fiscal accounting systems from 22 October 2026. We ask the tax service in writing how the Odoo POS falls under this clause, and then choose the connection route.
The Odoo license depends on the number of users and apps (terms on odoo.com). The scope of BUline’s services depends on the number of document flows, users, branches, apps, customization, data volume and training. The exact cost and timeline are given in a written proposal after the free diagnostic.
During the diagnostic, we review your processes and tell you where standard Odoo is enough and where configuration is needed — with an app list, edition and phases.