Modificare un ordine esistente tramite Order Change: endpoint, flusso e topic webhook.
È necessario modificare un ordine dopo l'invio? Con un Order Change l'acquirente può modificare un ordine esistente, ad esempio per aggiornare le quantità, aggiungere righe d'ordine o sostituire articoli. Gli Order Change fanno parte del profilo Peppol Advanced Ordering.
Un Order Change è essenzialmente un nuovo documento UBL Order completo che fa riferimento all'ordine originale. Sostituisce completamente l'ordine precedente. Il fornitore riceve il documento modificato e può rispondere con un Order Response (accettare, rifiutare o accettare condizionalmente).
Il flusso è il seguente:
OrderChangeReceivedL'acquirente invia un Order Change caricando un nuovo documento UBL Order tramite l'endpoint regolare:
POST /api/v1/{partyId}/purchaseOrder/send
Il documento contiene un riferimento all'ordine originale nell'elemento OrderReference del file UBL. La PSB riconosce automaticamente che si tratta di una modifica.
Configuri un webhook sul topic OrderChangeReceived:
{
"action": "https://jouw-endpoint.nl/order-changes",
"topics": ["OrderChangeReceived"],
"secret": "jouw-geheime-sleutel"
}
Scarichi poi il documento modificato tramite:
GET /api/v1/{partyId}/salesOrder/{documentId}/download
Suggerimento: confronti il documento ricevuto con l'ordine originale per determinare cosa è stato modificato. La PSB non offre una funzione diff; il Suo sistema deve rilevare le modifiche autonomamente.
OrderChangeSentOrderChangeReceivedOrderResponseReceivedCome fornitore si risponde a un Order Change tramite l'endpoint Order Response, esattamente come per un ordine regolare. I codici di stato disponibili sono gli stessi: AB (ricevuto), AP (accettato), CA (accettato condizionalmente) e RE (rifiutato).
Invii l'ordine UBL modificato tramite lo stesso endpoint di un nuovo ordine: POST /api/v1/{partyId}/purchaseOrder/send. Nel documento UBL, inserisca il riferimento all'ordine originale nell'elemento OrderReference. La PSB riconosce così che si tratta di una modifica.
Sì. Un Order Change è un documento UBL Order completamente nuovo che fa riferimento all'ordine originale e sostituisce la versione precedente. Il fornitore scarica il documento e deve determinare autonomamente le differenze con il documento precedente; la PSB non offre una funzione di confronto.
Configuri un webhook su OrderChangeReceived, scarichi tramite GET /api/v1/{partyId}/salesOrder/{documentId}/download e confronti con l'ordine precedente. Risponda poi con una Order Response (AB, AP, CA o RE). L'acquirente segue l'avanzamento tramite, tra gli altri, OrderChangeSent e OrderResponseReceived.
Consulti la specifica API completa su psb.econnect.eu per l'esatta struttura UBL di un Order Change.
Consulti la documentazione API