Language / Taal: This document is the English version. Lees in het Nederlands
This document describes how Dutch auditors reconcile an entity's recorded VAT (BTW — Belasting over de Toegevoegde Waarde) position against its periodic VAT returns (BTW-aangifte), how corrections through the suppletie process work, and how the RGS (Referentie GrootboekSchema) aids in structuring the reconciliation. It covers the procedural steps, the relevant assertions, and where the process intersects with broader financial statement audit objectives.
Any business that supplies goods or services in the Netherlands is, in principle, a BTW-plichtige ondernemer (VAT entrepreneur) and must charge BTW to customers, collect it on behalf of the Belastingdienst, and offset it against BTW paid on business purchases. The legal basis is the Wet op de omzetbelasting 1968 (Wet OB 1968).
BTW is a pass-through tax: the entity is not the economic bearer. The net amount owed to (or receivable from) the Belastingdienst at any point is the difference between verschuldigde BTW (output VAT charged to customers) and voorbelasting (input VAT paid on purchases and costs that are deductible).
The Belastingdienst assigns each VAT entrepreneur a default reporting period:
The reporting period assigned by the Belastingdienst determines how frequently the entity's general ledger BTW balances must be settled. For most Dutch SME audits, the relevant period is quarterly.
Each BTW-aangifte follows a standardized form (Form OB). The key rubrics are:
| Rubriek | Description | |---|---| | 1a | Domestic supplies at 21% — output VAT base and tax | | 1b | Domestic supplies at 9% — output VAT base and tax | | 1c | Domestic supplies at other rates / zero rate | | 1d | Private use (privégebruik) of business assets | | 1e | Supplies where BTW is reverse-charged to the buyer | | 2a | Supplies from other EU member states (intracommunautaire verwervingen, ICV) | | 3a/3b | Supplies from outside the EU (import) | | 4a | Supplies to other EU member states at 0% (ICS — intracommunautaire levering) | | 5b | Voorbelasting (input VAT deductible) | | 5c | Small-business scheme adjustment (if applicable — KOR, Kleineondernemersregeling) |
The netto BTW (net VAT payable or receivable) is the sum of output VAT (rubrics 1–4) minus the voorbelasting (rubriek 5b). A positive result means the entity owes BTW to the Belastingdienst; a negative result means the entity is entitled to a BTW refund (teruggaaf).
Dutch bookkeeping systems (Exact Online, AFAS, and others) automatically post BTW to designated BTW-accounts when transactions are entered. The accounts involved typically include:
In systems aligned with RGS (Referentie GrootboekSchema, see erp-data-and-xaf-standards.md), BTW accounts are mapped to standardized RGS codes. RGS categorizes BTW positions under the W&V (resultaat) and balans sections. For audit purposes, the auditor needs to know the RGS codes used for BTW in the specific entity's bookkeeping to perform the reconciliation.
ERP systems like Exact Online and AFAS assign a BTW-code to each transaction line. The BTW-code determines:
The BTW-code is the lowest-level key that ties a transaction's VAT treatment to both the general ledger account and the aangifte rubriek. Auditing BTW positions therefore requires understanding the entity's BTW-code configuration: are all codes correctly mapped to rubrics? Are there codes that should be zero-rated that are posting to a 21% account, or vice versa?
The core purpose of a BTW reconciliation in a financial statement audit is to confirm that the BTW balances shown on the balance sheet (BTW payable or receivable at year-end) are complete and correctly stated, and that any differences between the BTW position per the general ledger and the position per the aangifte have been identified and resolved.
The auditor obtains copies of all BTW-aangiften filed for the financial year (typically four quarterly returns for an SME on quarterly reporting). These are obtained from the entity (usually via the Belastingdienst Mijn Belastingdienst portal printout or the accountant's tax software output).
For each BTW rubriek, the auditor sums the amounts across all four quarters and compares the total to the corresponding BTW account balances in the general ledger over the same period.
Example: the sum of rubriek 1a (21% output VAT) across all four quarterly returns should agree to the total credits posted to the "BTW hoog tarief" output account in the general ledger over the year. Unexplained differences require investigation.
Differences between aangifte totals and general ledger totals typically arise from:
At year-end, any settled quarterly positions should be zero on the balance sheet (paid or received). Only the Q4 position (if settled after year-end) or any unresolved discrepancies should remain as a balance sheet item. The auditor traces:
If a material BTW payable is outstanding at year-end, it must be presented as a current liability (kortlopende schulden, crediteuren — belastingen en premies). BTW receivable (refund position) is presented as a current asset. Incorrect netting of BTW payable against BTW receivable from different periods requires correction.
A suppletie (BTW correction) is the mechanism for correcting errors or omissions in previously filed BTW-aangiften. The Belastingdienst's own guidance and the published Toelichting bij de suppletie btw describe it as the process to use when the original aangifte was wrong — either too much BTW was paid (over-declaration) or too little (under-declaration).
The suppletie is filed on a separate form (Suppletie btw / Correctie btw-aangifte, form OB99) and covers the difference between what was filed and what should have been filed. It is not a new aangifte but a standalone correction document.
Under Dutch fiscal law, an entrepreneur is required to file a suppletie as soon as they discover a material error in a previous aangifte — without waiting for the Belastingdienst to request a correction. Voluntary and timely suppleties are treated more favorably than corrections made only after tax authority inquiry.
The Belastingdienst imposes a penalty (boete) for late, incomplete, or incorrect aangiften. A voluntary suppletie filed promptly typically results in a lower or nil boete.
For the auditor, the existence of suppleties signals:
The auditor should obtain a complete list of suppleties filed during and shortly after the financial year and trace each to the corresponding ledger entry and to the balance sheet treatment.
Entities that supply goods or services to VAT-registered customers in other EU member states at the 0% ICS rate must file a separate ICP-aangifte (opgaaf intracommunautaire prestaties) listing each such customer by VAT number and the total value supplied. The ICP-aangifte is filed quarterly (or monthly) and is checked by the Belastingdienst against the VIES system (VAT Information Exchange System) of the receiving country.
Audit relevance: the auditor should reconcile the 0% ICS amounts in the BTW-aangifte (rubriek 3b or the export/ICS rubrics) against the ICP-aangifte totals. Discrepancies can indicate that zero-rated supplies are being claimed without valid proof that the goods left the Netherlands or that the customer is a valid EU VAT entrepreneur.
The Referentie GrootboekSchema (RGS) is a standardized Dutch chart-of-accounts structure maintained by a steering group including the Belastingdienst, SBR (Standard Business Reporting), and several software vendors. RGS assigns every bookkeeping account a standardized code (RGS-code) and maps it to the XBRL taxonomy used in SBR/jaarrekening filings.
For BTW, RGS defines:
ERP systems (Exact Online, AFAS) that are RGS-aligned will export journal entries with RGS codes embedded in the XAF file. This allows automated reconciliation of BTW positions: the auditor can filter the XAF for all entries under RGS BTW codes and cross-reference the totals against the filed aangiften. This approach is a standard analytical procedure under NV COS 520 (Cijferanalyses).
XAF 4.0 (the current auditfile standard, see erp-data-and-xaf-standards.md) is explicitly RGS-aligned, making the BTW reconciliation through the auditfile more straightforward than in earlier XAF versions.
| Finding | Possible cause | Audit response | |---|---|---| | Aangifte totals differ from GL totals by more than a small rounding amount | Timing difference, coding error, or unreported correction | Request reconciliation from entity; inspect underlying transactions | | BTW-codes missing from XAF or assigned "blank" | System configuration gap or incomplete migration | Review full BTW-code list in ERP; confirm all are mapped | | Large voorbelasting on costs typically not VAT-deductible (e.g., healthcare, exempt activities) | Incorrect input VAT claim | Review transaction-level BTW codes for specific account types | | Recurring suppleties of similar amounts or on the same rubriek | Systematic coding error or process control failure | Trace the root cause; assess internal control implication | | ICS supplies without corresponding ICP-aangifte entries | Potential non-compliance or omitted zero-rate documentation | Obtain proof of delivery to EU destination; check VIES | | BTW refund outstanding for more than two quarters | May indicate risk of classification (current vs. long-term) or dispute with Belastingdienst | Confirm status with Belastingdienst portal; assess collectability |
datadump/belastingdienst/btw/btw_aangifte_doen_en_betalen.txt)datadump/belastingdienst/btw/suppletie_btw_toelichting.txt)datadump/afas/vat-btw/01-btw-icp-inrichten.md)datadump/exact-online/vat-btw/)docs/erp-integration-exact-afas-research.md (RGS mapping details)Research gap noted: The primary source for RGS BTW code details is the RGS specification maintained by the Auditfileplatform/SBR steering group. The specific RGS codes for BTW positions were not scraped at code-level detail in the current datadump; the RGS structure described here is based on secondary practitioner sources and ERP documentation. For code-level accuracy, consult the official RGS specification at odb.belastingdienst.nl or rgs.nl.
Reacties