OdooWiki OCA HUB

Intrastat Product Declaration for Belgium

l10n_be_intrastat_product folder_open OCA/l10n-belgium open_in_new
Intrastat License: AGPL-3

This module implements the Belgian Intrastat reporting.

The report can be reviewed and corrected where needed before the creation of the XML file for the online declaration (ONEGATE).

More information can be found on the National Bank website:

auto_awesome What this module does

AI-generated from the code · Odoo 17.0

Adds Belgian Intrastat reporting to Odoo: prepare, review and correct the monthly Intrastat declaration and generate the XML file for the ONEGATE online submission.

This module adapts the generic Intrastat declaration to Belgian rules. Users with the new "Belgian Intrastat Product Declaration" access group get a dedicated menu under the Intrastat root menu, opening a list, form and graph of Intrastat declarations.

On the declaration screen, the computation lines and declaration lines are shown with Belgian-specific layouts: the region column is hidden, accessory costs are hidden, and the Incoterm becomes mandatory only when the reporting level is "extended". For arrivals, the VAT number column is hidden.

Business rules added for Belgian companies: - The company's Intrastat region must be configured, otherwise a warning is raised. - Credit notes are handled following the National Bank manual: the transaction code of the refund is used when set, otherwise the linked return shipment or the original invoice is used; if nothing can be determined, a message is added to the declaration. - Transport and insurance accessory costs are never added to the value of goods. - A special Intrastat code 99600000 is required for credit notes; if missing, an error is raised. - For B2C or B2B transactions without a valid VAT number, the partner VAT is replaced by QV999999999999.

The module generates the ONEGATE XML file (forms EX19 for arrivals, INTRASTAT_X for dispatches, standard or extended) and validates it against the official schema. It also adapts the Excel export columns. It extends intrastat.product.declaration and intrastat.product.computation.line, and hides the region field on invoices.

Menus it adds

l10n_be_intrastat_product_declaration_menu
Models and fields (2)
  • intrastat.product.declaration · extends an existing model
  • intrastat.product.computation.line · extends an existing model

Text generated by AI (DeepSeek) from reading the Odoo 17.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-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 4 confirmed, 5 with no information of 9 versions.

Sources · Odoo 15.0

Confirmed on 2026-11-03 in branch 15.0 of OCA/l10n-belgium.

terminal Installation and usage

OCA documentation · Odoo 17.0

Conflicting modules

This module conflicts with the account_intrastat and l10n_be_intrastat modules from the Odoo Enterprise addons. If you have already installed these modules, you should uninstall them before installing this module.

Refund handling

We recommend to also install the OCA stock_picking_invoice_link module, cf. . This modules establishes a link between invoice lines and stock pickings. When this module is installed the declaration will take into account refunds created via return pickings.

  • Accounting -\> Configuration -\> Settings Section Intrastat:
  • Arrivals : Exempt, Standard or Extended
  • Dispatches : Exempt, Standard or Extended
  • Default Intrastat Transport Mode (Required for Extended Declaration)
  • Default Intrastat Region Section Customer Invoices:
  • Default Incoterm
  • Warehouse Intrastat Region to cope with warehouses in different regions
  • Inrastat Codes, Supplementary Units, Transaction Tyoes, Transport Modes, Regions Cf. menu Accounting / Configuration / Intrastat The configuration data is loaded when installing the module. We do not recommend to change these settings. A configuration wizard (part of the intrastat_product module) also allows to update the Intrastat Codes so that you can easily synchronise your Odoo instance with the latest list of codes supplied by the configuration wizard. (an update is published on an annual basis by the Belgian National Bank).
  • Product You can define a default Intrastat Code on the Product or the Product Category.
  • Fiscal Positions Check your Fiscal Positions and set the 'Intrastat' field for transactions that must be included in the intrastat declaration. We recommend to set the 'VAT required' flag on the 'Intra Community Regime' Fiscal Position for B2B customers. If you have B2C customers or B2B customers which are not subject to VAT you can create a 'Intra Community Regime NA' Fiscal Position on which the 'Intrastat' field is set to B2C while the 'VAT required' flag has been turned off.
  • Partner Ensure that your B2B Customer records have a valid VAT Number. Consider the use of the OCA account_fiscal_position_vat_check module to enforce the correct setting. Cf. .

No verified information in OCA: Usage.

info

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.