Prilk </>Documentation
< Localization />

Your accountant’s monthly checklist,
automated.

ERPNext for Dutch businesses, the way Dutch businesses actually run. BTW return, XAF audit file, SEPA payments, RGS chart of accounts — standard, not an integration.
Book a free consultation
BTW return
Q2 2026 · OB-2026-Q2
1a Leveringen 21% € 24.500,00
1a BTW 21% € 5.145,00
5a Verschuldigde BTW € 5.145,00
5b Voorbelasting € 1.823,00
Ready to file
Out of the box

Everything a Dutch business actually files.

BTW return (OB Aangifte)

Quarterly Dutch VAT return generated directly from your invoices. Box mappings configurable per tax account.

XAF audit file

Belastingdienst-ready XAF 3.2 export of your ledger, in the schema the tax authority asks for during audits.

RGS chart of accounts

Reference (Referentie GrootboekSchema) account mapping, so your books speak the language Dutch accountants and banks expect.

SEPA payment files

Generate pain.001 SEPA Credit Transfer XML directly from Payment Orders. Upload to your bank, done.

ICP & Intrastat (via erpnext_europe)

Intra-EU reporting (ICP) and statistical declarations live in the sibling erpnext_europe app — same patterns, EU-wide.

Lifecycle validations

Sales/purchase invoices, orders, and quotations get Dutch-specific validation hooks at submit time. Catch issues before they hit the books.
ERPNext is global. Dutch tax law is not.
Out of the box, ERPNext doesn’t know about BTW boxes, RGS, or the schema the Belastingdienst wants for audits. Without localization, your accountant exports CSVs and rebuilds the picture every quarter. With this app, the right format comes straight out of ERPNext.
What you get

Dutch compliance, baked in.

BTW return (OB Aangifte)

Generate the quarterly VAT return directly from your invoices. Tax accounts map to BTW boxes via NL Tax Account Settings.

XAF audit file

Export your general ledger as a Belastingdienst-compliant XAF 3.2 file. Validated against the official XSD before download.

RGS chart of accounts

Map every account to the Dutch reference scheme. Optional, but most accountants will thank you and banks understand the codes.

SEPA payment files

Generate pain.001 SEPA XML straight from Payment Orders. One click, valid XML, upload to your bank.

Invoice-level validation

Sales and purchase invoice validate hooks check Dutch requirements before the document submits. Errors block submission with a clear message.

Plays well with Dutch banks

ING, Rabobank, ABN AMRO, bunq — SEPA XML is standardised so every Dutch bank accepts the same file.
How a Dutch quarter closes

Invoices in, BTW return out. Nothing in between.

01
Invoices logged
Your Sales Invoices and Purchase Invoices accumulate as usual. Tax codes already point at the right BTW boxes.
02
Quarter ends
Open a new NL VAT Return document. Period and company auto-populate.
03
BTW return computed
Boxes 1, 2, 3, 4, 5 fill in from your tax accounts. Submit when reviewed.
04
Files & pays
XAF available for the Belastingdienst if asked. Payment Order → SEPA XML → uploaded to your bank.
Built for

Who actually needs this.

Dutch SMEs running ERPNext
You file BTW quarterly, you talk to an accountant who expects RGS, your bank wants SEPA. This is the integration that ends the CSV exports.
Accountants and bookkeepers
If your client is on ERPNext, this app means the closing process is the same as any other Dutch system: BTW report out, audit file out, done.
EU subsidiaries with NL entity
A Dutch BV inside a multi-entity ERPNext rollout. Localization stays at the NL company level — no impact on the other companies.
Under the hood

Just custom fields and validators on standard ERPNext.

No parallel data model. Localization is custom fields on standard ERPNext doctypes plus validate hooks on Sales/Purchase Invoices, Orders, and Quotations. XAF generation uses xsdata against the official Belastingdienst schema; SEPA uses the SEPA pain.001 standard. The code is open source — auditable end-to-end.

Ready to fix your systems?

30-minute call. No pitch deck. Just an honest conversation about what you need.
Book a CallFree consultation. No strings.