Envoyez votre première facture via Peppol, étape par étape.
Choisissez le parcours adapté à votre système. Chaque identifiant, requête et action suivante est expliqué, du premier appel API au suivi de livraison.
Finalisez d’abord le compte et le profil fournisseur. Votre application pourra ensuite réutiliser les mêmes accès pour chaque document.
01
Créez votre compte Peppox
Enregistrez l’entreprise légale qui enverra les documents.
02
Complétez le profil fournisseur
Les données société, TVA, banque et routage Peppol proviennent de votre compte.
03
Ouvrez l’environnement d’intégration
Utilisez les outils du dashboard pour tester avant la production.
04
Copiez votre clé API
Conservez-la côté serveur. Ne l’exposez jamais dans le navigateur ou une app mobile.
02 · Choisissez le chemin le plus court
Partez des données que vous avez déjà
GROUPE 1 · PDF2PEPPOLParcours API A à Z le plus rapide
PDF
Envoyez un PDF. Peppox fait le travail Peppol.
Votre système envoie un seul fichier PDF. Peppox extrait les données de manière sécurisée, crée le XML UBL, applique les standards Peppol et valide le document.
1 · Importer le PDF
2 · Vérifier
3 · Confirmer
4 · Envoyer sur Peppol
Voir ce parcours →GROUPE 2 · API FACTURE STRUCTURÉEERP / comptabilité / SaaS
{ }
Construisez et contrôlez chaque donnée du document.
Utilisez cette série d’endpoints lorsque votre ERP ou logiciel gère les données de facture et doit contrôler précisément l’en-tête, les lignes, le PDF et le XML UBL.
Le parcours documenté le plus direct lorsque votre système produit déjà les factures en PDF.
01
Chargez le PDF
Envoyez un fichier, du Base64 ou une URL. Enregistrez le queue_guid retourné.
POST/pdf2peppol/add
02
Vérifiez les données extraites
Interrogez l’API jusqu’à la fin du traitement, puis contrôlez acheteur, totaux, TVA et lignes.
GET/pdf2peppol/check
03
Confirmez le document
Confirmez uniquement lorsque toutes les données extraites sont correctes.
POST/pdf2peppol/confirm
04
Envoyez vers Peppol
Expédiez le document confirmé et conservez le GUID document retourné.
POST/pdf2peppol/send
Exemple minimal
Upload → check → confirm → send
Remplacez les valeurs fictives par votre clé et les identifiants renvoyés par l’appel précédent.
pdf2peppol.sh
curl -X POST "https://api.peppox.com/pdf2peppol/add/" \
-F "supplier_id=YOUR_SUPPLIER_ID" \
-F "document_type_code=380" \
-F "pdf_file=@invoice.pdf"
# 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/" \
-d "supplier_id=YOUR_SUPPLIER_ID" \
-d "queue_guid=QUEUE_GUID"
curl -X POST "https://api.peppox.com/pdf2peppol/send/" \
-d "supplier_id=YOUR_SUPPLIER_ID" \
-d "queue_guid=QUEUE_GUID"
04 · API facture structurée
Construisez une facture prête pour Peppol depuis vos données
Idéal lorsque votre ERP conserve déjà chaque champ et chaque ligne sous forme structurée.
01
Créez l’en-tête
Envoyez client, dates, devise, paiement et livraison. Enregistrez invoice_guid.
POST/invoice/add
02
Ajoutez les lignes
Répétez cet appel pour chaque produit ou service.
POST/invoice_line/add
03
Joignez le PDF (facultatif)
Ajoutez la facture lisible par fichier, Base64 ou URL.
POST/invoice_attach_pdf/add
04
Générez et envoyez le XML UBL
Peppox crée le XML UBL pour une facture ou une note de crédit. S’il est valide, le workflow Peppox configuré l’envoie vers Peppol : aucun appel structuré /send distinct n’est nécessaire.
POST/xml/generate
05
Suivez et pilotez
Consultez le document et son statut dans le dashboard ou via les API de documents envoyés.
GET/doc-sent/header/list
API NOTE
Important : /xml/generate/ est commun aux factures et notes de crédit. Une réponse XML_BUILT réussie signifie que Peppox a généré le document et poursuit l’envoi Peppol configuré. Il n’existe pas d’endpoint /send supplémentaire pour les données structurées.
Paramètres, formats acceptés, requêtes prêtes à copier et exemples de réponses réussies. Les noms techniques des champs restent volontairement en anglais afin de correspondre exactement à l’API.
01
PDF2Peppol · complete PDF send flow
POST/pdf2peppol/add/Upload a PDF and create the conversion queue+
Authentification: supplier_id is the active Company API key. Aliases: apikey, api_key.Formats de requête acceptés: GET or POST; multipart, form data or JSON
Obligatoire
ParameterFormatDescription
supplier_idstringAccount API key.
PDF sourcefile or stringProvide exactly one: multipart pdf / file / invoice_pdf / document / pdf_file; or pdf_base64 / content_base64; or pdf_url / file_url / document_url / url.
Facultatif
ParameterFormatDescription
document_type_code380 or 381380 by default; 381 is a credit note. Aliases: invoice_type_code, document_type, type.
networkproduction or integrationproduction by default. Aliases: net_work, environment.
filenamestringUsed with a Base64 or URL source; a .pdf extension is normalised.
Maximum PDF size: 15 MB. The file must start with a valid PDF signature.
Store queue_guid. It is the state identifier for check, confirm and send.
The response contains the account monthly PDF conversion quota state.
GET/pdf2peppol/check/Read extraction results and Peppol readiness+
Authentification: supplier_id is the active Company API key. Aliases: apikey, api_key.Formats de requête acceptés: GET or POST; query string, form data or JSON
Obligatoire
ParameterFormatDescription
supplier_idstringSame value used at upload.
queue_guidstringThe queue GUID returned by /pdf2peppol/add/. Alias: guid.
Poll this endpoint while conversion is pending; do not call confirm until ready_for_peppol is true.
Review missing_required_fields, header values, line values and totals before confirming.
POST/pdf2peppol/confirm/Confirm the converted document+
Authentification: supplier_id is the active Company API key. Aliases: apikey, api_key.Formats de requête acceptés: GET or POST; query string, form data or JSON
Obligatoire
ParameterFormatDescription
supplier_idstringSame account key.
queue_guidstringThe queue GUID returned by upload. Alias: guid.
Exemple de requête
curl -X POST "https://api.peppox.com/pdf2peppol/confirm/" \
-d "supplier_id=YOUR_API_KEY" \
-d "queue_guid=QUEUE_GUID"
Confirmation is refused if mandatory converted data is missing.
Confirm is a separate explicit action; uploading alone never sends the document.
POST/pdf2peppol/send/Send the confirmed document through Peppol+
Authentification: supplier_id is the active Company API key. Aliases: apikey, api_key.Formats de requête acceptés: GET or POST; query string, form data or JSON
Obligatoire
ParameterFormatDescription
supplier_idstringSame account key.
queue_guidstringA confirmed and ready queue GUID. Alias: guid.
Exemple de requête
curl -X POST "https://api.peppox.com/pdf2peppol/send/" \
-d "supplier_id=YOUR_API_KEY" \
-d "queue_guid=QUEUE_GUID"
Use only after the invoice header and every invoice line have been saved.
The invoice header determines document type 380. Do not add a separate document-type parameter to this call.
Peppox calculates totals and VAT subtotals from the saved invoice lines.
This is the final structured-invoice call: it creates the UBL XML and, when it is valid, continues the configured Peppol submission. There is no extra structured /send endpoint.
03
Structured credit note
POST/creditnote/add/Create a credit note header+
Authentification: apikey or api_key is required.Formats de requête acceptés: GET or POST; JSON or form data
Use only after the credit-note header and every credit-note line have been saved.
The credit-note header determines document type 381. Do not add a separate document-type parameter to this call.
Peppox calculates totals and VAT subtotals from the saved credit-note lines.
This is the final structured-credit-note call: it creates the UBL XML and, when it is valid, continues the configured Peppol submission. There is no extra structured /send endpoint.
Authentification: apikey query/form value, or Authorization: Bearer API_KEY.Formats de requête acceptés: GET or POST; apikey can also be an Authorization: Bearer token
Obligatoire
ParameterFormatDescription
apikeystringAccount API key.
Facultatif
ParameterFormatDescription
profilemini | customer | fullSelects a field preset.
fieldscomma-separated namesOverrides the preset with allowed fields.
The full response contains both test and production existence results plus the EN16931 invoice endpoint lookup.
This endpoint checks discoverability; it does not create or send a document.
06 · Tests sans code
Comprenez chaque requête dans le dashboard avant de la coder
Le dashboard Peppox propose des formulaires guidés qui communiquent directement avec les API. Vous découvrez facilement les paramètres, testez des documents réels et comprenez la réponse JSON avant de connecter votre ERP.
04Valider le parcours dans l’environnement d’intégration
05Reprendre la requête fonctionnelle dans votre backend
06Suivre les documents envoyés et reçus
Identifiants à conserver
L’état de votre intégration reste simple
invoice_guid
Relie l’en-tête structuré, les lignes, le PDF et le XML généré.
queue_guid
Relie les quatre appels PDF2Peppol pendant l’extraction.
GUID document
Relie le document final au suivi de livraison et au rapprochement.
Si une requête échoue
400Contrôlez les champs absents ou invalides.401Vérifiez la clé API et l’environnement.404Vérifiez le GUID créé par l’appel précédent.429Ralentissez et réessayez avec un délai progressif.500Journalisez l’identifiant de requête, retentez sans doublon et contactez Peppox si le problème persiste.
Peppox
Une seule connexion au réseau Peppol.
Envoyez, recevez et surveillez les documents Peppol via une API sécurisée et un tableau de bord clair.