Cambiar el estado de un pedido

Este endpoint permite actualizar el estado de un pedido específico, incluyendo la posibilidad de especificar un transportista y los ítems particulares del pedido que se están actualizando.

Endpoint:

PUT https://api.tp.yuju.io/orders/status

CamposDescripciónRequerido?
id_orderID del pedido a actualizar.
id_channelID del canal por el que se realiza la actualización del pedido.
statusNuevo estado del pedido. Puede ser ready_to_ship, shipped, delivered, o canceled.
carrierNombre del transportista (opcional). Si no se proporciona, se utiliza el transportista predeterminado.
id_itemsArreglo de IDs de los ítems específicos a actualizar dentro del pedido (opcional). Si no se proporciona, se actualizan todos los ítems del pedido.
{
    "id_order": "12345",
    "id_channel": 4308,
    "status": "ready_to_ship",
    "carrier": "test",  // Opcional
    "id_items": ["sku1"] // Opcional
}

📘

Posibles estados

El campo status acepta los siguientes valores:

  • ready_to_ship -> Pedido confirmado
  • shipped -> Pedido enviado
  • delivered -> Pedido entregado
  • canceled -> Pedido cancelado

Respuestas

Código 200:

Cuando la actualización se realiza con éxito, el servidor responde con:

{
    "ok": 1,
    "message": "ok"
}

Código 400:

Si ocurre un error debido a una solicitud malformada, el servidor devuelve:

{
  "message": "Mensaje de error específico."
}

Ejemplos de Uso

Actualización exitosa:

Para actualizar el estado de un pedido a shipped para el pedido con ID 12345, se realizaría una solicitud PUT a https://api.empresa.io/orders/status con el siguiente cuerpo:

{
    "id_order": "12345",
    "id_channel": 4308,
    "status": "shipped"
}

Respuesta a solicitud exitosa:

{
    "ok": 1,
    "message": "ok"
}

Ejemplo de error:

Si se intenta actualizar un pedido sin especificar el id_order, se recibiría la siguiente respuesta:

{
  "message": "El campo id_order es requerido."
}

🚧

Límite

Este endpoint está sujeto a un límite general de 2 peticiones por segundo.