Authentification
Taper
CLÉ API — CLÉ API
Emplacement
requête / paramètre :
clé APISolution de repli via le paramètre de requête/corps « apikey »
GET /sendsms/?apikey=VOTRE_CLÉ_API
Gestion des factures
/facture/ajouter
• Méthodes :
POSTE
Ajouter un en-tête de facture de vente
Crée un nouvel en-tête de facture au statut BROUILLON. Ce point de terminaison enregistre toutes les informations relatives au fournisseur et au client, les dates d'émission, les conditions de paiement et les détails de livraison. Les données du fournisseur sont automatiquement chargées à partir de votre clé API (customer_api).
POSTE
/facture/ajouter
• Taux: 60 requêtes/min
• Authentification requise
Paramètres
| Nom | Dans | Taper | Requis | Défaut | Description |
|---|---|---|---|---|---|
clé API |
chaîne | Oui | Votre clé API Peppox (depuis votre compte fournisseur enregistré). | ||
réseau |
chaîne | Non | Identifiant réseau optionnel (Peppol par défaut). | ||
inv_id |
chaîne | Non | Numéro de facture interne facultatif. | ||
date d'émission |
chaîne | Oui | Date d'émission de la facture (AAAA-MM-JJ). | ||
date_d'échéance |
chaîne | Non | Date d'échéance de la facture (AAAA-MM-JJ). | ||
code_type_de_facture |
chaîne | Non | 380 | Code de type de facture Peppol (ex 380 = Facture, 381 = Note de crédit). | |
devise |
chaîne | Non | EUR | Code ISO de la devise. | |
coût comptable |
chaîne | Non | Référence au code comptable interne. | ||
référence_acheteur |
chaîne | Non | Référence acheteur / Numéro de commande. | ||
paiement.code_de_signification |
chaîne | Non | 1 | Moyens de paiement (liste des codes Peppol). | |
paiement.identifiant_de_paiement |
chaîne | Non | Identifiant/référence du paiement. | ||
paiement.iban |
chaîne | Non | IBAN du bénéficiaire. | ||
nom_du_compte_de_paiement |
chaîne | Non | Nom du titulaire du compte bénéficiaire. | ||
paiement.bic |
chaîne | Non | Code BIC/SWIFT du bénéficiaire. | ||
conditions de paiement |
chaîne | Non | Note sur les conditions de paiement. | ||
la date de livraison |
chaîne | Non | La date de livraison. | ||
schéma de localisation de livraison |
chaîne | Non | 0088 | Identifiant du schéma de localisation de livraison. | |
livraison.location_id |
chaîne | Non | Identifiant du lieu de livraison. | ||
livraison.rue |
chaîne | Non | Adresse de livraison : rue. | ||
livraison.ville |
chaîne | Non | Ville de livraison. | ||
livraison.postale |
chaîne | Non | Code postal de l'adresse de livraison. | ||
pays de livraison |
chaîne | Non | Code pays de l'adresse de livraison. | ||
nom_partie_livraison |
chaîne | Non | Nom du livreur. | ||
client.schéma_point_de_terminaison |
chaîne | Non | 0208 | Identifiant du programme client Peppol. | |
client.endpoint_id |
chaîne | Non | Identifiant du participant client Peppol. | ||
nom du client |
chaîne | Non | Nom du client. | ||
rue du client |
chaîne | Non | Rue du client. | ||
client.ville |
chaîne | Non | Ville du client. | ||
client.postal |
chaîne | Non | Code postal du client. | ||
client.pays |
chaîne | Non | Code pays du client. | ||
client.identifiant_de_télécommande |
chaîne | Non | Numéro de TVA du client. | ||
schéma d'identifiant de l'entreprise client |
chaîne | Non | 0208 | Système d'identification des entreprises clientes. | |
client.entreprise_id |
chaîne | Non | Identifiant de l'entreprise cliente (numéro national). | ||
téléphone du client |
chaîne | Non | Numéro de téléphone du client. | ||
email client |
chaîne | Non | Adresse électronique de contact client. |
Exemples de demandes
BOUCLE
PYTHON
curl -X POST "https://api.peppox.com/invoice/add/" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d "{ "issue_date": "2025-10-17", "due_date": "2025-11-17", "customer": { "endpoint_id": "9915:BE0123456789", "name": "ACME SPRL", "country": "BE" }, "payment": { "iban": "BE12345678901234", "bic": "GEBABEBB", "account_name": "Peppox Supplier" } }"
Réponses
Statut: 200 — Facture créée avec succès (brouillon).
JSON
{ "ok": true, "invoice_guid": "inv-8c3b4a99-2025-10-17", "status": "DRAFT" }
Statut: 400 — Champs invalides ou manquants.
Statut: 401 — Clé API invalide ou expirée.
Statut: 500 — Erreur interne du serveur ou de la base de données.
/ligne_de_facture/ajouter
• Méthodes :
POSTE
Ajouter une ligne de facture à une facture existante
Ajoute une nouvelle ligne à une facture existante (identifiée par invoice_guid). Prend en charge l'unité, la quantité, le prix, la catégorie de TVA et les codes d'identification du produit.
POSTE
/ligne_de_facture/ajouter
• Taux: 60 requêtes/min
• Authentification requise
Paramètres
| Nom | Dans | Taper | Requis | Défaut | Description |
|---|---|---|---|---|---|
clé API |
chaîne | Oui | Votre clé API Peppox (requise pour l'authentification). | ||
GUID_facture |
chaîne | Oui | L'identifiant unique GUID de la facture renvoyé par /invoice/add. | ||
identifiant_de_ligne |
chaîne | Non | Identifiant de ligne interne facultatif (par défaut, GUID généré). | ||
quantité |
nombre | Oui | Quantité de l'article ou du service. | ||
code_unité |
chaîne | Non | Code d’unité selon la recommandation UNECE 20 (par exemple H87 pour « pièce »). | ||
prix_montant |
nombre | Oui | Prix unitaire (hors taxes). | ||
description de l'article |
chaîne | Non | Description de l'article ou du service. | ||
nom_de_l'article |
chaîne | Non | Nom ou titre de l'article. | ||
identifiant_article_vendeur |
chaîne | Non | Identifiant interne de l'article ou SKU du vendeur. | ||
schéma d'identifiant d'article standard |
chaîne | Non | 0088 | Identifiant standard du système d'identification des articles (par exemple GTIN). | |
std_item_id |
chaîne | Non | Identifiant normalisé de l'article (GTIN, EAN, etc.). | ||
pays d'origine |
chaîne | Non | Pays d'origine (ISO 3166-1 alpha-2). | ||
catégorie_tax |
chaîne | Non | Code de catégorie de TVA (ex. S, Z, AE). | ||
pourcentage d'impôt |
nombre | Non | Pourcentage du taux de TVA (ex. 21,00). |
Exemples de demandes
BOUCLE
PYTHON
curl -X POST "https://api.peppox.com/invoice_line/add/" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d "{ "invoice_guid": "inv-8c3b4a99-2025-10-17", "quantity": 2, "unit_code": "H87", "price_amount": 49.99, "item_name": "Service de conseil", "tax_percent": 21 }"
Réponses
Statut: 200 — Ligne de facture ajoutée avec succès.
JSON
{ "ok": true, "line_guid": "line-2b4fa3c1-2025-10-17" }
Statut: 400 — Paramètres invalides (invoice_guid manquant ou champs numériques invalides).
Statut: 401 — Clé API invalide ou expirée.
Statut: 500 — Erreur interne de la base de données ou du serveur.
/invoice_attach_pdf/ajouter
• Méthodes :
POSTE
Joindre un PDF à une facture existante
Ajoute un document PDF (par téléchargement, Base64 ou URL distante) à une facture existante identifiée par invoice_guid. Une seule pièce jointe par facture est conservée ; tout fichier précédent est remplacé.
POSTE
/invoice_attach_pdf/ajouter
• Taux: 30 requêtes/min
• Authentification requise
Paramètres
| Nom | Dans | Taper | Requis | Défaut | Description |
|---|---|---|---|---|---|
clé API |
chaîne | Oui | Votre clé API Peppox (authentification). | ||
GUID_facture |
chaîne | Oui | Le GUID de la facture à laquelle joindre le PDF. | ||
doc_id |
chaîne | Non | Identifiant de document facultatif (par défaut, l'identifiant de la facture ou un UUID généré). | ||
nom de fichier |
chaîne | Non | pièce jointe.pdf | Nom du fichier joint (ex. facture.pdf). | |
mime |
chaîne | Non | application/pdf | Type MIME du fichier. | |
contenu_base64 |
chaîne | Non | Contenu PDF sous forme de chaîne Base64. Accepte le format URI des données. | ||
URL du fichier |
chaîne | Non | URL HTTPS distante d'un PDF à télécharger et à joindre. | ||
déposer |
déposer | Non | Champ de téléchargement de fichier (multipart/form-data). |
Exemples de demandes
BOUCLE
BOUCLE
BOUCLE
curl -X POST "https://api.peppox.com/invoice_attach_pdf/add/" \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "invoice_guid=inv-8c3b4a99-2025-10-17" \ -F "file=@invoice.pdf"
Réponses
Statut: 200 — Le fichier PDF a bien été joint à la facture.
JSON
{ "ok": true, "invoice_guid": "inv-8c3b4a99-2025-10-17", "doc_id": "DOC-1452", "filename": "invoice-2025-10.pdf", "mime": "application/pdf", "size_bytes": 184527 }
Statut: 400 — Paramètres invalides ou contenu manquant (absence de Base64, de fichier ou d'URL).
Statut: 401 — Clé API invalide ou expirée.
Statut: 404 — Facture introuvable.
Statut: 500 — Erreur interne du serveur ou de la base de données.
Génération XML
/xml/générer
• Méthodes :
POSTE
Générer un fichier XML UBL pour une facture ou un avoir
Combine l'en-tête, les lignes et le PDF joint (le cas échéant) de la facture/de l'avoir en un document XML UBL 3.0 conforme à Peppol. Renvoie le chemin local du fichier généré et met à jour le statut de la facture/de l'avoir à XML_BUILT.
POSTE
/xml/générer
• Taux: 30 requêtes/min
• Authentification requise
Paramètres
| Nom | Dans | Taper | Requis | Défaut | Description |
|---|---|---|---|---|---|
clé API |
chaîne | Oui | Votre clé API Peppox pour l'authentification. | ||
GUID_facture |
chaîne | Oui | L'identifiant unique de la facture à convertir en XML. | ||
guide |
chaîne | Non | Clé alternative pour invoice_guid. |
Exemples de demandes
BOUCLE
PYTHON
curl -X POST "https://api.peppox.com/xml/generate/" \ -H "Authorization: Bearer VOTRE_CLÉ_API" \ -H "Content-Type: application/json" \ -d "{ "invoice_guid": "inv-8c3b4a99-2025-10-17" }"
Réponses
Statut: 200 — Le fichier XML a été généré et enregistré avec succès sur le serveur.
JSON
{ "ok": true, "status": "XML_BUILT", "xml_path": "/var/www/vhosts/peppox.com/httpdocs/invoices_xml/inv-8c3b4a99-2025-10-17.xml" }
Statut: 400 — Identifiant de facture (invoice_guid) ou lignes de facture manquants.
Statut: 401 — Clé API invalide ou expirée.
Statut: 404 — Facture introuvable.
Statut: 500 — Erreur interne de génération ou d'écriture XML.
Notes de crédit
/note de crédit/ajouter
• Méthodes :
POSTE
Ajouter un en-tête de note de crédit
Crée un nouvel en-tête d'avoir au statut BROUILLON. Les données du fournisseur sont automatiquement chargées à partir du compte de clé API, tandis que les champs client, paiement et livraison sont extraits de la requête.
POSTE
/note de crédit/ajouter
• Taux: 60 requêtes/min
• Authentification requise
Paramètres
| Nom | Dans | Taper | Requis | Défaut | Description |
|---|---|---|---|---|---|
clé API |
chaîne | Oui | Votre clé API Peppox. | ||
réseau |
chaîne | Non | Identifiant réseau facultatif. | ||
id_note_de_crédit |
chaîne | Non | Numéro/identifiant de note de crédit préféré. | ||
cn_id |
chaîne | Non | Alias alternatif pour l'identifiant de l'avoir. | ||
id_note_de_crédit |
chaîne | Non | Alias alternatif pour l'identifiant de l'avoir. | ||
inv_id |
chaîne | Non | Identifiant alternatif hérité. | ||
date d'émission |
chaîne | Oui | Date d'émission de l'avoir (AAAA-MM-JJ). | ||
date_d'échéance |
chaîne | Non | Date d'échéance (AAAA-MM-JJ). | ||
code_type_de_facture |
chaîne | Non | 381 | Code du type de document. Valeur par défaut : 381 = Note de crédit. | |
devise |
chaîne | Non | EUR | Code ISO de la devise. | |
coût comptable |
chaîne | Non | Référence comptable interne. | ||
référence_acheteur |
chaîne | Non | Référence acheteur / référence de commande client. | ||
paiement.code_de_signification |
chaîne | Non | 1 | Le paiement signifie le code. | |
paiement.identifiant_de_paiement |
chaîne | Non | Référence de paiement. | ||
paiement.iban |
chaîne | Non | IBAN du bénéficiaire. | ||
nom_du_compte_de_paiement |
chaîne | Non | Nom du compte du bénéficiaire. | ||
paiement.bic |
chaîne | Non | Bénéficiaire BIC / SWIFT. | ||
conditions de paiement |
chaîne | Non | Note sur les conditions de paiement. | ||
la date de livraison |
chaîne | Non | La date de livraison. | ||
schéma de localisation de livraison |
chaîne | Non | 0088 | Schéma de localisation des livraisons. | |
livraison.location_id |
chaîne | Non | Identifiant du lieu de livraison. | ||
livraison.rue |
chaîne | Non | Rue de livraison. | ||
livraison.ville |
chaîne | Non | Ville de livraison. | ||
livraison.postale |
chaîne | Non | Code postal de livraison. | ||
pays de livraison |
chaîne | Non | Code du pays de livraison. | ||
nom_partie_livraison |
chaîne | Non | Nom du livreur. | ||
fournisseur.endpoint_scheme |
chaîne | Non | 0208 | Schéma du point de terminaison fournisseur. Les valeurs du fournisseur sont sinon chargées à partir du compte API. | |
client.schéma_point_de_terminaison |
chaîne | Non | 0208 | Schéma du point de terminaison client. | |
client.endpoint_id |
chaîne | Non | ID du point de terminaison client. | ||
nom du client |
chaîne | Non | Nom légal du client. | ||
rue du client |
chaîne | Non | Rue du client. | ||
client.ville |
chaîne | Non | Ville du client. | ||
client.postal |
chaîne | Non | Code postal du client. | ||
client.pays |
chaîne | Non | Code pays du client. | ||
client.identifiant_de_télécommande |
chaîne | Non | Numéro de TVA du client. | ||
schéma d'identifiant de l'entreprise client |
chaîne | Non | 0208 | Système d'identification des entreprises clientes. | |
client.entreprise_id |
chaîne | Non | Identifiant de l'entreprise cliente. | ||
téléphone du client |
chaîne | Non | Téléphone du client. | ||
email client |
chaîne | Non | Courriel du client. |
Exemples de demandes
BOUCLE
PYTHON
curl -X POST "https://api.peppox.com/creditnote/add/" -H "Authorization: Bearer VOTRE_CLÉ_API" -H "Content-Type: application/json" -d "{ "creditnote_id": "CN-2025-001", "issue_date": "2025-10-17", "currency": "EUR", "customer": { "endpoint_id": "9915:BE0123456789", "name": "ACME SPRL", "country": "BE" } }"
Réponses
Statut: 200 — Note de crédit créée avec succès.
JSON
{ "ok": true, "invoice_guid": "cn-8c3b4a99-2025-10-17", "document_type": "CREDIT_NOTE", "status": "DRAFT" }
Statut: 400 — Champs invalides ou manquants.
Statut: 401 — Clé API invalide ou expirée.
Statut: 500 — Erreur interne du serveur ou de la base de données.
/ligne_de_crédit/ajouter
• Méthodes :
POSTE
Ajouter une ligne de crédit
Ajoute une ligne à une note de crédit existante. Accepte automatiquement les alias pour creditnote_guid et calcule tax_category à partir de tax_percent lorsque cela est possible.
POSTE
/ligne_de_crédit/ajouter
• Taux: 60 requêtes/min
• Authentification requise
Paramètres
| Nom | Dans | Taper | Requis | Défaut | Description |
|---|---|---|---|---|---|
clé API |
chaîne | Oui | Votre clé API Peppox. | ||
note de crédit_guid |
chaîne | Oui | GUID de la note de crédit cible. | ||
GUID_facture |
chaîne | Non | Alias pour creditnote_guid. | ||
guide |
chaîne | Non | Alias pour creditnote_guid. | ||
identifiant_de_ligne |
chaîne | Non | Identifiant de ligne interne facultatif. | ||
identifiant de ligne de commande |
chaîne | Non | Alias pour line_id. | ||
quantité |
nombre | Oui | Quantité de lignes. | ||
quantité |
nombre | Non | Alias pour quantité. | ||
q |
nombre | Non | Alias pour quantité. | ||
code_unité |
chaîne | Non | Code de l'unité. | ||
unité |
chaîne | Non | Alias pour unit_code. | ||
vous |
chaîne | Non | Alias pour unit_code. | ||
prix_montant |
nombre | Oui | Prix unitaire. | ||
prix |
nombre | Non | Alias pour price_amount. | ||
prix unitaire |
nombre | Non | Alias pour price_amount. | ||
description de l'article |
chaîne | Non | Description de la ligne. | ||
description |
chaîne | Non | Alias pour item_description. | ||
desc |
chaîne | Non | Alias pour item_description. | ||
nom_de_l'article |
chaîne | Non | Nom/titre de l'article. | ||
nom |
chaîne | Non | Alias pour item_name. | ||
titre |
chaîne | Non | Alias pour item_name. | ||
identifiant_article_vendeur |
chaîne | Non | Identifiant/SKU de l'article du vendeur. | ||
identifiant_vendeur |
chaîne | Non | Alias pour seller_item_id. | ||
référence |
chaîne | Non | Alias pour seller_item_id. | ||
schéma d'identifiant d'article standard |
chaîne | Non | 0088 | Système standard d'identification des articles. | |
schéma standard |
chaîne | Non | Alias pour std_item_id_scheme. | ||
schème |
chaîne | Non | Alias pour std_item_id_scheme. | ||
std_item_id |
chaîne | Non | Identifiant standard de l'article (EAN, GTIN, etc.). | ||
gtin |
chaîne | Non | Alias pour std_item_id. | ||
ean |
chaîne | Non | Alias pour std_item_id. | ||
pays d'origine |
chaîne | Non | Pays d'origine. | ||
pays |
chaîne | Non | Alias pour origin_country. | ||
catégorie_tax |
chaîne | Non | Code de catégorie de TVA. Forcé automatiquement en S ou Z selon le pourcentage de taxe. | ||
tax_cat |
chaîne | Non | Alias pour tax_category. | ||
catégorie_vat |
chaîne | Non | Alias pour tax_category. | ||
pourcentage d'impôt |
nombre | Non | Pourcentage de TVA. | ||
taux de TVA |
nombre | Non | Alias pour tax_percent. | ||
impôt |
nombre | Non | Alias pour tax_percent. | ||
T.V.A |
nombre | Non | Alias pour tax_percent. |
Exemples de demandes
BOUCLE
PYTHON
curl -X POST "https://api.peppox.com/creditnote_line/add/" -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d "{ "creditnote_guid": "cn-8c3b4a99-2025-10-17", "quantity": 2, "unit_code": "H87", "price_amount": 49.99, "item_name": "Service de conseil retourné", "tax_percent": 21 }"
Réponses
Statut: 200 — Ligne de note de crédit ajoutée avec succès.
JSON
{ "ok": true, "line_guid": "line-2b4fa3c1-2025-10-17" }
Statut: 400 — Valeurs obligatoires manquantes telles que creditnote_guid, quantity ou price_amount.
Statut: 401 — Clé API invalide ou expirée.
Statut: 500 — Erreur interne de la base de données.
/creditnote_attach_pdf/ajouter
• Méthodes :
POSTE
Joindre un PDF à une note de crédit
Ajoute un document PDF à une note de crédit existante via un chargement multipart, une charge utile Base64 ou une URL distante. La pièce jointe précédente est remplacée.
POSTE
/creditnote_attach_pdf/ajouter
• Taux: 30 requêtes/min
• Authentification requise
Paramètres
| Nom | Dans | Taper | Requis | Défaut | Description |
|---|---|---|---|---|---|
clé API |
chaîne | Oui | Votre clé API Peppox. | ||
note de crédit_guid |
chaîne | Oui | Le GUID de la note de crédit auquel joindre le PDF. | ||
GUID_facture |
chaîne | Non | Alias pour creditnote_guid. | ||
guide |
chaîne | Non | Alias pour creditnote_guid. | ||
doc_id |
chaîne | Non | Identifiant de document facultatif. Par défaut : inv_id ou un UUID généré. | ||
nom de fichier |
chaîne | Non | pièce jointe.pdf | Nom du fichier joint. | |
mime |
chaîne | Non | application/pdf | Type MIME de la pièce jointe. | |
contenu_base64 |
chaîne | Non | Contenu PDF encodé en Base64. | ||
pdf_base64 |
chaîne | Non | Alias pour content_base64. | ||
URL du fichier |
chaîne | Non | URL HTTP/HTTPS du PDF à télécharger et à joindre. | ||
URL du PDF |
chaîne | Non | Alias pour file_url. | ||
déposer |
déposer | Non | Fichier téléchargé en plusieurs parties. |
Exemples de demandes
BOUCLE
BOUCLE
BOUCLE
curl -X POST "https://api.peppox.com/creditnote_attach_pdf/add/" -H "Authorization: Bearer YOUR_API_KEY" -F "creditnote_guid=cn-8c3b4a99-2025-10-17" -F "file=@creditnote.pdf"
Réponses
Statut: 200 — Le fichier PDF a été joint avec succès à l'avoir.
JSON
{ "ok": true, "creditnote_guid": "cn-8c3b4a99-2025-10-17", "doc_id": "CN-2025-001", "filename": "creditnote.pdf", "mime": "application/pdf", "size_bytes": 184527 }
Statut: 400 — Requête invalide : identifiant creditnote_guid manquant, Base64 invalide, URL invalide ou aucun contenu fourni.
Statut: 401 — Clé API invalide ou expirée.
Statut: 404 — Note de crédit introuvable.
Statut: 500 — Erreur interne de gestion de la base de données ou des fichiers.
Webhooks
Aucun webhook documenté.
SDK
Aucun SDK répertorié.
Catalogue d'erreurs
Aucune erreur définie.
Journal des modifications
Aucune sortie pour le moment.