Factuur versturen
Dagelijkse flow voor het genereren van een PEPPOL-e-document uit een Verkoopfactuur. De koppeling met het PEPPOL-netwerk gaat via een serviceprovider; deze pagina dekt de EDocument-kant.
Vereisten
- Codelijsten geïmporteerd (zie Aan de slag)
- Bedrijf heeft Electronic Address Scheme + Electronic Address
- Klant heeft Electronic Address Scheme + Electronic Address (of een fallback-mail)
- Per regel: een UOM gekoppeld aan UN/ECE Rec 20, een belastinginstelling die naar een UNCL 5305-code resolvt
Stap 1 — Maak de Verkoopfactuur
Maak uw Verkoopfactuur zoals u gewend bent. EDocument Profile krijgt zijn default uit de Klant, of u kiest het handmatig. Het veld Customer Purchase Order wordt gemapt op BuyerReference in de PEPPOL-XML — vaak vereist door inkoopsystemen van klanten.
Stap 2 — EDocument-aanmaak
Afhankelijk van Sales Invoice Settings op het profiel:
- On Save: bij draft-opslag — handig voor previewen
- On Submit (productie): automatisch bij indienen; faalt de validatie, dan blokkeert het indienen
Handmatig aanmaken kan ook:
- EDocument → New
- Source Type: "Sales Invoice"
- Source Document: de naam van de Verkoopfactuur
- EDocument Profile: "PEPPOL"
Stap 3 — XML genereren
Klik op het EDocument-record Generate XML. De app:
- Bouwt UBL 2.1-XML uit de factuur
- Valideert tegen het XSD-schema
- Valideert businessregels via PEPPOL Schematron
- Hangt het XML-bestand aan het EDocument
Faalt de validatie? Status wordt "Validation Failed" en de foutmelding verschijnt. Veelvoorkomende oorzaken:
- XSD-overtredingen — verkeerde volgorde, ontbrekende verplichte velden
- Schematron-overtredingen (BR-CO-15, BR-CO-17, …)
- Ontbrekende codes (geen UNCL 5305 gemapt) of ongeldige waarden
Stap 4 — Preview
Klik Preview EDocument voor de gerenderde HTML. De preview gebruikt XSLT om UBL-XML naar leesbare factuur om te zetten — handig voor controle voor verzending.
Stap 5 — Verzenden
Met een serviceprovider ingesteld: klik Transmit via API. De integratie-app handelt het verzenden af en update het EDocument met een transmission-ID en tracking-referentie.
Velden die in de XML komen
| Categorie | Velden |
|---|---|
| Header | Factuurtype, -nummer, -datum, vervaldatum (alleen factuur), valuta, BuyerReference |
| Partijen | Bedrijf / Klant: naam, adres, BTW-ID, elektronisch adres |
| Regels | Artikelnaam, omschrijving, aantal, tarief, netto-bedrag, BTW per regel |
| BTW | Tarief, bedrag, belastbaar bedrag, vrijstellingscodes |
| Betaling | Bankrekening (IBAN + BIC), betalingstermijnen |
| Totalen | Lijntotaal, exclusief, inclusief, te betalen |
| Kortingen | Korting/toeslagen op document-niveau |
Creditnota's
Zet is_return = 1 op de Verkoopfactuur. De app:
- Gebruikt
CreditNoteals root in plaats vanInvoice CreditNoteTypeCodein plaats vanInvoiceTypeCodeCreditNoteLinein plaats vanInvoiceLine- Geen
DueDate(creditnota's hebben er geen) - Voegt
BillingReferencetoe naar de oorspronkelijke factuur - Valideert tegen het CreditNote-XSD
Externe validatie
Voor extra zekerheid: de PEPPOL Validation Service accepteert elk UBL 2.1-bestand en draait de officiële regels. Het dashboard van uw serviceprovider doet dit meestal ook.