E-invoicing in Denmark: A Complete Guide for Businesses
Overview
Denmark is one of the earliest adopters of structured e-invoicing in Europe. The country built its national e-invoicing infrastructure around NemHandel — a Danish public e-document exchange network that predates the EU-wide Peppol rollout. Today, Denmark operates as a full Peppol participant and routes B2G and B2B e-invoices through the Peppol network using the EAS (Electronic Address Scheme) identifier 0096.
The competent authority for Danish e-invoicing policy is Erhvervsstyrelsen (ERST) — the Danish Business Authority — operating under the Ministry of Industry, Business and Financial Affairs. ERST maintains the NemHandel infrastructure and the Danish Peppol access point registry.
Denmark uses the Danish krone (DKK) as its currency. The standard VAT rate is 25%, one of the highest in the EU, with limited reduced rates. All amounts in Danish invoices are denominated in DKK unless the trading relationship is explicitly cross-border in another agreed currency.
Mandate and Timeline
Denmark has operated a B2G e-invoicing mandate since 2005, making it one of the first countries in the world to require structured electronic invoices for public sector transactions. The mandate covers all suppliers to Danish central government, regional authorities, and municipalities.
Key dates:
- 2005: B2G e-invoicing mandate enacted. All suppliers to the public sector required to issue structured e-invoices — Denmark was the first EU country to introduce such a requirement.
- 2012: Peppol adopted as the interoperability layer alongside NemHandel.
- 2019: Peppol BIS Billing 3.0 (EN 16931 CIUS) becomes the preferred standard for cross-border interoperability.
- 2026 and beyond: No confirmed B2B mandate, but market-driven adoption is widespread via NemHandel-compatible software ecosystems.
B2B e-invoicing is voluntary but commercially prevalent. Danish enterprises and accounting platforms (e.g., Dinero, e-conomic, Billy) support NemHandel/Peppol natively, so suppliers to Danish businesses are increasingly expected to send via Peppol even without a legal obligation.
Format and Network
Denmark uses Peppol BIS Billing 3.0 as the standard invoice format for cross-border and domestic structured e-invoicing. NemHandel serves as the national exchange layer, and Danish participants are registered in the Peppol SML/SMP infrastructure.
Technical specifics:
- Standard: Peppol BIS Billing 3.0 (EN 16931 CIUS of OpenPeppol)
- Syntax: UBL 2.1
- Network: Peppol AS4 transport via NemHandel-compatible access points
- Participant identifier scheme:
0096(EAS — Electronic Address Scheme; CVR number, 8 digits) - Endpoint format:
0096:{CVR}— e.g.0096:12345678 - Authority: Erhvervsstyrelsen (ERST)
- Currency: DKK
- Standard VAT rate: 25%
- No central clearance: invoices route peer-to-peer via Peppol; ERST does not act as a real-time clearance hub
Required Fields
For Danish Peppol invoices the following fields are mandatory beyond the EN 16931 baseline:
invoiceNumber— unique per supplierissueDateanddueDate— ISO 8601 formatcurrency—DKKfor domestic transactionsbuyerReference— purchase order or internal reference; mandatory for Danish public sector buyerssupplier.endpointId—0096:{CVR}format; CVR is the 8-digit Danish company registration numberbuyer.endpointId— same scheme; required for Peppol routingsupplier.taxIdandbuyer.taxId— CVR numbers, 8 digitslines[].taxCode— EN 16931 tax category;Sfor standard-rated (25%),Efor exemptlines[].vatRate—25for standard rate;0for exempt
Integration Example
Send a Danish invoice via the Clearvo API. The endpointId uses scheme 0096 with the recipient's CVR number. No tax engine configuration is required — Clearvo maps taxCode and vatRate directly to the correct BIS 3.0 tax elements.
curl -X POST https://api.clearvo.io/v1/invoices \
-H "Authorization: Bearer $CLEARVO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"country": "DK",
"documentType": "invoice",
"invoiceNumber": "DK-INV-2026-001",
"issueDate": "2026-06-16",
"dueDate": "2026-07-16",
"currency": "DKK",
"buyerReference": "PO-2026-001",
"supplier": {
"name": "Clearvo Technologies Ltd",
"taxId": "12345678",
"taxIdCountry": "DK",
"address": { "street": "Vesterbrogade 1", "city": "Copenhagen", "postalCode": "1620", "country": "DK" },
"endpointId": "0096:12345678",
"endpointSchemeId": "0096"
},
"buyer": {
"name": "Denmark Buyer AS",
"taxId": "BUYERDK001",
"taxIdCountry": "DK",
"address": { "street": "Buyer Street 1", "city": "Copenhagen", "postalCode": "1620", "country": "DK" },
"endpointId": "0096:BUYERDK001",
"endpointSchemeId": "0096"
},
"lines": [
{ "description": "Software consulting services", "quantity": 5, "unitPrice": 1000, "taxCode": "S", "vatRate": 25 },
{ "description": "Platform subscription annual", "quantity": 1, "unitPrice": 3600, "taxCode": "S", "vatRate": 25 }
]
}'
Clearvo performs a live SMP lookup against the Peppol network to verify the buyer's 0096 endpoint registration before dispatch. The response includes the Peppol message ID, AS4 delivery receipt, and the generated UBL 2.1 XML payload.
Key Rules
- CVR as the routing key: the 8-digit CVR number is the canonical Danish company identifier and the basis for the
0096Peppol endpoint. Validate CVR format (exactly 8 numeric digits) before submitting. - DKK denomination: domestic Danish invoices must be in DKK. Cross-border invoices in other currencies are technically permitted under EN 16931 but uncommon in NemHandel contexts.
- 25% is the only standard VAT rate: Denmark has no general reduced VAT rate. The full 25% applies to the vast majority of B2B transactions. Zero-rated and exempt categories (e.g., financial services, certain health services) exist but are narrow.
- buyerReference is mandatory for B2G: Danish public sector buyers require a purchase order reference or EAN location number on every invoice. Omitting this field causes systematic rejection at the buyer's ERP.
- No B2B mandate yet, but treat Peppol as de facto required: the Danish commercial ecosystem expects NemHandel/Peppol delivery from all suppliers to enterprise buyers. Clearvo handles registration and routing transparently.
- NemHandel and Peppol share participant registrations: a company registered on NemHandel is reachable via Peppol scheme
0096and vice versa. There is no separate registration step for cross-border Peppol delivery.
Clearvo is a developer-first Peppol access point. You provide structured invoice data via a single REST API; Clearvo handles participant lookup, UBL 2.1 generation, AS4 packaging, and delivery receipts. No Danish-specific tax engine or ERP integration is required on your side.
Related country guides
- Norway — Peppol BIS 3.0, EHF B2G mandatory
- Sweden — Peppol BIS 3.0, Svefaktura B2G mandatory
- Finland — Peppol BIS 3.0, Finvoice B2G mandatory
Ready to handle e-invoicing in Denmark?
One API, all 31 countries. Sign up and get your API key within 24 hours.
Get started free →