Modificar un pedido existente mediante Order Change: endpoint, flujo y topics webhook.
¿Necesita modificar un pedido después de enviarlo? Con un Order Change, el comprador puede modificar un pedido existente, por ejemplo para ajustar cantidades, agregar líneas de pedido o reemplazar artículos. Los Order Changes forman parte del perfil Peppol Advanced Ordering.
Un Order Change es en realidad un documento UBL Order completamente nuevo que hace referencia al pedido original. Reemplaza íntegramente el pedido anterior. El proveedor recibe el documento modificado y puede responder con una Order Response (aceptar, rechazar o aceptar condicionalmente).
El flujo es el siguiente:
OrderChangeReceivedEl comprador envía un Order Change cargando un nuevo documento UBL Order a través del endpoint estándar:
POST /api/v1/{partyId}/purchaseOrder/send
El documento contiene una referencia al pedido original en el elemento OrderReference del archivo UBL. El PSB reconoce automáticamente que se trata de una modificación.
Configure un webhook en el topic OrderChangeReceived:
{
"action": "https://jouw-endpoint.nl/order-changes",
"topics": ["OrderChangeReceived"],
"secret": "jouw-geheime-sleutel"
}
Luego descargue el documento modificado a través de:
GET /api/v1/{partyId}/salesOrder/{documentId}/download
Consejo: compare el documento recibido con el pedido original para determinar qué ha cambiado. El PSB no ofrece una función de comparación; su sistema debe detectar las modificaciones por sí mismo.
OrderChangeSentOrderChangeReceivedOrderResponseReceivedComo proveedor, responde a un Order Change a través del endpoint Order Response, exactamente como para un pedido estándar. Los códigos de estado disponibles son los mismos: AB (recibido), AP (aceptado), CA (aceptado condicionalmente) y RE (rechazado).
Envíe el pedido UBL modificado a través del mismo endpoint que un nuevo pedido: POST /api/v1/{partyId}/purchaseOrder/send. En el documento UBL, coloque la referencia al pedido original en el elemento OrderReference. El PSB reconoce así que se trata de una modificación.
Sí. Un Order Change es un documento UBL Order completamente nuevo que hace referencia al pedido original y reemplaza la versión anterior. El proveedor descarga el documento y debe determinar las diferencias con el documento anterior por su cuenta; el PSB no ofrece una función de comparación.
Configure un webhook en OrderChangeReceived, descargue mediante GET /api/v1/{partyId}/salesOrder/{documentId}/download y compare con el pedido anterior. Luego responda con una Order Response (AB, AP, CA o RE). El comprador sigue el progreso a través de, entre otros, OrderChangeSent y OrderResponseReceived.
Consulte la especificación API completa en psb.econnect.eu para la estructura UBL exacta de un Order Change.
Consultar la documentación API