E-invoicing in Sweden: A Developer Guide
Overview
Sweden is a mature Peppol market. The country has operated a Peppol-based e-invoicing infrastructure for public procurement since the early rollout of the network, and structured invoicing is now deeply embedded in Swedish B2G workflows. The Swedish Tax Agency (Skatteverket) oversees tax compliance, while the legal framework for public sector e-invoicing stems from the EU Directive 2014/55/EU transposed via the Swedish Act on Electronic Invoicing in Public Procurement (2019:1028).
For B2B, there is no statutory mandate — but Sweden's high Peppol adoption rate among enterprises means many buyers expect or require structured delivery. The national Svefaktura format (a CIUS of Peppol BIS Billing 3.0) remains in use in some legacy integrations, but Peppol BIS Billing 3.0 is the current standard for new implementations.
Mandate and Timeline
| Segment | Status |
|---|---|
| B2G — central government suppliers | Mandatory via Peppol since April 2019 |
| B2G — regional and municipal suppliers | Mandatory (phased, most by 2020) |
| B2B invoicing | Voluntary — high voluntary adoption |
| SMEs | No B2B mandate; Peppol widely used |
Key dates:
- April 2019: Act on Electronic Invoicing in Public Procurement enters force; B2G e-invoicing mandatory for suppliers to contracting authorities
- 2020: Regional and municipal procurement covered
- Ongoing: No confirmed B2B mandate date; monitor EU ViDA developments for future obligations
Format and Network
Sweden uses Peppol BIS Billing 3.0 as the primary standard for public procurement. The legacy Svefaktura 1.0 format (UBL-based, managed by GS1 Sweden) is still encountered in older integrations but is not accepted on the Peppol network directly.
- Standard: Peppol BIS Billing 3.0 (EN 16931 CIUS)
- Syntax: UBL 2.1
- Network: OpenPeppol — AS4 transport, SMP/SML routing
- Participant identifier scheme:
0007(Swedish organisation number — organisationsnummer, 10 digits, formatXXXXXX-XXXX) - Endpoint ID format:
0007:{organisationsnummer}with hyphens stripped, e.g.0007:5566779988 - Authority: Swedish Tax Agency (Skatteverket) — tax compliance; DIGG (Myndigheten för digital förvaltning) — digital infrastructure
- Currency: SEK (Swedish Krona)
- Standard VAT rate: 25%; reduced rates 12% (food, hotels) and 6% (books, public transport)
Required Fields
For a compliant Peppol BIS 3.0 invoice to a Swedish buyer, the following fields are mandatory beyond the EN 16931 baseline:
supplier.endpointId— scheme0007, value is the supplier's organisationsnummer (no hyphen)buyer.endpointId— scheme0007, value is the buyer's organisationsnummer (no hyphen)buyerReference— purchase order number or internal reference; required by most Swedish public buyers (BT-10)currency— must beSEKfor domestic Swedish transactionslines[].taxCode— EN 16931 VAT category code (Sfor standard,Efor exempt,AEfor reverse charge)lines[].vatRate—25,12, or6for Swedish VAT rates
Swedish organisationsnummer is a 10-digit number issued by Bolagsverket. Strip the hyphen when constructing the Peppol endpoint ID: 556677-9988 becomes 0007:5566779988.
Integration Example
Send a Peppol invoice to a Swedish buyer via the Clearvo API:
curl -X POST https://api.clearvo.io/v1/invoices \
-H "Authorization: Bearer $CLEARVO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"country": "SE",
"documentType": "invoice",
"invoiceNumber": "SE-INV-2026-001",
"issueDate": "2026-06-16",
"dueDate": "2026-07-16",
"currency": "SEK",
"buyerReference": "PO-2026-001",
"supplier": {
"name": "Clearvo Technologies Ltd",
"taxId": "5566779988",
"taxIdCountry": "SE",
"endpointId": "0007:5566779988",
"endpointSchemeId": "0007"
},
"buyer": {
"name": "Sweden Buyer AS",
"taxId": "BUYERSE001",
"taxIdCountry": "SE",
"endpointId": "0007:BUYERSE001",
"endpointSchemeId": "0007"
},
"lines": [
{
"description": "Software consulting services",
"quantity": 5,
"unitPrice": 1000,
"taxCode": "S",
"vatRate": 25
}
]
}'
Clearvo performs a live SMP lookup on the buyer's endpointId before transmission. If the buyer is not registered on Peppol, the API returns a 422 with BUYER_NOT_REGISTERED before any invoice is generated.
The response includes the AS4 message ID, delivery timestamp, and the generated UBL 2.1 XML.
Key Rules
- Scheme 0007 is mandatory — Swedish Peppol routing always uses organisationsnummer under scheme
0007. Do not use9955(Swedish VAT number scheme) for Peppol endpoint routing; it is not registered in the SML for Sweden. - Strip hyphens — organisationsnummer is written
556677-9988in official documents but must appear as5566779988in the Peppol endpoint ID. - SEK, not EUR — Swedish public buyers expect invoices in SEK. EUR is not prohibited but will likely be rejected by contracting authority systems that validate currency.
- buyerReference is effectively mandatory for B2G — Swedish public procurement systems route invoices internally using the purchase order or contract reference in
BT-10. Omitting it causes processing failure at the buyer's ERP even if the Peppol delivery succeeds. - No central clearance — invoices are not submitted to Skatteverket. Peppol delivery receipt is the proof of transmission; tax reporting is handled separately via VAT returns.
- Svefaktura legacy — if a buyer specifically requests Svefaktura 1.0, this is a bilateral agreement outside Peppol. Clearvo does not generate Svefaktura 1.0; recommend buyers migrate to BIS 3.0.
Related country guides
- Norway — Peppol BIS 3.0, EHF B2G mandatory
- Denmark — Peppol BIS 3.0, OIOUBL B2G mandatory
- Finland — Peppol BIS 3.0, Finvoice B2G mandatory
Ready to handle e-invoicing in Sweden?
One API, all 31 countries. Sign up and get your API key within 24 hours.
Get started free →