DK-R-004:When specifying non-VAT Taxes for Danish customers, Danish suppliers MUST...
Fix: This requires user input to resolve. Review the relevant cbc: and cac: elements in your Invoice XML and provide the correct value. (DK-R-004). Provide the required value in the free validator.
Your Danish invoice includes non-VAT taxes (such as environmental levies or municipal charges) but is missing the reason code. Danish regulations require a reason code that explains the type of non-VAT tax.
Engine Classification
Business data required · Explicit input workflow · No assumptions made
Required input: Non-VAT Tax Reason Code
What is DK-R-004?
DK-R-004 is a fatal validation rule defined in the OIOUBL (Denmark) specification (DNK national rules). It validates the AllowanceCharge element in the UBL invoice XML.
When this rule fires, the invoice is rejected by Peppol access points and never reaches the buyer.
Target path: //cac:AllowanceCharge
Why This Error Matters
Invoice will be rejected by Danish validation. Non-VAT taxes must follow specific Danish formatting rules.
DK-R-004 is a hard failure — the invoice must be corrected and re-sent before it can reach the recipient.
Danish Peppol access points reject invoices with non-VAT taxes that lack a reason code. The buyer's system cannot categorize the tax correctly, which may cause accounting issues.
Validator Behavior
- ·Causes invoice rejection
- ·Fails UBL schema validation
- ·Error returned: DK-R-004
- ·Specification: OIOUBL (Denmark)
How to Fix It
Before / After
<Invoice> <!-- Issue: When specifying non-VAT Taxes for Danish customers, Danish s --> </Invoice>
<Invoice> <!-- Issue resolved per OIOUBL (Denmark) --> </Invoice>
Technical Reference
//cac:AllowanceChargeCommon Causes
- ·Wrong reason code for Danish non-VAT tax
- ·Tax category format does not meet Danish requirements
- ·Hash symbol in wrong position
- ·Standard reason code used instead of ZZZ
- ·Tax description format incorrect
Seeing this in production? The API handles DK-R-004 automatically. See the fix response →
Frequently Asked Questions
Your Danish invoice includes non-VAT taxes (such as environmental levies or municipal charges) but is missing the reason code. Danish regulations require a reason code that explains the type of non-VAT tax.
This requires user input to resolve. Review the relevant cbc: and cac: elements in your Invoice XML and provide the correct value. (DK-R-004). You can also use Invoice Navigator's compliance engine to correct this automatically in your pipeline.
Yes, DK-R-004 is a critical error that will cause invoice rejection. It must be fixed before submission.
Many instances of DK-R-004 can be automatically corrected using Invoice Navigator's compliance engine. The fix is applied in your pipeline with full audit evidence.
Related Errors
Related Content
Last updated: 3 March 2026
Validate your invoice
Drop your XML here to check for DK-R-004
Fix DK-R-004 with guided input
Upload your invoice and we'll ask for the missing data, then apply a safe, auditable fix.