I have structured invoice data
Create the header, add each line, optionally attach the visual PDF, then generate the Peppol UBL document.
See this workflow →Choose the route that matches your system. Every identifier, request and next action is explained from the first API call to delivery tracking.
Complete the account and supplier configuration first. Your application can then reuse the same credentials for every document.
Register the legal company that will send documents.
Company, VAT, bank and Peppol routing data are loaded from your registered account.
Use the dashboard tools to test calls safely before production.
Keep it on your server. Never expose it in browser or mobile application code.
Create the header, add each line, optionally attach the visual PDF, then generate the Peppol UBL document.
See this workflow →Upload the PDF, let Peppox extract its data, verify it, confirm it and send it through Peppol.
See this workflow →This is the most direct documented route when your system already produces invoices as PDF files.
Send a file, Base64 content or a remote URL. Save the returned queue_guid.
POST/pdf2peppol/addPoll until processing is complete, then review buyer, totals, VAT and lines.
GET/pdf2peppol/checkConfirm only after the extracted invoice data is correct.
POST/pdf2peppol/confirmDispatch the confirmed document. Save the returned document GUID.
POST/pdf2peppol/sendUse the sent-document list or the dashboard to track the final status.
GET/doc-sent/header/listReplace the placeholders with your real key and the identifiers returned by the previous call.
curl -X POST "https://api.peppox.com/pdf2peppol/add/" \
-F "supplier_id=YOUR_SUPPLIER_ID" \
-F "pdf=@invoice.pdf" \
-F "network=integration"
# Save queue_guid, then check it
curl "https://api.peppox.com/pdf2peppol/check/?supplier_id=YOUR_SUPPLIER_ID&queue_guid=QUEUE_GUID"
curl -X POST "https://api.peppox.com/pdf2peppol/confirm/" \
-H "Content-Type: application/json" \
-d '{"supplier_id":"YOUR_SUPPLIER_ID","queue_guid":"QUEUE_GUID","confirmed":1}'
curl -X POST "https://api.peppox.com/pdf2peppol/send/" \
-H "Content-Type: application/json" \
-d '{"supplier_id":"YOUR_SUPPLIER_ID","queue_guid":"QUEUE_GUID"}'Ideal when your ERP already stores every invoice field and line in a structured format.
Send customer, dates, currency, payment and delivery data. Save invoice_guid.
POST/invoice/addRepeat the call for each product or service line.
POST/invoice_line/addAdd the human-readable invoice by file, Base64 or URL.
POST/invoice_attach_pdf/addPeppox combines the header, lines and attachment. A successful response returns XML_BUILT.
POST/xml/generateInspect the document and its status from the dashboard or sent-document APIs.
GET/doc-sent/header/listImportant: the published structured-invoice reference currently documents XML generation but no separate final /send endpoint. If your integration requires an explicit final send call, use the PDF2Peppol workflow or complete dispatch from the configured Peppox workflow/dashboard.
POST/invoice/addCreate a sales invoice header and receive invoice_guid.
POST/invoice_line/addAdd one line to an existing invoice.
POST/invoice_attach_pdf/addAttach or replace the invoice PDF.
POST/xml/generateGenerate a Peppol-compatible UBL XML document.
POST/creditnote/addCreate a credit note header.
POST/creditnote_line/addAdd one line to a credit note.
POST/creditnote_attach_pdf/addAttach or replace a credit note PDF.
GET/doc-sent/header/listList sent-document headers with filters and pagination.
GET/doc-sent/lines/listGet the lines of one sent document.
GET/doc-received/header/listList received-document headers with filters and pagination.
GET/doc-received/lines/listGet the lines of one received document.
POST/pdf2peppol/addUpload a PDF and start extraction.
GET/pdf2peppol/checkCheck extraction status and extracted fields.
POST/pdf2peppol/confirmConfirm verified invoice data.
POST/pdf2peppol/sendSend the confirmed document through Peppol.
The Peppox dashboard provides guided forms that call the APIs for you. They make it easy to discover required parameters, test realistic documents and understand the JSON response before connecting your ERP.
invoice_guidLinks a structured header, lines, PDF and generated XML.
queue_guidLinks the four PDF2Peppol calls while extraction is in progress.
document GUIDLinks the final document to delivery tracking and reconciliation.
Send, receive and monitor Peppol documents through one secure API and one clear dashboard.