Modifier une commande existante via Order Change : endpoint, flux et topics webhook.
Une commande doit-elle être modifiée après son envoi ? Avec un Order Change, l'acheteur peut modifier une commande existante, par exemple pour ajuster des quantités, ajouter des lignes de commande ou remplacer des articles. Les Order Changes font partie du profil Peppol Advanced Ordering.
Un Order Change est en fait un document UBL Order entièrement nouveau qui fait référence à la commande d'origine. Il remplace intégralement la commande précédente. Le fournisseur reçoit le document modifié et peut y répondre avec une Order Response (accepter, rejeter ou accepter sous conditions).
Le flux se déroule comme suit :
OrderChangeReceivedL'acheteur envoie un Order Change en uploadant un nouveau document UBL Order via l'endpoint standard :
POST /api/v1/{partyId}/purchaseOrder/send
Le document contient une référence à la commande d'origine dans l'élément OrderReference du fichier UBL. Le PSB reconnaît automatiquement qu'il s'agit d'une modification.
Configurez un webhook sur le topic OrderChangeReceived :
{
"action": "https://jouw-endpoint.nl/order-changes",
"topics": ["OrderChangeReceived"],
"secret": "jouw-geheime-sleutel"
}
Téléchargez ensuite le document modifié via :
GET /api/v1/{partyId}/salesOrder/{documentId}/download
Conseil : comparez le document reçu avec la commande d'origine pour déterminer ce qui a changé. Le PSB n'offre pas de fonction de comparaison ; votre système doit détecter les modifications lui-même.
OrderChangeSentOrderChangeReceivedOrderResponseReceivedEn tant que fournisseur, vous répondez à un Order Change via l'endpoint Order Response, exactement comme pour une commande standard. Les codes de statut disponibles sont les mêmes : AB (reçu), AP (accepté), CA (accepté sous conditions) et RE (rejeté).
Vous envoyez la commande UBL modifiée via le même endpoint qu'une nouvelle commande : POST /api/v1/{partyId}/purchaseOrder/send. Dans le document UBL, vous placez la référence à la commande originale dans l'élément OrderReference. Le PSB reconnaît ainsi qu'il s'agit d'une modification.
Oui. Un Order Change est un document UBL Order entièrement nouveau qui fait référence à la commande originale et remplace la version précédente. Le fournisseur télécharge le document et doit déterminer lui-même les différences avec le document précédent ; le PSB ne propose pas de fonction de comparaison.
Configurez un webhook sur OrderChangeReceived, téléchargez via GET /api/v1/{partyId}/salesOrder/{documentId}/download et comparez avec la commande précédente. Répondez ensuite avec une Order Response (AB, AP, CA ou RE). L'acheteur suit la progression via, entre autres, OrderChangeSent et OrderResponseReceived.
Consultez la spécification API complète sur psb.econnect.eu pour la structure UBL exacte d'un Order Change.
Consulter la documentation API