curl -X POST "https://beta.api-iobot-desarrollo.com/catalogs/orders/products/new" \
-H "Content-Type: application/json" \
-H "x-api-key: TU_APP_KEY" \
-d '{
"orderId": 272992,
"articleId": 1834,
"quantity": 2,
"extras": []
}'
curl -X POST "https://beta.api-iobot-desarrollo.com/catalogs/orders/products/new" \
-H "Content-Type: application/json" \
-H "x-api-key: TU_APP_KEY" \
-d '{
"orderId": 272992,
"articleId": 1834,
"quantity": 1,
"extras": [
{ "id": 12 },
{ "id": 57, "customPrice": 25.5, "picked": "queso extra" }
]
}'
Método: POST
URL: https://beta.api-iobot-desarrollo.com/catalogs/orders/products/new
Headers
Content-Type application/json
x-api-key TU_APP_KEY
Body (raw JSON)
{
"orderId": 272992,
"articleId": 1834,
"quantity": 1,
"extras": [
{ "id": 12 },
{ "id": 57, "customPrice": 25.5, "picked": "queso extra" }
]
}
{
"message": "Producto añadido a la orden"
}
{
"message": "Producto no encontrado"
}
{
"message": "Order no existe"
}
{
"message": "Invalid API key"
}
{
"message": "Algo salió mal"
}
Ordenes
Agregar Producto a una Orden
Agrega un producto (con extras opcionales) a una orden existente
POST
/
catalogs
/
orders
/
products
/
new
curl -X POST "https://beta.api-iobot-desarrollo.com/catalogs/orders/products/new" \
-H "Content-Type: application/json" \
-H "x-api-key: TU_APP_KEY" \
-d '{
"orderId": 272992,
"articleId": 1834,
"quantity": 2,
"extras": []
}'
curl -X POST "https://beta.api-iobot-desarrollo.com/catalogs/orders/products/new" \
-H "Content-Type: application/json" \
-H "x-api-key: TU_APP_KEY" \
-d '{
"orderId": 272992,
"articleId": 1834,
"quantity": 1,
"extras": [
{ "id": 12 },
{ "id": 57, "customPrice": 25.5, "picked": "queso extra" }
]
}'
Método: POST
URL: https://beta.api-iobot-desarrollo.com/catalogs/orders/products/new
Headers
Content-Type application/json
x-api-key TU_APP_KEY
Body (raw JSON)
{
"orderId": 272992,
"articleId": 1834,
"quantity": 1,
"extras": [
{ "id": 12 },
{ "id": 57, "customPrice": 25.5, "picked": "queso extra" }
]
}
{
"message": "Producto añadido a la orden"
}
{
"message": "Producto no encontrado"
}
{
"message": "Order no existe"
}
{
"message": "Invalid API key"
}
{
"message": "Algo salió mal"
}
Crea un detalle de orden (
OrderDetails) a partir de un producto del catálogo (ArticulosMeta) y lo asocia a una orden existente. Permite adjuntar extras del producto y, opcionalmente, un precio personalizado por extra. Notifica el cambio en tiempo real al canal correspondiente de la orden.
Autenticación
Requiere el encabezadox-api-key con el App Key del negocio. Consulta Autenticación.
Body
number
required
ID de la orden a la que se agregará el producto.
number
required
ID del producto (
ArticulosMeta) a agregar a la orden.number
default:"1"
Cantidad del producto a agregar.
object[]
required
Lista de extras del producto. Envía un arreglo vacío (
[]) si el producto no lleva extras.Comportamiento
- Valida que exista el producto (
articleId) y la orden (orderId); si alguno no existe, responde400. - Registra el evento
product_pickedenStatsWaEcommerce. - Determina el tipo del detalle de orden:
"delivery_coupon"si el producto es de tipofree_deliveryodelivery; de lo contrario"item". - Crea el
OrderDetailsconquantity(por defecto1),retailer_iddel producto y el tipo determinado. - Por cada elemento de
extras:- Registra el evento
extra_pickedenStatsWaEcommerce. - Si el extra existe en
ProductExtra, crea unOrderDetailsExtraasociado al detalle recién creado. - Si el extra trae
customPriceypicked, guarda un precio personalizado dentro deorder.extra_data(estructura versionada, indexada por orden y porextraId:orderDetailId) y guarda la orden.
- Registra el evento
- Emite un evento en tiempo real del cambio en la orden: usa el canal Soketi/Pusher para órdenes de tipo
app/web, y el canal estándar para el resto de tipos (p. ej.wa).
Respuesta
string
"Producto añadido a la orden" cuando el producto se agregó correctamente.curl -X POST "https://beta.api-iobot-desarrollo.com/catalogs/orders/products/new" \
-H "Content-Type: application/json" \
-H "x-api-key: TU_APP_KEY" \
-d '{
"orderId": 272992,
"articleId": 1834,
"quantity": 2,
"extras": []
}'
curl -X POST "https://beta.api-iobot-desarrollo.com/catalogs/orders/products/new" \
-H "Content-Type: application/json" \
-H "x-api-key: TU_APP_KEY" \
-d '{
"orderId": 272992,
"articleId": 1834,
"quantity": 1,
"extras": [
{ "id": 12 },
{ "id": 57, "customPrice": 25.5, "picked": "queso extra" }
]
}'
Método: POST
URL: https://beta.api-iobot-desarrollo.com/catalogs/orders/products/new
Headers
Content-Type application/json
x-api-key TU_APP_KEY
Body (raw JSON)
{
"orderId": 272992,
"articleId": 1834,
"quantity": 1,
"extras": [
{ "id": 12 },
{ "id": 57, "customPrice": 25.5, "picked": "queso extra" }
]
}
{
"message": "Producto añadido a la orden"
}
{
"message": "Producto no encontrado"
}
{
"message": "Order no existe"
}
{
"message": "Invalid API key"
}
{
"message": "Algo salió mal"
}

