Ga naar de hoofdinhoud
Invoice-Converter.comInvoice-Converter
Prijzen
Factuur converterenConverteren
Converteren
⌘K
Documentatieoverzicht
Formaten en standaarden begrijpen
Compliancegidsen
XRechnung-standaard
ZUGFeRD-formaat
PDF/A-3 voor ZUGFeRD
CII Cross Industry Invoice
UBL Universal Business Language
DIN EN 16931-1 standaard
PEPPOL-netwerk
Land- en regelgevingsregels
EU e-facturatieverplichting
EU e-facturatie
E‑facturatie in de EU in 2026: wat je moet implementeren (en waarom)
Playbook voor EU-topmarkten (DE, FR, IT, ES, PL, NL)
PEPPOL in de EU: hoe uitwisseling echt werkt
CTC/clearance en portals in de EU: betrouwbare integraties bouwen
Landgidsen
Duitsland
Frankrijk
Italië
Spanje
Polen
Nederland
België
Oostenrijk
Denemarken
Zweden
Finland
Validatie- en indieningsproblemen oplossen
Leitweg-ID validatie
Supporthandleidingen
Support
Waarom facturen review nodig hebben
PDF-voorbereiding
Brondata voorbereiden
Bijlagen en serviceomschrijvingen
API-fouten
API-automatisering
Schemafouten afhandelen
Hulp bij reviewvalidatie
Support
Ontbrekende informatie
Kopersreferentie
Betaling en IBAN
Btw en verleggingsregeling
Totalen en afronding
Vooruitbetalingen
Factuurregels
ZUGFeRD-PDF-waarschuwingen
Validatiehandleidingen
Waargenomen validatieoplossingen
Vervaldatum of voorwaarden
IBAN bij overschrijving
PDF/A-3-geschiktheid
VATEX-vrijstellingsreden
Review en download
Publieke bibliotheek met testfacturen
Geldige basisfactuur XRechnung UBL
Ongeldige XRechnung zonder betalingsvoorwaarden
Factur-X/ZUGFeRD EN 16931 CII XML
XRechnung-randgeval voor afronding en IBAN
KOSIT-validatorfouten
FOUT
BR-DE-1
BR-DE-2
BR-DE-3
BR-DE-4
BR-DE-5
BR-DE-6
BR-DE-7
BR-DE-8
BR-DE-9
BR-DE-10
BR-DE-11
BR-DE-14
BR-DE-15
BR-DE-16
BR-DEX-01
BR-DEX-03
BR-DEX-04
BR-DEX-05
BR-DEX-06
BR-DEX-07
BR-DEX-08
BR-DEX-09
BR-DEX-10
BR-DEX-11
BR-DEX-12
BR-DEX-13
BR-DEX-14
BR-CO-3
BR-CO-4
BR-CO-9
BR-CO-10
BR-CO-11
BR-CO-13
BR-CO-14
BR-CO-15
BR-CO-16
BR-CO-17
BR-CO-25
BR-CO-26
BR-S-1
BR-S-5
BR-S-8
BR-CO-05
BR-CO-06
BR-CO-07
BR-CO-08
BR-CO-12
BR-CO-18
BR-CO-19
BR-CO-20
BR-CO-21
BR-CO-22
BR-CO-23
BR-CO-24
BR-61
BR-AE-02
BR-AE-10
BR-E-01
BR-E-05
BR-DE-19
BR-05
BR-22
BR-23
BR-24
BR-25
BR-26
BR-47
BR-57
BR-DE-22
BR-DE-30
BR-DE-31
PEPPOL-EN16931-R001
PEPPOL-EN16931-R010
PEPPOL-EN16931-R020
PEPPOL-EN16931-R046
PEPPOL-EN16931-R120
PEPPOL-EN16931-R130
BR-01
BR-02
BR-03
BR-04
BR-06
BR-07
BR-08
BR-09
BR-10
BR-11
BR-12
BR-13
BR-14
BR-15
BR-16
BR-17
BR-18
BR-19
BR-20
BR-21
BR-27
BR-28
BR-29
BR-30
BR-31
BR-32
BR-33
BR-36
BR-37
BR-38
BR-41
BR-42
BR-43
BR-44
BR-45
BR-46
BR-48
BR-49
BR-50
BR-51
BR-52
BR-53
BR-54
BR-55
BR-56
BR-62
BR-63
BR-64
BR-65
BR-CL-01
BR-CL-03
BR-CL-04
BR-CL-05
BR-CL-06
BR-CL-07
BR-CL-08
BR-CL-10
BR-CL-11
BR-CL-13
BR-CL-14
BR-CL-15
BR-CL-16
BR-CL-17
BR-CL-18
BR-CL-19
BR-CL-20
BR-CL-21
BR-CL-22
BR-CL-23
BR-CL-24
BR-CL-25
BR-CL-26
BR-DEC-01
BR-DEC-02
BR-DEC-05
BR-DEC-06
BR-DEC-09
BR-DEC-10
BR-DEC-11
BR-DEC-12
BR-DEC-13
BR-DEC-14
BR-DEC-15
BR-DEC-16
BR-DEC-17
BR-DEC-18
BR-DEC-19
BR-DEC-20
BR-DEC-23
BR-DEC-24
BR-DEC-25
BR-DEC-27
BR-DEC-28
BR-S-02
BR-S-03
BR-S-04
BR-S-06
BR-S-07
BR-S-09
BR-S-10
BR-Z-01
BR-Z-02
BR-Z-03
BR-Z-04
BR-Z-05
BR-Z-06
BR-Z-07
BR-Z-08
BR-Z-09
BR-Z-10
BR-AE-01
BR-AE-03
BR-AE-04
BR-AE-05
BR-AE-06
BR-AE-07
BR-AE-08
BR-AE-09
BR-E-02
BR-E-03
BR-E-04
BR-E-06
BR-E-07
BR-E-08
BR-E-09
BR-E-10
BR-IC-01
BR-IC-02
BR-IC-03
BR-IC-04
BR-IC-05
BR-IC-06
BR-IC-07
BR-IC-08
BR-IC-09
BR-IC-10
BR-IC-11
BR-IC-12
BR-G-01
BR-G-02
BR-G-03
BR-G-04
BR-G-05
BR-G-06
BR-G-07
BR-G-08
BR-G-09
BR-G-10
BR-O-01
BR-O-02
BR-O-03
BR-O-04
BR-O-05
BR-O-06
BR-O-07
BR-O-08
BR-O-09
BR-O-10
BR-O-11
BR-O-12
BR-O-13
BR-O-14
BR-AF-01
BR-AF-02
BR-AF-03
BR-AF-04
BR-AF-05
BR-AF-06
BR-AF-07
BR-AF-08
BR-AF-09
BR-AF-10
BR-AG-01
BR-AG-02
BR-AG-03
BR-AG-04
BR-AG-05
BR-AG-06
BR-AG-07
BR-AG-08
BR-AG-09
BR-AG-10
BR-B-01
BR-B-02
WAARSCHUWING
BR-DE-17
BR-DE-18
BR-DE-20
BR-DE-21
BR-DEX-02
BR-DE-26
BR-DE-27
BR-DE-28
Referentiegegevens opzoeken
Glossarium
E
EN 16931
Eenheidscode
E-reporting
e-Factura RO
EAS (Electronic Address Scheme)
ebInterface
C
CIUS
CII
Codelijst
Creditnota
Contractreferentie
Chorus Pro
Codice Destinatario
X
XRechnung
XML-schema (XSD)
XML
Z
ZUGFeRD
F
Factur-X
Factuurtypecode
Factuurregel
Finvoice
U
UBL
P
PEPPOL
PEPPOL BIS
Participant-ID
PDF/A-3
PDP (Plateforme de Dématérialisation Partenaire)
A
Access Point
S
SMP
SML
Schematron
SDI (Sistema di Interscambio)
Svefaktura
L
Leitweg-ID
K
KoSIT
Korting / toeslag
KSeF
KvK-nummer
V
Validatie
Verleggingsregeling
ViDA
VeriFactu
ViDA Pijler 1: Digital Reporting Requirements
ViDA Pijler 2: enkele btw-registratie
ViDA Pijler 3: Platformeconomie
B
Business Term (BT)
Business Group (BG)
BTW-nummer
Belastingcategorie
Betaalmiddel
BIC
Betalen via QR-code
I
IBAN
Inkooporder (PO)
ISO 6523
D
Documentreferentie
D-U-N-S-nummer
Digipoort
R
Realtime rapportage
Realtime factuurrapportage (RTIR)
T
TicketBAI
G
GLN (Global Location Number)
O
OVT-tunnus
OIOUBL
N
NemHandel
Codelijsten
Valutacodes (veelgebruikte)
Landcodes (veelgebruikte)
BTW-categoriecodes
Betaalmiddelcodes
Eenheidscodes (veelgebruikte)
Factuurtypecodes (veel gebruikt in XRechnung)
XRechnung-velden
Factuurbasis
BT-1
BT-2
BT-3
BT-5
BT-6
BT-7
BT-8
BT-10
BT-11
BT-12
BT-14
BT-15
BT-16
BT-17
BT-18
BT-19
BT-21
BT-22
BT-23
BT-24
BT-25
BT-26
Levering en betaling
BT-9
BT-13
BT-20
BT-59
BT-60
BT-61
BT-70
BT-71
BT-72
BT-73
BT-74
BT-75
BT-76
BT-77
BT-78
BT-79
BT-80
BT-81
BT-82
BT-83
BT-84
BT-85
BT-86
BT-87
BT-88
BT-89
BT-90
BT-91
Verkopersgegevens
BT-27
BT-28
BT-29
BT-30
BT-31
BT-32
BT-33
BT-34
BT-35
BT-36
BT-37
BT-38
BT-39
BT-40
BT-41
BT-42
BT-43
BT-62
BT-63
BT-64
BT-65
BT-66
BT-67
BT-68
BT-69
Kopersgegevens
BT-44
BT-45
BT-46
BT-47
BT-48
BT-49
BT-50
BT-51
BT-52
BT-53
BT-54
BT-55
BT-56
BT-57
BT-58
Kortingen en toeslagen
BT-92
BT-93
BT-94
BT-95
BT-96
BT-97
BT-98
BT-99
BT-100
BT-101
BT-102
BT-103
BT-104
BT-105
Belastingen en totalen
BT-106
BT-107
BT-108
BT-109
BT-110
BT-111
BT-112
BT-113
BT-114
BT-115
BT-116
BT-117
BT-118
BT-119
BT-120
BT-121
BT-122
BT-123
BT-124
BT-125
Factuurregels
BT-126
BT-127
BT-128
BT-129
BT-130
BT-131
BT-132
BT-133
BT-134
BT-135
BT-136
BT-137
BT-138
BT-139
BT-140
BT-141
BT-142
BT-143
BT-144
BT-145
BT-146
BT-147
BT-148
BT-149
BT-150
BT-151
BT-152
BT-153
BT-154
BT-155
BT-156
BT-157
BT-158
BT-159
BT-160
BT-161
BT-162
BT-163
ZUGFeRD-profielen
MINIMUM
BASIC WL
BASIC
EN 16931
EXTENDED
Formaten en tools vergelijken
Vergelijkingen
XRechnung vs ZUGFeRD
PDF24 Tools
sevDesk
Integreren en implementeren
Hulp bij platformincidenten
Support
Tijdelijk niet beschikbaar
Ontbrekend resultaat
Validatie niet beschikbaar
Browserfouten
Account en rate limits
Credits en abonnementen
Gezaghebbende validatie
Validatiegidsen voor ERP-exports
DATEV
Lexware
SAP Business One
Odoo
Microsoft Dynamics
Vertrouwen en beveiliging
Developer API
Facturen via e-mail
  1. E-facturatiebronnen
  2. Developer API

Integratie

Markdown-export

Externe API V1-documentatie

Zet facturen vanuit je eigen systemen om naar gevalideerde e-facturen: upload een PDF-, DOCX- of TXT-document – of gestructureerde ERP-data – en download de XRechnung-, ZUGFeRD-, EN 16931-, UBL- of CII-output zodra de validatie is geslaagd. Deze pagina is het volledige integratiecontract: toegangsmodel, endpoints, foutcatalogus en limieten.

OverzichtBelangrijkste mogelijkhedenAPI-toegang krijgenToegang aanvragenSnelstartSnelstart met curlBase-URL en API-sleutelsEerste succesvolle requestVeelgebruikte payloadvoorbeeldenVereiste headersAuth-regelsIdempotency-contractEndpoint-referentieUitvoerformatenmatrixFoutcontractVeelvoorkomende fouten en wat te doenRate- en payloadlimietenRetry-richtlijnTaaklevenscyclus en bewaartermijnSupportmodelWijzigingslogboekLeveringsartefactenPostman en OpenAPI gebruikenStuur technische feedback

Vijf REST-endpoints zetten PDF-, DOCX- of TXT-facturen – of gestructureerde ERP-data – om naar gevalideerde XRechnung-, ZUGFeRD-, EN 16931-, UBL- en CII-e-facturen: uploaden, pollen, downloaden. Toegang is op basis van goedkeuring: vraag deze per e-mail aan, test met prepaid API-credits en gebruik een Enterprise-contract voor productievolume.

Overzicht#

De API accepteert multipart-uploads, geeft JSON-antwoorden terug en gebruikt standaard HTTP-statuscodes met Bearer-authenticatie. Elke conversie verloopt asynchroon: verstuur het document, poll de taak, download het resultaat. Een bestand wordt pas geleverd nadat de validatie is geslaagd – ongevalideerde output bestaat niet.

Stuur een PDF-, DOCX- of TXT-factuurdocument of gestructureerde factuurdata naar een conversie-endpoint. Invoice-Converter start daarmee een asynchrone task voor extractie, validatie en artefactgeneratie. Het resultaat-endpoint levert alleen een bestand wanneer het gevraagde artefact gevalideerd, gecontroleerd en klaar voor uitvoer is; tijdens verwerking retourneert het 202 TASK_NOT_READY, bij blokkerende validatiefouten 422 VALIDATION_FAILED.

Status: goedgekeurde toegang

Basispad: /api/v1. Laatst gesynchroniseerd 2026-07-26.

Belangrijkste mogelijkheden#

  • Upload-endpoints voor PDF-facturen en gestructureerde factuurdata
  • AI-ondersteunde extractie van factuurgegevens
  • Geautomatiseerde EN 16931- en KoSIT-validatie
  • Uitvoerformaten voor XRechnung, ZUGFeRD, EN16931, UBL en CII
  • Asynchrone verwerking met polling, kleine facturen rond 30 seconden en grotere facturen tot 1-2 minuten
  • Idempotente writes voor veilige retries

API-toegang krijgen#

API-toegang is op basis van goedkeuring, geen selfservice. Dit is de route van eerste contact naar productiesleutels.

  1. Maak een account aan en vraag API-toegang aan per e-mail via contact@invoice-converter.com, met bedrijfsnaam, account-e-mailadres en verwacht maandvolume.
  2. Gebruik prepaid API-credits voor goedgekeurde tests of Enterprise-facturering per order form voor productiegebruik.
  3. Maak na goedkeuring een live API-sleutel aan voor je tenant.
  4. Verstuur de eerste request met Bearer-token en een stabiele Idempotency-Key.

Toegang aanvragen#

API-toegang per e-mail aanvragen
Enterprise-abonnement en prijzen

Snelstart#

Drie API-aanroepen voltooien een conversie. Het convert-endpoint wordt aangeboden op /api/v1 en vereist authenticatie.

POST /api/v1/invoices:convert

Live

Factuurdocument converteren

POST /api/v1/invoices:convert-structured

Live

Gestructureerde data converteren

GET /api/v1/tasks/{task_id}

Live

Taskstatus pollen

Snelstart met curl#

Vervang $API_KEY door je live sleutel en $TASK_ID door de task_id uit het eerste antwoord. Dezelfde drie aanroepen werken voor elk uitvoerformaat.

1. Start de conversie
curl -X POST "https://www.invoice-converter.com/api/v1/invoices:convert" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Idempotency-Key: inv-2026-0001" \
  -F "file=@invoice.pdf" \
  -F "format=XRECHNUNG"
2. Poll de taak tot completed
curl "https://www.invoice-converter.com/api/v1/tasks/$TASK_ID" \
  -H "Authorization: Bearer $API_KEY"
3. Download het gevalideerde bestand
curl -o invoice.xml \
  "https://www.invoice-converter.com/api/v1/tasks/$TASK_ID/result?download=xml" \
  -H "Authorization: Bearer $API_KEY"

Base-URL en API-sleutels#

  • Productie-base-URL: https://www.invoice-converter.com/api/v1.
  • Live-sleutels gebruiken de productiehost en het prefix icp_....
  • Gebruik goedgekeurde live sleutels voor onboarding en validatieruns voordat u productievolume verstuurt.
  • Behandel sleutels als server-side secrets. Plaats ze niet in browser- of mobiele clients.

Eerste succesvolle request#

Gebruik deze volgorde als minimale happy path nadat je een API-sleutel hebt aangemaakt.

  • Uploaden: POST /api/v1/invoices:convert met Authorization, Idempotency-Key, file=@invoice.pdf (of .docx/.txt) en format=XRECHNUNG.
  • Controleer elke 10-15 seconden: GET /api/v1/tasks/{task_id} tot status completed of failed is.
  • Downloaden: GET /api/v1/tasks/{task_id}/result?download=xml en sla X-Correlation-ID op voor support-tracing.
  • Voor ZUGFeRD PDF-output vraagt u format=ZUGFERD bij convert en download=pdf bij result; hybride PDF-output vereist een PDF-bronupload.
  • Voor gestructureerde invoer roept u POST /api/v1/invoices:convert-structured aan met pdf_file=@invoice.pdf, data_file=@invoice-data.json en het doel-format.
  • Stuur optioneel client_reference of external_invoice_id en source_system mee voor ERP-reconciliatie.
  • Voor gesplitste ERP-exports van één factuur herhaalt u data_file; voor meerdere facturen start u één task per factuur met een eigen idempotency key.
  • Sla result_artifacts uit de statusresponse op om te zien of XML/PDF-artefacten gevalideerd, gecachet of door afhankelijkheden nog niet beschikbaar zijn.

Veelgebruikte payloadvoorbeelden#

  • XRECHNUNG: stuur format=XRECHNUNG.
  • ZUGFERD: stuur format=ZUGFERD; gebruik download=pdf bij result voor de hybride PDF/A-3-output.
  • Gestructureerde invoer: stuur pdf_file plus een of meer data_file-parts; geaccepteerde dataformaten zijn CSV, JSON, XML, XLSX en TXT, met elk ondersteund doelformaat. De data_file-parts moeten alle verplichte data bevatten; de PDF vult geen ontbrekende velden aan.
  • Meerdere facturen: verstuur afzonderlijke convert-requests en volg elke geretourneerde task_id; herhaalde data_file-parts zijn alleen voor gesplitste exports van dezelfde factuur.
  • UBL: stuur format=UBL; stel voor deterministische integraties ook een expliciet profile in, zoals PEPPOL, XRECHNUNG of EN16931.
  • CII: stuur format=CII; stel voor deterministische integraties ook een expliciet profile in, zoals EN16931.

Vereiste headers#

  • Authorization: Bearer <api_key>

Auth-regels#

API-toegang is goedkeuringsplichtig. Goedgekeurde accounts kunnen API-sleutels in het profiel maken, ze als Bearer-token gebruiken en prepaid credits voor goedgekeurde tests of Enterprise-facturering per order form voor productie gebruiken.

  • API-sleutels zijn tenant-gebonden live-credentials voor goedgekeurde accounts. Het huidige productieprefix is icp_....
  • Maak, roteer en trek API-sleutels in vanuit je profiel nadat API-toegang is ingeschakeld. Kopieer nieuwe sleutels meteen, want plaintext sleutels worden maar één keer getoond.
  • Een ontbrekende of ongeldige sleutel retourneert 401.
  • Aanroepen naar /api/v1 krijgen automatisch een X-Correlation-ID wanneer die ontbreekt.
  • Schrijfaanroepen vereisen Idempotency-Key; houd deze waarde stabiel over retries.
  • Gebruik server-to-server-integratie vanuit uw backend. Browser-origin-toegang is in productie beperkt.

Idempotency-contract#

  • Stuur bij elke schrijfaanroep een Idempotency-Key.
  • Idempotency keys moeten overeenkomen met [A-Za-z0-9._:-]+ en maximaal 200 tekens lang zijn.
  • Als u uw eigen key opgeeft, retourneert dezelfde key + identieke payload de gecachte response.
  • Dezelfde key + andere payload retourneert 409 IDEMPOTENCY_CONFLICT.
  • Idempotency keys verlopen na 24 uur.

Endpoint-referentie#

Alle endpoints zijn beschikbaar onder /api/v1. Timeouts verschijnen als 504 en andere tijdelijke verbindingsfouten als 502; correlatie-ID’s helpen support om requests end-to-end te volgen.

POST /api/v1/invoices:convert

Live

Upload een PDF-, DOCX- of TXT-factuurdocument en start asynchrone conversie. Retourneert een task_id voor polling. ZUGFeRD/Factur-X hybride PDF-downloads vereisen een PDF-bronupload; DOCX/TXT-bronnen moeten XML-resultaten aanvragen. Verzoek: multipart/form-data; file (binary, verplicht) — PDF-, DOCX- of TXT-factuurbrondocument; oude DOC/RTF-, afbeeldings- en andere bestanden worden geweigerd; format (string, verplicht) — doeluitvoerformaat; zie de formaatmatrix hieronder; profile (string, optioneel, aanbevolen voor deterministische integraties) — expliciet complianceprofiel. Standaardwaarden volgen het formaat; toegestane waarden zijn onder meer XRECHNUNG, PEPPOL, EN16931 en ondersteunde ZUGFeRD/Factur-X-profielen; jurisdiction (string, optioneel) — expliciete ISO 3166-1 alpha-2-jurisdictiecontext voor validatie-/adviescontroles; overschrijft het profiel niet; transaction_scope (string, optioneel) — expliciete transactiecontext, zoals B2G; toegepast op de queued task; delivery_channel (string, optioneel) — een van PEPPOL, DIRECT_XML, PORTAL, EMAIL_PDF, UNKNOWN; toegepast op de queued task; client_reference of external_invoice_id (string, optioneel) — factuur-/jobreferentie van de klant, teruggegeven in geaccepteerde uploads en taskstatusresponses; source_system (string, optioneel) — upstream ERP- of facturatiesysteemlabel, teruggegeven in geaccepteerde uploads en taskstatusresponses; use_seller_master_data (boolean, optioneel) — zonder waarde geldt de standaard uit het tenantprofiel; false negeert opgeslagen verkopersstamgegevens voor deze request, true levert/gebruikt verkopersstamgegevens; seller_master_data (JSON-objectstring, optioneel) — verkopersstamgegevens die alleen worden gebruikt wanneer use_seller_master_data=true; ondersteunt bedrijfs-, adres-, belasting-, contact- en betaalvelden (payment_means_code 30/42/58, payment_iban, payment_bic, payment_account_name, payment_terms_note); elke profielwaarde vervangt de overeenkomstige geëxtraheerde waarde, ontbrekende profielvelden blijven ongewijzigd en verschillen geven niet-blokkerende waarschuwingen. Antwoord: 202 Accepted.

POST /api/v1/invoices:convert-structured

Live

Upload een drager-PDF met CSV-, JSON-, XML-, XLSX- of TXT-factuurdata en start asynchrone conversie vanuit gestructureerde data. De data_file-parts zijn de enige semantische bron; de PDF vult geen ontbrekende factuurvelden aan. Voor ZUGFeRD/Factur-X wordt de PDF gebruikt als drager-PDF, en bij XML-georiënteerde output wordt hij bewaard als ingediend PDF-artefact. Gebruik één conversierequest per factuur; herhaal data_file alleen voor gesplitste ERP-exports die dezelfde factuur beschrijven. Verzoek: multipart/form-data; pdf_file (binary, verplicht) — drager-PDF voor ZUGFeRD/Factur-X-insluiting en bewaring bij XML-georiënteerde output; data_file (binary, verplicht, herhaalbaar) — CSV-, JSON-, XML-, XLSX- of TXT-factuurdata als enige semantische bron; .xls, PDF’s en afbeeldingsbestanden worden als data_file geweigerd; herhaal voor gesplitste header-/regel-exports van dezelfde factuur; de aliassen data_files en data_files[] worden geaccepteerd; totale grootte gestructureerde data — maximaal 2 MB over alle data_file-parts; format (string, verplicht) — doeloutputformaat; ondersteunt XRECHNUNG, ZUGFERD, EN16931, UBL en CII; profile (string, optioneel, aanbevolen voor deterministische integraties) — expliciet complianceprofiel. Standaard op basis van format; jurisdiction (string, optioneel) — expliciete ISO 3166-1 alpha-2-jurisdictiecontext voor validatie-/adviescontroles; overschrijft het profiel niet; transaction_scope (string, optioneel) — expliciete transactiecontext, zoals B2G; toegepast op de queued task; delivery_channel (string, optioneel) — een van PEPPOL, DIRECT_XML, PORTAL, EMAIL_PDF, UNKNOWN; toegepast op de queued task; client_reference of external_invoice_id (string, optioneel) — factuur-/jobreferentie van de klant, teruggegeven in geaccepteerde uploads en taskstatusresponses; source_system (string, optioneel) — upstream ERP- of facturatiesysteemlabel, teruggegeven in geaccepteerde uploads en taskstatusresponses; use_seller_master_data (boolean, optioneel) — zonder waarde geldt de standaard uit het tenantprofiel; false negeert opgeslagen verkopersstamgegevens voor deze request, true levert/gebruikt verkopersstamgegevens; seller_master_data (JSON-objectstring, optioneel) — verkopersstamgegevens die alleen worden gebruikt wanneer use_seller_master_data=true; ondersteunt bedrijfs-, adres-, belasting-, contact- en betaalvelden (payment_means_code 30/42/58, payment_iban, payment_bic, payment_account_name, payment_terms_note); elke profielwaarde vervangt de overeenkomstige geëxtraheerde waarde, ontbrekende profielvelden blijven ongewijzigd en verschillen geven niet-blokkerende waarschuwingen. Antwoord: 202 Accepted.

GET /api/v1/tasks/{task_id}

Live

Poll de huidige status van een conversietaak. Retourneert pending, processing, completed of failed. Voltooide taken bevatten result_artifacts-diagnostiek, zodat clients kunnen zien welke XML/PDF-artefacten beschikbaar, gecachet en met validatiebewijs onderbouwd zijn. Payloads van voltooide taken kunnen aanvullende _processing_warnings- en _validation_warnings-items met SOURCE_CONTEXT_*-regel-ID’s bevatten wanneer bronbewijs ontbrak, twijfelachtig of afgekapt was; behandel deze als beoordelingssignalen, niet als fouten. Bij failed bevat de response een error-veld met de reden. Verzoek: geen (GET); task_id (path, verplicht) — UUID die door het convert-endpoint is geretourneerd; include_validation_report_html (query, optioneel) — true of false (standaard false); bij true bevat de statusresponse het opgeschoonde HTML-validatierapport van het huidige strikte artefact wanneer dit beschikbaar is. Antwoord: 200 OK.

GET /api/v1/tasks/{task_id}/result

Live

Download het gegenereerde bestand (XML of PDF). De resultaantsyntaxis komt overeen met het oorspronkelijke taskformaat: XRECHNUNG/EN16931/UBL retourneren UBL XML, CII/ZUGFERD retourneren CII XML, en ZUGFERD + download=pdf retourneert een hybride PDF/A-3. Bij andere formaten kan download=pdf een gerenderde PDF leveren. Herhaalde downloads kunnen uit gecachte artefacten worden bediend wanneer het validatiebewijs nog actueel is. Tijdens verwerking retourneert het endpoint 202 TASK_NOT_READY; blokkerende validatiefouten retourneren 422 VALIDATION_FAILED, retrybare ontbrekende afhankelijkheden 503 en artefact-invariantfouten 500, telkens zonder bestand. Verzoek: geen (GET); task_id (path, verplicht) — UUID die door het convert-endpoint is geretourneerd; download (query, verplicht) — xml of pdf. Antwoord: 200 OK.

GET /api/v1/tasks/{task_id}/validation-report

Live

Download the validation report tied to the current validated result artifact. The report is available only after strict conversion has produced a cached artifact with current validation proof, and returns 404 when no report is bound to the delivered artifact. Verzoek: none (GET); task_id (path, required) — UUID returned by the convert endpoint; download (query, optional) — html or xml. Antwoord: 200 OK.

Uitvoerformatenmatrix#

FormaatSyntaxisVersie / ProfielContent-TypeExtensie
XRECHNUNGUBL 2.1 XMLXRechnung 3.0.2application/xml.xml
ZUGFERDCII XML (download=xml) / hybride PDF/A-3 (download=pdf)ZUGFeRD 2.3.2 / Factur-X 1.07.2application/xml of application/pdf.xml / .pdf
EN16931UBL 2.1 XMLEN 16931application/xml.xml
UBLUBL 2.1 XMLOASIS UBL 2.1application/xml.xml
CIIUN/CEFACT CII XMLD16Bapplication/xml.xml

Foutcontract#

CodeHTTPOpnieuw te proberenNotities
AUTHENTICATION_REQUIRED401NeeBearer-token ontbreekt/is leeg
INVALID_API_KEY401NeeAPI-sleutel niet gevonden, ingetrokken of verlopen
INSUFFICIENT_API_CREDITS402NeeGebruik goedgekeurde prepaid testcredits of Enterprise-facturering per order form
IDEMPOTENCY_KEY_REQUIRED400NeeSchrijfendpoint aangeroepen zonder Idempotency-Key
INVALID_IDEMPOTENCY_KEY400NeeIdempotency key heeft een ongeldig formaat
IDEMPOTENCY_CONFLICT409NeeZelfde key gebruikt met andere request-hash
IDEMPOTENCY_IN_PROGRESS409JaVeilig later opnieuw proberen met dezelfde key/payload
FORMAT_REQUIRED400NeeConversierequest mist het verplichte format
INVALID_FORMAT422NeeNiet-ondersteund conversieformaat
CLIENT_REFERENCE_CONFLICT400Neeclient_reference en external_invoice_id verschillen
INVALID_CLIENT_METADATA400Neeclient_reference, external_invoice_id of source_system overschrijdt de lengtelimiet of bevat besturingstekens
INVALID_SELLER_MASTER_DATA400Neeuse_seller_master_data of seller_master_data is niet parseerbaar of doorstaat de veldvalidatie niet
METHOD_NOT_ALLOWED405NeeDe conversiepaden accepteren alleen POST; de response bevat een Allow: POST-header
DOWNLOAD_FORMAT_REQUIRED400NeeTask-resultrequest mist de verplichte download-query
INVALID_DOWNLOAD_FORMAT400NeeTask-result download-query moet xml of pdf zijn
AUTH_SERVICE_UNAVAILABLE503JaAuth-backend niet beschikbaar
RATE_LIMIT_SERVICE_UNAVAILABLE503JaRate-limit-backend niet beschikbaar
API_CREDIT_SERVICE_UNAVAILABLE503JaVerificatie van prepaid API-credits of kanaalquotum is tijdelijk niet beschikbaar bij conversie-uploads
RATE_LIMITED429JaRespecteer Retry-After en quotaheaders
BAD_REQUEST400NeeOngeldige JSON of ongeldig UUID-padparameter
INVALID_QUERY_PARAMETER400Neeinclude_validation_report_html moet true of false zijn
PAYLOAD_TOO_LARGE413NeeUploadgrootte overschrijdt limiet
INVALID_UPLOAD400NeeUpload lezen/parsen mislukt
UPLOAD_FAILED4xx/5xxVoorwaardelijkCorrigeer ongeldige requestopties; probeer alleen opnieuw bij tijdelijke 5xx-gevallen
TASK_NOT_READY202JaPoll opnieuw voor asynchrone voltooiing
TASK_NOT_FOUND404NeeValidatierapport-request voor een onbekende task of een task die niet bij de tenant hoort
VALIDATION_FAILED422NeeBlokkerende validatieproblemen blijven bestaan, waaronder strikte ZUGFeRD-voorwaardefouten en onopgeloste blocking_source_conflict-items; corrigeer de factuurdata voordat u opnieuw probeert
AUTHORITATIVE_VALIDATION_UNAVAILABLE503JaAutoritatieve validatie, bewijsopslag of afhankelijkheid voor hybride generatie is niet beschikbaar; probeer later opnieuw
TASK_STATUS_FAILED4xx/5xxVoorwaardelijkOpnieuw proberen bij tijdelijke serviceconditie
TASK_RESULT_FAILED4xx/5xxVoorwaardelijkOpnieuw proberen bij tijdelijke serviceconditie
TASK_FAILED500NeeTask is mislukt voordat een conform artefact is uitgegeven; details bevat de onderliggende foutcode
XML_GENERATION_FAILED500JaTijdelijke XML-generatiefout of timeout
PDF_GENERATION_FAILED500JaTijdelijke PDF-generatiefout of timeout
ARTIFACT_GENERATION_RERUN_REQUIRED503NeeStrikte artifactgeneratie is mislukt na server-side retries; start een nieuwe conversie nadat de afhankelijkheid is hersteld
ARTIFACT_GENERATION_FAILED503 (details code)NeeVastgelegd op mislukte tasks voor herhaalbare strikte uitgiftefouten; resultdownloads geven 503 ARTIFACT_GENERATION_RERUN_REQUIRED met deze code in details
ARTIFACT_PARITY_FAILED500 (details code)NeeGemeld in de details van 500 TASK_FAILED wanneer het strikte artefact niet overeenkomt met de definitieve gecontroleerde factuurdata; escaleer met de correlatie-ID
INTERNAL_ARTIFACT_INVARIANT_FAILED500NeeVoltooide strikte task heeft geen veilig opgeslagen artefact voor de gevraagde download; escaleer met de correlatie-ID
PROFILE_MISMATCH422NeeHet gevraagde profiel komt bij de resultdownload niet overeen met de CustomizationID van het opgeslagen resultaat
ZUGFERD_SOURCE_PDF_INCOMPATIBLE422NeeStrikte hybride PDF-generatie kan XML niet in de geüploade bron-PDF insluiten
ZUGFERD_SOURCE_PDF_REQUIRED422Needownload=pdf voor ZUGFERD vereist een PDF-bronupload (DOCX/TXT-bronnen kunnen de hybride PDF niet dragen); vraag in plaats daarvan download=xml aan
VALIDATION_REPORT_NOT_FOUND404NeeEr is geen validatierapport gekoppeld aan het bewijs van het huidige geleverde artefact
VALIDATION_REPORT_FAILED4xx/5xxVoorwaardelijkOphalen van het validatierapport is mislukt; probeer alleen opnieuw bij tijdelijke 5xx-gevallen
OUTPUT_PROFILE_REQUIRED422NeeEen generiek uitvoercontract vereist een expliciet profiel wanneer geen eenduidige standaard kan worden bepaald
OUTPUT_PROFILE_CONFLICT422NeeProfiel is in strijd met het gekozen uitvoerformaat of de expliciete variant
PROXY_ERROR502/504JaTijdelijke verbindingsfout (504 bij timeout)

Veelvoorkomende fouten en wat te doen#

  • Opnieuw proberen met backoff: 429, 500, 502, 503, 504.
  • Request of brondata corrigeren: 400, 409, 413, 422.
  • Toegang of credentials corrigeren: 401, 403.
  • Bevestig goedkeuring, prepaid testcredits of Enterprise-facturering per order form: 402 INSUFFICIENT_API_CREDITS.
  • Later blijven pollen: 202 TASK_NOT_READY.
  • Bij 422 VALIDATION_FAILED toont u het teruggegeven veld, de regel-ID en de voorgestelde oplossing aan een menselijke controleur voordat u opnieuw probeert met gecorrigeerde factuurdata.
  • Bij 503 AUTHORITATIVE_VALIDATION_UNAVAILABLE haalt u dezelfde task later opnieuw op; er is geen ongecontroleerd artefact geleverd.

Rate- en payloadlimieten#

Rate limits per API-sleutel en payloadgroottebeperkingen gelden voor alle API-aanroepen. Geweigerde conversies verbruiken geen prepaid API-credits; rate limits worden apart per endpoint bepaald.

  • Endpointgebonden limieten zijn kostengewogen. De twee upload-endpoints gebruiken het basisquotum (standaard 30/min en 500/hour); taskpolling is momenteel standaard minimaal 10/min en 120/hour, en resultdownloads zijn momenteel standaard minimaal 10/min en ongeveer 134/hour.
  • Lees effectieve limieten uit X-RateLimit-Limit-Minute en X-RateLimit-Limit-Hour op responses.
  • Maximale uploadgrootte voor brondocumenten: 20 MB voor PDF-, DOCX- of TXT-bestanden.
  • Maximale uploadgrootte gestructureerde data: 2 MB totaal over alle data_file-parts.
  • Maximale JSON-payloadgrootte: 1 MB
  • Rate-limit-responses bevatten Retry-After, X-RateLimit-Limit-Minute en X-RateLimit-Limit-Hour.

Retry-richtlijn#

  • Gebruik exponentiële backoff met jitter.
  • Probeer alleen tijdelijke klassen (429, 500, 502, 503, 504) opnieuw, waar mogelijk met dezelfde payload en idempotency key.
  • Probeer validatie- of contractfouten (400, 401, 402, 403, 409, 413, 422) niet blind opnieuw.

Taaklevenscyclus en bewaartermijn#

  • Voltooide en mislukte taken blijven 10 minuten beschikbaar nadat ze een terminale status bereiken.
  • Verwerking krijgt een timeout na 5 minuten; vastgelopen tasks worden automatisch als failed gemarkeerd.
  • Idempotency keys verlopen na 24 uur.
  • Rate-limit-tellers resetten op een rollend venster.

Supportmodel#

  • Support tijdens kantooruren op basis van commercieel redelijke inspanningen.
  • Geen formele SLA, servicecredit of reactietijdverplichting tenzij afgesproken in een order form.

Wijzigingslogboek#

Meest recente extern zichtbare API-wijzigingen.

2026-07-26

When seller master data is enabled, every supplied profile value replaces the corresponding extracted seller or payment value. Fields absent from the profile remain unchanged. Source differences are non-blocking review warnings.

2026-07-10

Documentatie-inhaalslag; geen wijziging in runtimegedrag. De foutcatalogus documenteert nu eerder ongedocumenteerde runtime-foutcodes, waaronder API_CREDIT_SERVICE_UNAVAILABLE, TASK_NOT_FOUND, INVALID_CLIENT_METADATA, INVALID_SELLER_MASTER_DATA, PROFILE_MISMATCH, ZUGFERD_SOURCE_PDF_REQUIRED, VALIDATION_REPORT_NOT_FOUND, VALIDATION_REPORT_FAILED, INVALID_QUERY_PARAMETER en METHOD_NOT_ALLOWED. Clients die foutresponses via het machineleesbare code-veld verwerken, hoeven niets te wijzigen; clients die op een vaste lijst codes schakelen, moeten de nieuw gedocumenteerde waarden toevoegen. Changelogdatums gecorrigeerd: ondersteuning voor DOCX/TXT-bronnen verscheen op 2026-06-30, niet op 2026-07-06.

2026-07-06

Payloads van voltooide taken kunnen aanvullende _processing_warnings- en _validation_warnings-items met SOURCE_CONTEXT_*-regel-ID’s bevatten wanneer bronbewijs vóór extractie ontbrak, twijfelachtig of afgekapt was. Behandel SOURCE_CONTEXT_*-items als beoordelingssignalen voor klantzijdige uitzonderingsafhandeling; strikte artefactdownloads blijven onderworpen aan validatiebewijs en artefactcontroles.

2026-07-03

Strikte ZUGFeRD-voorwaardefouten (ontbrekende verplichte velden voor hybride generatie) falen nu als 422 VALIDATION_FAILED met de blokkerende regel-ID’s in plaats van een herhaalbare 503; leid deze naar een datacorrectieflow, niet naar een retry-lus. Voor XML-only formaten (XRECHNUNG, EN16931, UBL, CII) is de PDF-weergave nu een best-effort gemaksartefact: download=xml blijft leidend en beschikbaar op voltooide taken, terwijl download=pdf onbeschikbaar kan zijn als de weergave na de XML-uitgifte mislukte. Conversies met onopgeloste blokkerende bronconflicten falen nu als 422 VALIDATION_FAILED met blocking_source_conflict-items in plaats van een artefact uit te geven.

2026-06-30

POST /api/v1/invoices:convert accepteert nu PDF-, DOCX- en TXT-factuurbrondocumenten in het file-veld. Oude DOC-, RTF-, afbeeldings- en andere niet-ondersteunde bronbestanden worden geweigerd voordat de conversie start. ZUGFeRD/Factur-X hybride PDF-downloads vereisen nog steeds een PDF-bronupload; gebruik XML-downloads voor DOCX/TXT-bronconversies. Optionele include_validation_report_html=true toegevoegd op GET /api/v1/tasks/{task_id} om het opgeschoonde HTML-validatierapport inline te leveren wanneer beschikbaar. Conversie-uploads accepteren nu op beide endpoints optionele use_seller_master_data- en seller_master_data-velden, zodat goedgekeurde tenants opgeslagen of request-gebonden verkopersstamgegevens kunnen inschakelen.

2026-06-29

GET /api/v1/tasks/{task_id}/validation-report?download=html|xml toegevoegd om het validatierapport op te halen dat aan het huidige strikte resultaatartefactbewijs is gekoppeld. Validatierapportresponses tonen task-ID, artefact-SHA-256, validatiebewijs-ID, rapportbewijs-ID, rapportcontenttype en correlatie-ID-headers.

2026-06-02

External API-toegang is nu gedocumenteerd als goedgekeurde toegang in plaats van onbeperkte sleutelaanmaak. Verduidelijkt dat er geen formele SLA, servicecredit of contractuele boete geldt tenzij afgesproken in een order form. format is nu verplicht op beide conversie-endpoints; ontbrekende waarden retourneren 400 FORMAT_REQUIRED en niet-ondersteunde waarden 422 INVALID_FORMAT. download is nu verplicht op task-resultrequests; ontbrekende waarden retourneren 400 DOWNLOAD_FORMAT_REQUIRED en niet-ondersteunde waarden 400 INVALID_DOWNLOAD_FORMAT. Conversie-uploads accepteren nu client_reference/external_invoice_id en source_system voor klantzijdige reconciliatie. Geaccepteerde conversie- en taskstatusresponses bevatten nu status_url, primary_result_format, primary_result_url en meegestuurde reconciliatievelden.

2026-06-01

Gestructureerde conversie accepteert nu alle publieke outputformaten: XRECHNUNG, ZUGFeRD, EN16931, UBL en CII. Gestructureerde conversie accepteert nu herhaalbare data_file-onderdelen plus de aliassen data_files en data_files[] voor gesplitste ERP-exports. Gestructureerde multi-file bundles moeten precies één factuur beschrijven en falen vroeg bij conflicterende of ontbrekende bundle-factuur-ID’s. Verduidelijkt dat meerdere factuurdocumenten als afzonderlijke conversietasks moeten worden ingestuurd, elk met een eigen idempotency key.

2026-05-27

POST /api/v1/invoices:convert-structured toegevoegd voor conversie vanuit gestructureerde data met drager-PDF en CSV/JSON/XML/XLSX/TXT over ondersteunde outputformaten. Gedocumenteerd dat gestructureerde data op dit endpoint de enige semantische bron is; de PDF wordt gebruikt voor hybride insluiting. OpenAPI- en Postman-artefacten bijgewerkt voor gestructureerde conversie.

2026-05-08

Prepaid External API-credits toegevoegd voor niet-Enterprise-tenants. 402 INSUFFICIENT_API_CREDITS gedocumenteerd voor goedgekeurde tenants zonder Enterprise-facturering per order form of prepaid credits. Bevestigd dat idempotente replays geen extra API-credits verbruiken. Verduidelijkt dat External API V1 modelrouting server-side beheert, terwijl profiel- en leveringscontext door de aanroeper worden bepaald.

2026-03-06

Task-result-downloads formaatgetrouw gemaakt voor CII- en ZUGFERD-uitvoer. Hergebruik van gecachte resultaatartefacten toegevoegd voor herhaalde XML/PDF-downloads van dezelfde task. Pollingquota afgestemd op endpoint-gescopeerde gewogen rate-limit-buckets.

2026-02-23

Duidelijkere, consistente API-foutresponses toegevoegd voor alle endpoints. Convert-opties uitgebreid en XML/PDF-downloadgedrag voor taskresultaten gedocumenteerd. Retryveiligheid verbeterd met strengere idempotency-vereisten en validatie. OpenAPI/Postman-artefacten bijgewerkt naar huidig API-gedrag.

Leveringsartefacten#

Download machineleesbare integratieartefacten voor de Developer API.

OpenAPI JSON
Postman-collectie

Postman en OpenAPI gebruiken#

  • Importeer de Postman-collectie en stel de collectievariabelen base_url, api_key en idempotency_key in.
  • Voer de collectie op volgorde uit: convert, status pollen, daarna result ophalen.
  • Gebruik de OpenAPI JSON om typed clients te genereren, maar dek file upload, polling en binaire result handling af met integratietests.
  • Leg X-Correlation-ID vast in logs zodat support requests end-to-end kan traceren.

Stuur technische feedback#

Deel implementatievragen, risico’s en benodigde contractwijzigingen met ons team.

Technische feedback e-mailen
Vertrouwen en beveiligingFacturen via e-mail
Op deze pagina
OverzichtBelangrijkste mogelijkhedenAPI-toegang krijgenToegang aanvragenSnelstartSnelstart met curlBase-URL en API-sleutelsEerste succesvolle requestVeelgebruikte payloadvoorbeeldenVereiste headersAuth-regelsIdempotency-contractEndpoint-referentieUitvoerformatenmatrixFoutcontractVeelvoorkomende fouten en wat te doenRate- en payloadlimietenRetry-richtlijnTaaklevenscyclus en bewaartermijnSupportmodelWijzigingslogboekLeveringsartefactenPostman en OpenAPI gebruikenStuur technische feedback

Invoice-Converter.com

Wij helpen bedrijven in heel Europa facturen om te zetten naar XRechnung en andere e-factuurformaten met validatieondersteuning. Controleer randgevallen vóór indiening.

20.000+ facturen verwerkt
Snel & Veilig
Vertrouwd door honderden

Functies

PDF omzetten & maken

  • PDF naar XRechnung
  • PDF naar UBL
  • PDF naar XRechnung (CII)
  • PDF naar ZUGFeRD
  • PDF naar Factur-X
  • XRechnung maken
  • XRechnung naar PDF

Bekijken & valideren

  • XRechnung/XML Viewer
  • XRechnung Validator

Snelle links

  • Bronnen
  • Vertrouwens- en beveiligingscentrum
  • Documentatie voor de ontwikkelaars-API
  • Blog
  • FAQ
  • Prijzen
  • Klimaatbijdrage

Juridisch

  • Impressum
  • Privacybeleid
  • Gegevensverwerkingsovereenkomst
  • Algemene voorwaarden
  • Geld-terug-garantie

Neem contact op

contact@invoice-converter.com
Begin met converteren
© 2026 Invoice-Converter.com.Gemaakt met in Europa
AVG Conform
Duitse server