Envoyer une Order Response

Envoyer une Order Response via l'API : codes de statut AB, AP, CA et RE pour les commandes reçues.

Lorsque vous recevez en tant que fournisseur une commande, une modification ou une annulation, vous renvoyez une Order Response pour informer l'acheteur de ce que vous faites avec la commande. L'Order Response est un élément central du profil Peppol Advanced Ordering.

Endpoint
POST /api/v1/{partyId}/salesOrder/{documentId}/response

Le {partyId} est l'identifiant Peppol du fournisseur. Le {documentId} est l'ID de la commande reçue à laquelle vous répondez.

Codes de statut

L'Order Response contient un code de statut indiquant ce que vous faites avec la commande :

CodeNomQuand utiliserABAcknowledgedVous avez reçu la commande et elle est lisible. Utilisez ceci comme confirmation intermédiaire pendant que vous évaluez encore la commande.APAcceptedVous acceptez la commande intégralement et allez l'exécuter.CAConditionally AcceptedVous acceptez la commande mais avec des modifications (par exemple délai de livraison ou quantités ajustés). Ajoutez les lignes de commande modifiées à la response.RERejectedVous rejetez la commande. L'acheteur doit soumettre une nouvelle commande si la commande doit tout de même être exécutée.

Conseil : vous pouvez envoyer plusieurs responses pour la même commande. Commencez par exemple avec AB (confirmation de réception) et envoyez plus tard AP (accepté) une fois la commande approuvée en interne.

Exemple de flux

Un scénario Advanced Ordering typique se présente comme suit :

  1. L'acheteur envoie une commande via POST /{partyId}/purchaseOrder/send
  2. Le fournisseur reçoit la commande via le webhook OrderReceived
  3. Le fournisseur télécharge la commande via GET /{partyId}/salesOrder/{documentId}/download
  4. Le fournisseur envoie une response AB (confirmation de réception)
  5. Le fournisseur évalue la commande en interne
  6. Le fournisseur envoie une response AP (commande acceptée)
  7. L'acheteur reçoit la response via le webhook OrderResponseReceived
Acceptation conditionnelle (CA)

Avec une response CA (Conditionally Accepted), vous indiquez que vous acceptez la commande mais avec des ajustements. La response contient alors une version modifiée des lignes de commande. L'acheteur peut décider sur cette base si la commande modifiée est acceptable.

Les raisons possibles d'une response CA incluent un délai de livraison ajusté, une quantité modifiée (stock limité) ou des articles de remplacement.

Topics webhook
TopicDirectionQuandOrderResponseSentFournisseurLa response a été envoyée avec succès à l'acheteurOrderResponseReceivedAcheteurLa response du fournisseur a été reçue
Corps de la requête

La response est envoyée sous forme de document XML UBL OrderResponse dans le body de la requête, avec le content-type application/xml. Le document doit contenir la référence correcte à la commande d'origine.

Consultez la documentation Swagger sur psb.econnect.eu pour la structure XML exacte et les champs obligatoires.

Questions fréquentes
Quand utiliser AB, AP, CA ou RE dans une Order Response ?

AB signifie que la commande a été reçue et est lisible, souvent comme étape intermédiaire. AP représente l'acceptation complète et l'exécution. CA est l'acceptation avec modifications ; vous ajoutez les lignes de commande ajustées. RE rejette la commande ; l'acheteur doit alors soumettre une nouvelle commande si l'achat doit aboutir.

Peut-on envoyer plusieurs Order Responses pour la même commande ?

Oui. Vous pouvez par exemple envoyer d'abord AB dès que vous avez intégré la commande, puis AP lorsque l'approbation interne est finalisée. Cela correspond à une chaîne Advanced Ordering typique avec le webhook OrderResponseReceived côté acheteur.

Comment appeler techniquement l'endpoint Order Response ?

Utilisez POST /api/v1/{partyId}/salesOrder/{documentId}/response avec {partyId} comme identifiant Peppol du fournisseur et {documentId} comme ID de la commande reçue. Le body est un XML UBL OrderResponse avec Content-Type: application/xml et la référence correcte à la commande originale.


Consultez la spécification API complète sur psb.econnect.eu pour les exemples de payloads et les messages d'erreur.

Ouvrir la référence API

Articles associés