This module extends the Netherlands BTW Statement module (BTW aangifte report), by adding the statement for the Intra-Community transactions declaration (ICP declaration).
The ICP declaration report is based on line 3b - Leveringen naar landen binnen de EU (omzet) of the BTW aangifte report. The period is also the same as the one selected in the BTW aangifte report.
This ICP declaration report includes:
- the VAT identification numbers of your customers;
- the total amount of intra-Community supplies from the Netherlands for every customer during the selected period.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Adds an ICP Statement tab to the Dutch VAT statement where you can see, per EU customer, the total intra-Community supplies of goods and services, and print or export it to PDF or Excel.
This module extends the Dutch VAT statement (l10n.nl.vat.statement) with an extra "ICP Statement" tab. There you find a list of lines, one per customer, showing the customer, country code, VAT number, currency, amount for products and amount for services, plus a total ICP amount.
- Lines are generated automatically when the VAT statement is posted, based on the transactions tagged with the 3b (intra-Community supplies) tax tag. Goods and services are separated using the product type or the tax name.
- A button "Update" lets you recompute the lines while the statement is posted; it is blocked on a final statement.
- When the statement is reset to draft, the ICP lines are removed.
- A check prevents lines with a Dutch country code or a country outside Europe from being kept.
Two reports are available on the VAT statement: "NL ICP Statement" (PDF) and "NL ICP Statement XLS export" (Excel), both showing the period, the customer details and the amounts, with a total line.
Depends on
Required by other modules
Models and fields (3)
- l10n.nl.vat.statement · extends an existing modelicp_total (Total ICP amount), icp_line_ids (ICP Lines)
- l10n.nl.vat.statement.icp.line · new modelvat (VAT), format_vat, partner_id, currency_id, country_code, partner_name, statement_id, currency_name (Currency Name), amount_products, amount_services, format_amount_products, format_amount_services
- report.l10n_nl_tax_statement_icp.report_tax_statement_icp_xlsx · new model
Text generated by AI (DeepSeek) from reading the Odoo 18.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: 7 confirmed, 2 with no information of 9 versions.
Sources · Odoo 18.0
Confirmed on 2026-11-03 in branch 18.0 of OCA/l10n-netherlands.
terminal Installation and usage
OCA documentation · Odoo 18.0Configuration
Source · Odoo 18.0This module makes use of the tax tags "3b".
If the default Odoo Dutch chart of accounts is installed (module l10n_nl) then "3b" tag is automatically present in the database.
If a non-standard chart of accounts is installed, you have to manually create the tax tags and properly set them into the tax definition. The name of the tags must contain the substring "3b", eg.: be formatted this way: "3bl (omzet)", "3bt (omzet)".
Taxes should be set differently, whether they refer to products or services. In particular the taxes for services should contain the "dienst" substring in the name. For example: Verkopen export binnen EU (producten) for products and Verkopen export binnen EU (diensten) for services.
Notice that, when selecting a product in invoice lines, its product type should be consistent with the selected tax:
- a product of type "service" should have a tax with "dienst" in its name
- a consumable or storable product should have a tax without "dienst" in its name
Usage
Source · Odoo 18.0To use this module, you need to:
- Create a BTW Statement: a new tab ICP Statement will be displayed; the tab contains the lines of the ICP declaration report.
- In tab ICP Statement press the Update button in order to recompute the ICP statement lines.
Printing a PDF report:
- If you need to print the report in PDF, open a statement form and click: Print -\> NL ICP Statement
Exporting in XLS:
- If you need to export the report in XLS format, open a statement form and click: Print -\> NL ICP Statement XLS export
Multicompany fiscal unit:
- In case one single tax statement is created for companies belonging to a fiscal unit, the sum of the intra-Community supplies and services of all the companies will be written down in the totals of that tax statement.
- After the fiscal unit tax statement is created and posted, for each of the companies belonging to a fiscal unit that trades intra-Community, create its own ICP report separately.
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.