ERP koppelen aan Peppol: complete gids voor Nederlandse en Belgische bedrijven (2026)
Vanaf 2026 is e-facturatie via Peppol verplicht in België. Bovendien merken Nederlandse bedrijven dit nu al: klanten vragen om Peppol-compatibele facturen.
In deze gids leggen we exact uit hoe je jouw ERP koppelt aan Peppol — van de technische architectuur tot concrete implementatiestappen — zodat jij of jouw ontwikkelaar meteen aan de slag kan.
Wat is Peppol en waarom is het relevant voor jouw ERP?
Peppol (Pan-European Public Procurement Online) is een gestandaardiseerd netwerk voor het uitwisselen van elektronische documenten zoals facturen, bestelbonnen en creditnota’s. Het netwerk werkt via een decentraal model van gecertificeerde access points: jouw factuur gaat via jouw access point naar dat van de ontvanger, zonder centrale tussenpersoon.
Voor ERP-systemen betekent dit concreet: facturen worden niet langer als PDF per e-mail verstuurd, maar als gestructureerd UBL-bestand (Universal Business Language) via het Peppol-netwerk. De ontvanger verwerkt dit bestand automatisch in zijn eigen systeem.
Ondersteunt jouw ERP dit nog niet natively, dan heb je een integratie nodig.
De technische architectuur: hoe werkt een Peppol ERP-koppeling?
Een typische koppeling ziet er als volgt uit:

Er zijn drie gangbare integratiemethoden:
1. Native connector (ingebouwd in ERP) Sommige ERP-systemen zoals SAP S/4HANA of Microsoft Dynamics 365 Business Central bieden een ingebouwde Peppol-connector. Voordeel: weinig configuratie. Nadeel: beperkte flexibiliteit en vaak duur in licenties.
2. Middleware-integratie via API Je koppelt je ERP via een REST API aan een Peppol access point zoals Billit, Storecove of Pagero. Dit is de meest flexibele aanpak en geschikt voor maatwerk ERP-systemen.
3. SFTP/bestandsuitwisseling Oudere ERP-systemen exporteren facturen als XML-bestanden naar een gedeelde map, die automatisch worden opgepikt en doorgestuurd. Minder elegant, maar soms de enige optie.
Stap-voor-stap: ERP koppelen aan Peppol via API
Stap 1: Controleer of je ERP UBL kan exporteren
De meeste moderne ERP-systemen (Exact, Odoo, AFAS, SAP) ondersteunen UBL-export. Controleer dit in de instellingen onder “elektronisch factureren” of “e-invoicing”. Exporteer een testfactuur als UBL-bestand en valideer dit via de Peppol Validator van OpenPeppol.
Kan je ERP geen UBL exporteren? Dan heb je een conversielaag nodig die je factuurdata (CSV, JSON, XML) omzet naar geldige UBL BIS Billing 3.0.
Stap 2: Kies een Peppol Access Point
Een access point is je gecertificeerde ingang tot het Peppol-netwerk. Kies op basis van:
- API-kwaliteit — heeft het access point een goed gedocumenteerde REST API?
- Benelux-ervaring — begrijpen ze de Belgische en Nederlandse compliance-eisen?
- Prijsstructuur — per factuur of maandelijks abonnement?
- Support — kunnen ze je helpen bij integratieproblemen?
Bekende access points voor de Benelux-markt zijn Billit, Storecove, Mercurius en Pagero.
Stap 3: Registreer je bedrijf op het Peppol-netwerk
Je bedrijf wordt geïdentificeerd via een Peppol Participant ID. In België is dit je KBO-nummer (0002:BTWnummer), in Nederland je KVK-nummer (0106:KVKnummer) of btw-nummer (0190:BTWnummer).
Je access point regelt deze registratie doorgaans voor je. Controleer achteraf je aanmelding via de Peppol Directory.
Stap 4: Integreer via de API van je access point
Een typische API-aanroep om een factuur te versturen via een access point ziet er zo uit (voorbeeld in Python):
python
import requests
import json
def send_peppol_invoice(ubl_content: str, recipient_id: str, api_key: str):
url = "https://api.access-point.com/v1/invoices"
payload = {
"receiver": {
"peppol_id": recipient_id # bijv. "0106:12345678"
},
"document": {
"type": "invoice",
"format": "ubl_bis3",
"content": ubl_content # base64-encoded UBL XML
}
}
headers = {
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json"
}
response = requests.post(url, headers=headers, json=payload)
response.raise_for_status()
return response.json()
Vervang de URL en veldnamen door die van jouw access point. De meeste access points hanteren een vergelijkbare structuur.
Stap 5: Verwerk IMR-berichten (Invoice Message Responses)
Peppol voorziet statusberichten (IMR’s) die bevestigen of je factuur correct is ontvangen en verwerkt. Stel een webhook of polling-mechanisme in om deze berichten automatisch te verwerken in je ERP. Negeer je IMR’s, dan weet je niet of facturen daadwerkelijk zijn aangekomen.
Stap 6: Test in een sandbox-omgeving
Test altijd eerst met een sandbox voordat je live gaat. Stuur minimaal:
- Een correcte factuur
- Een factuur met ontbrekende verplichte velden (om te testen of validatie werkt)
- Een creditnota
- Een factuur naar een ontvanger die niet op het Peppol-netwerk staat
Stap 7: Monitoring en onderhoud
Peppol-standaarden evolueren. BIS Billing 4.0 staat in de planning. Zorg voor een updateproces: wie volgt wijzigingen op, en hoe worden die doorgevoerd in je integratie?
Veelgemaakte fouten bij ERP-Peppol integraties
❌ UBL-validatie overslaan Een UBL-bestand dat er geldig uitziet maar niet voldoet aan de BIS Billing 3.0 specificaties wordt door de ontvanger geweigerd. Valideer altijd voor verzending.
❌ Peppol ID van de ontvanger niet controleren Niet elk bedrijf is geregistreerd op Peppol. Stuur je toch een factuur, dan wordt deze niet afgeleverd. Controleer via de Peppol Directory of zoek naar alternatieven (e-mail, portaal).
❌ IMR-berichten negeren Een factuur verzonden betekent niet automatisch een factuur ontvangen. Verwerk statusberichten actief.
❌ Hardcoded BTW-logica BTW-regels verschillen per land en transactietype. Gebruik de BTW-categorieën in de UBL-spec correct, zeker bij grensoverschrijdende transacties.
❌ Geen fallback voor niet-Peppol ontvangers Niet elk bedrijf gebruikt Peppol. Zorg dat je workflow ook e-mailbijlagen of portaaluploads aankan als fallback.
ERP koppelen aan Peppol: Nederland en België vergeleken
| Nederland | België | |
|---|---|---|
| Verplichting B2B | Nog niet verplicht | Verplicht vanaf 2026 |
| Peppol ID formaat | 0106:KVKnummer of 0190:BTWnummer | 0002:BTWnummer |
| Overheidsinkopen | Peppol verplicht voor overheid | Peppol verplicht voor overheid |
| Aanbevolen formaat | BIS Billing 3.0 | BIS Billing 3.0 |
Nederlandse bedrijven hoeven nog niet verplicht via Peppol te factureren, maar Belgische klanten vragen dit steeds vaker. Door nu te integreren vermijd je later een dure inhaaloperatie.
Heeft jouw ERP een maatwerk Peppol-integratie nodig?
Niet elk ERP-systeem heeft een kant-en-klare Peppol-connector. Maatwerk ERP-systemen, legacy software of branchespecifieke pakketten vereisen een op maat gebouwde integratie.
Kleinkode bouwt API-koppelingen tussen ERP-systemen en het Peppol-netwerk voor Nederlandse en Belgische bedrijven. We werken rechtstreeks op het Billit-platform en leveren integraties die draaien zonder manuele tussenkomst.
Referenties: Extremis en NG Cleaning gebruiken een Kleinkode Peppol-ERP integratie voor automatische verwerking van inkomende Peppol-facturen.
Interesse? [Neem contact op] of bekijk onze werkwijze.
Veelgestelde vragen over ERP koppelen aan Peppol
Welke ERP-systemen ondersteunen Peppol natively? SAP S/4HANA, Microsoft Dynamics 365 Business Central, Exact Online en Odoo bieden ingebouwde Peppol-ondersteuning of plugins. Voor andere systemen is een externe integratie nodig.
Wat kost een Peppol ERP-koppeling? Een standaard koppeling via een access point kost doorgaans €50–€200/maand afhankelijk van volume. Maatwerk integraties lopen uiteen van €1.500 tot €10.000+ afhankelijk van complexiteit.
Is Peppol verplicht in Nederland? Momenteel niet voor B2B, wel voor leveringen aan de overheid. De Europese richtlijn EN 16931 maakt e-facturatie op termijn breder verplicht.
Wat is het verschil tussen Peppol en UBL? UBL is het bestandsformaat (XML-gebaseerd). Peppol is het netwerk waarover UBL-bestanden worden uitgewisseld. Je hebt beide nodig: het juiste formaat én het juiste netwerk.
Hoe lang duurt een ERP Peppol-integratie? Een standaard koppeling via een access point API duurt 1–3 weken. Maatwerk integraties met legacy ERP-systemen kunnen 4–8 weken in beslag nemen.
