PUT {{URL_BASE}}/orders/admin/bulk
Aplica a varias órdenes lo mismo que Modificación de órdenes hace sobre una: acepta tanto el contenido de cada orden como su estado y fecha de despacho.
Cada orden del lote se procesa de forma independiente: la respuesta trae un resultado por orden y el fallo de una no detiene a las demás.
<aside> 📝
Dentro de cada orden, el único campo obligatorio es id. Solo se modifica lo que venga en ella; el resto de la orden queda intacto. Cualquier otro campo enviado se ignora.
</aside>
| Campo | Tipo | Carácter | Descripción | Ejemplos |
|---|---|---|---|---|
data |
🔡 Lista de Objetos → Orden | 🟢 Requerido | Entre 1 y 500 órdenes. Ver detalle abajo. |
No se admiten otros campos en el nivel superior del cuerpo de la solicitud.
Cada registro de data.
| Campo | Tipo | Carácter | Descripción | Ejemplos |
|---|---|---|---|---|
id |
📝 Texto | 🟢 Requerido | Identificador de la orden a modificar. Acepta el _id de YOM o el orderId del ERP del cliente. |
|
| No acepta el número de orden.* | "66f0a1b2c3d4e5f6a7b8c9d0" |
|||
products |
🔡 Lista de Objetos | ⚪ Opcional | Líneas de la orden. Admite los mismos dos formatos que el endpoint de una sola orden. | |
sellerDiscounts |
🔡 Lista de Objetos | ⚪ Opcional | Descuentos aplicados por el Vendedor. | |
shippingAddress |
📝 Objeto | ⚪ Opcional | Dirección de despacho de la orden. | |
observation |
📝 Texto | ⚪ Opcional | Observación de la orden. | "Entregar por la mañana" |
externalPurchaseOrderId |
📝 Texto | ⚪ Opcional | Orden de compra en el sistema del cliente. | "OC-88231" |
type |
📝 Texto | ⚪ Opcional | Tipo de orden. | |
"order" → pedido |
||||
"quote" → cotización |
"order" |
|||
distributionCenterId |
🆔 ObjectId | ⚪ Opcional | Centro de distribución de la orden. | |
*\*Acepta *null para dejarlo sin asignar. |
"650a1b2c3d4e5f6a7b8c9d99" |
|||
distributionCenterName |
📝 Texto | ⚪ Opcional | Nombre del Centro de distribución. | |
*\*Acepta *null para dejarlo sin asignar. |
"CD Santiago" |
|||
status |
📝 Texto | ⚪ Opcional | Nuevo estado de la orden. Ver valores válidos más abajo. | "shipped" |
externalStatus |
📝 Objeto | ⚪ Opcional | Estado externo de la orden, solo de visualización. Lleva un único campo key, que debe coincidir con uno de los estados configurados para el cliente. Ver estado externo más abajo. |
{ "key": "en_bodega" } |
estimatedDeliverAt |
📅 Fecha | ⚪ Opcional | Fecha de despacho, en formato ISO 8601. | |
| *\Una fecha inválida se ignora y se conserva la anterior. | "2030-01-15T00:00:00.000Z" |
|||
orderId |
📝 Texto | ⚪ Opcional | Identificador de la orden en el ERP del cliente. | |
*\*Si la orden se identificó por su folio ERP en *id, este campo solo puede repetir ese mismo valor. |
"ERP-99812" |
|||
orderCode |
📝 Texto | ⚪ Opcional | Código de la orden. | "COD-4471" |
integrationErrorDetails |
📝 Texto | ⚪ Opcional | Detalle del error de integración. | "Timeout al conectar con el ERP" |
Cuando una orden trae campos de estado, primero se aplican sus cambios de contenido y se recalculan los totales, y después se ejecuta la transición de estado — así las notificaciones y el envío al ERP ven la orden ya en su forma final.
Además del status, cada orden puede llevar un estado externo propio del cliente: una etiqueta con su nombre y su color, que YOM muestra tal cual en el portal B2B, el panel de administración y la aplicación móvil. Es solo de visualización: no reemplaza al status ni lo modifica, y cambiarlo no dispara envíos al ERP, correos, notificaciones ni movimientos de crédito.
Se envía como un objeto con un único campo key, y puede ir solo, sin status. La key debe coincidir con uno de los estados externos configurados para el cliente.
<aside> ⚠️
</aside>
YOM registra por cuáles estados externos fue pasando cada orden, y esa secuencia es la que dibuja el seguimiento del pedido en el portal B2B. Ese historial lo mantiene YOM: no se envía en la solicitud. Enviar la misma key que la orden ya tiene no produce ningún cambio.
status| --- | --- |
PUT {{URL_BASE}}/orders/admin/bulk
{
"data": [
{
"id": "66f0a1b2c3d4e5f6a7b8c9d0",
"status": "shipped",
"estimatedDeliverAt": "2030-01-15T00:00:00.000Z"
},
{
"id": "ERP-99812",
"products": [
{ "productId": "650a1b2c3d4e5f6a7b8c9d01", "quantity": 8 }
]
},
{
"id": "66f0a1b2c3d4e5f6a7b8c9d2",
"observation": "Entregar por la mañana",
"status": "delivered"
},
{
"id": "66f0a1b2c3d4e5f6a7b8c9d3",
"externalStatus": { "key": "en_bodega" }
}
]
}