v 13.0 Third Party 167
Download for v 13.0 Deploy on Odoo.sh
Required Apps Invoicing (account)
Included Dependencies
Lines of code 1622
Technical Name l10n_nl_tax_statement
Also available in version v 15.0 v 14.0 v 9.0 v 10.0 v 12.0 v 11.0
You bought this module and need support? Click here!

Netherlands BTW Statement

Beta License: AGPL-3 OCA/l10n-netherlands Translate me on Weblate Try me on Runbot

This module provides you with the Tax Statement in the Dutch format.

Use this module in combination with module l10n_nl_tax_invoice_basis if you want to adopt the Factuurstelsel system for your Company.

Table of contents


  • This module depends on module date_range.


This module makes use of the tax tags (eg.: 1a, 1b, 1c, 1d, 2a…) as prescribed by the Dutch tax laws.

If the default Odoo Dutch chart of accounts is installed (module l10n_nl) then these tags are 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 be formatted this way: “+1a (omzet)”, “+1a (btw)”, “-1a (omzet)”, “-1a (btw)”, “+2a (omzet)”, “+2a (btw)”, etc…

If your Company adopts the Factuurstelsel system for the accounting, also install the module l10n_nl_tax_invoice_basis (for more information about the installation and configuration of that module, check the README file).

The user must belong to the Show Full Accounting Features group, to be able to access the Invoicing -> Configuration -> Accounting -> NL BTW Tags menu.


To create a statement you need to:

  1. Verify that you have enough permits. You need to belong to the Show Full Accounting Features group.
  2. Go to the menu: Invoicing -> Reporting > NL BTW Statement
  3. Create a statement, providing a name and specifying start date and end date
  4. Press the Update button to calculate the report: the report lines will be displayed in the tab Statement
  5. Manually enter the BTW amounts of lines ‘5d’, ‘5e’, ‘5f’ (in Edit mode, click on the amount of the line to be able to change it)
  6. Press the Post button to set the status of the statement to Posted; the statements set to this state cannot be modified

To add past undeclared invoices/moves:

  1. Open the tab Past Undeclared Moves, available when the statement is in status Draft.
  2. Set an initial date (field From Date) from which the past undeclared moves will be displayed.
  3. One by one, add the displayed undeclared moves, by clicking on the Add Move button present in each line.
  4. Press the Update button in order to recompute the statement lines.

Extra info about the workflow:

  1. If you need to recalculate or modify or delete a statement already set to Posted status you need first to set it back to Draft status: press the button Reset to Draft
  2. Instead, if you send the statement to the Tax Authority, you may want to avoid that the statement is set back to Draft: to avoid this, press the button Final. If you then confirm, it will be not possible to modify this Statement or reset it back to draft anymore.

Printing a PDF report:

  1. If you need to print the report in PDF, open a statement form and click: Print -> NL Tax Statement

Multicompany fiscal unit:

  1. According the Dutch Tax Authority, for all the companies belonging to a fiscal unit, it’s possible to declare one single tax statement.
  2. To create one tax statement for a fiscal unit, log in into the parent company and select the child companies in the statement (be sure the user belongs to the multicompany group).
  3. The child companies must have the same Tax codes labels (Tax Tags) as the parent company, the same currency as the parent company and must be located in The Netherlands.

Known issues / Roadmap

  • Exporting in SBR/XBLR format not yet available
  • Limit invoices to last 5 year based on fiscal year end date (legal requirement)
  • The unreported from date is calculate as 1 quarter, it should take 1 fiscal year based on fiscal year end date

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.



  • Onestein



This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/l10n-netherlands project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.