Modificar un pedido (Order Change)

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.

¿Cómo funciona un Order Change?

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:

  1. El comprador envía un Order Change con una referencia al pedido original
  2. El proveedor recibe la modificación a través del webhook OrderChangeReceived
  3. El proveedor descarga el pedido modificado y lo compara con el original
  4. El proveedor envía una Order Response de vuelta (AB, AP, CA o RE)
Endpoint (comprador)

El 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.

Recibir como proveedor

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.

Topics webhook
TopicDirecciónCuándoOrderChangeSentCompradorLa modificación fue entregada con éxitoOrderChangeReceivedProveedorLa modificación fue recibidaOrderResponseReceivedCompradorEl proveedor ha respondido a la modificación
Responder a un Order Change

Como 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).

Preguntas frecuentes
¿Cómo reconoce el PSB que mi mensaje es un Order Change y no un pedido nuevo?

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.

¿Un Order Change reemplaza completamente el pedido anterior?

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.

¿Qué patrón de integración sigue el proveedor después de `OrderChangeReceived`?

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

Artículos relacionados