URL OrderCancel

Cancelar el pedido especificado cambiando el estado de pedido, anulando las asignaciones de inventario y cancelando todos los artículos en espera. Este URL no elimina el pedido de la base de datos. OrderCancel puede cancelar pedidos con un estado de pedido A, B, C, I, L, M, N.

Estructura de URL

http:// host_name/ path/
El nombre completo de Transaction server y la vía de acceso de configuración.

Este diagrama muestra la estructura para el URL de OrderCancel.

Valores de parámetros

langId
Establece o restablece el idioma preferido durante el tiempo que dura la sesión; los idiomas soportados para una tienda se encuentran en la tabla STORELANG.
forUser
El ID de conexión del usuario en cuyo nombre se ejecutará el mandato. Este parámetro solo lo puede especificar una persona con autorización para procesar pedidos.
forUserId
Igual que forUser, pero identifica al usuario mediante el ID de usuario interno que aparece en la tabla USERS.
URL
Se necesita: El URL al que se llama cuando el mandato se completa satisfactoriamente.
storeId
La tienda asociada al pedido.
orderId
Se necesita: El número de referencia del pedido que se ha de cancelar.
forcedCancel
Opcional: Este parámetro se utiliza para cancelar un pedido que ha depositado el pago. Si hay transacciones de depósito para un pedido, el pedido solo se puede cancelar si el parámetro se establece en forcedCancel=true. El valor predeterminado es false.
forcedCancelWithRefund
Opcional: Este parámetro se utiliza para realizar el reembolso de pago durante la cancelación de un pedido. Los requisitos previos para este parámetro son:
  • Debe haber depositado transacciones de pago del pedido antes de que el pedido se haya cancelado.
  • El parámetro forcedCancel debe establecerse en true.
Si estos requisitos previos existen, el pago se reembolsará al método de pago original. El valor predeterminado del parámetro forcedCancelWithRefund es false.

Ejemplo

El ejemplo siguiente cancela el pedido que tiene el número de referencia 1 y muestra el carro de la compra.


    http://myhostname/webapp/wcs/stores/servlet/OrderCancel?
    orderId=1&URL=/webapp/commerce/InterestItemDisplay 

Comportamiento

  • Comprueba si el pedido existe y si su atributo de estado especifica A, B, C, I, L, M, N o W. Si no es así, devuelve un error.
  • Cancela el pedido especificado cambiando el estado del pedido por X.
  • Desasigna el inventario existente y esperado llamando al mandato de tarea AllocateInventory y especificando todos los artículos de pedido del pedido en el parámetro reverseOrderItems.
  • Cancela el pago.
  • Si hay una petición de aprobación de pedido pendiente para un comprador B2B, este URL la cancela.
  • Si el pedido tiene pagos depositados y el parámetro forcedCancel es true, el pedido se cancela y no se desencadena ninguna acción de reembolso de pago. Si el pedido tiene pagos depositados y los dos parámetros forcedCancel y forcedCancelWithRefund son true, el pedido se cancela y se realiza la acción de reembolso de pago.

Condiciones de excepción

Si el ID de pedido especificado no es válido o si el estado del pedido no es A, B, C, I, L, M, N o W, no se ejecuta el proceso y el mandato falla.