errorDNKOIOUBL (Denmark)

DK-R-004:When specifying non-VAT Taxes for Danish customers, Danish suppliers MUST...

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.

Severity
Fatal
Rule set
OIOUBL (Denmark)
Country
DNK
Fix type
INPUT REQUIRED
Confidence
75%

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 non-compliant and will be rejected by Peppol access points and national validation services. The sending system receives a rejection response and the invoice does not reach 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. Invoices that trigger this rule are rejected at the access point and never reach the recipient. In Peppol networks, this means your sending system receives an MLR (Message Level Response) with a rejection status. The invoice must be corrected and re-sent, adding delay to your payment cycle.

Validator Behavior

  • ·Causes invoice rejection
  • ·Fails UBL schema validation
  • ·Error returned: DK-R-004
  • ·Specification: OIOUBL (Denmark)

How to Fix It

.

.

.

.

Before / After

Failing XML
<Invoice>
  <!-- Issue: When specifying non-VAT Taxes for Danish customers, Danish s -->
</Invoice>
Corrected XML
<Invoice>
  <!-- Issue resolved per OIOUBL (Denmark) -->
</Invoice>

Technical Reference

XPath//cac:AllowanceCharge
SpecOIOUBL (Denmark)
Operationadd_element
StrategyPrompt user for the non-VAT tax reason code to add as AllowanceChargeReasonCode

Common 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 →

Related Errors

Last updated: 27 February 2026

Share this guide:

Handle DK-R-004 Automatically in Your Pipeline

The compliance engine auto-remediates this error with controlled safety policies and evidence pack generation.