Crear nuevos pedidos
Crea uno o múltiples pedidos para una mesa o grupo específico.
Autenticación requerida: Este endpoint requiere autenticación Bearer Token. Usar el campo tokenCurrent obtenido del servicio de login (/login) en el header: Authorization: Bearer {tokenCurrent}
Proceso de creación:
- Los pedidos se agrupan automáticamente por mesa/grupo
- Se calculan totales incluyendo productos extras
- Se actualiza inventario según configuración
- Se notifica via WebSocket para actualizaciones en tiempo real
Limitaciones plan extracción: Los negocios en plan de extracción no pueden crear nuevos pedidos.
Descuentos: Puedes aplicar un descuento manual a nivel de pedido con discountPercentage (porcentaje, 0-100) o discountAmount (monto fijo). Los descuentos por promoción se aplican a nivel de producto mediante el objeto promo de cada ítem. El descuento monetario definitivo (incluyendo impuestos) se calcula al facturar el pedido (ver POST /invoices).
Ejemplos de Uso
1. Pedido simple para mesa
{
"table": "507f1f77bcf86cd799439014",
"group": "507f1f77bcf86cd799439015",
"groupName": "Mesa 5 - Orden 1",
"orders": [
{
"product": "507f1f77bcf86cd799439013",
"quantity": 2,
"unit_price": 15000,
"notes": ["Sin cebolla", "Extra queso"]
}
]
}
2. Pedido con productos extras
{
"table": "507f1f77bcf86cd799439014",
"group": "507f1f77bcf86cd799439015",
"groupName": "Mesa 5 - Orden 2",
"orders": [
{
"product": "507f1f77bcf86cd799439013",
"quantity": 1,
"unit_price": 15000,
"productsExtra": [
{
"product": "507f1f77bcf86cd799439020",
"quantity": 1,
"price": 3000
}
]
}
]
}
3. Pedido cortesía (gratuito)
{
"table": "507f1f77bcf86cd799439014",
"group": "507f1f77bcf86cd799439015",
"groupName": "Mesa 5 - Cortesía",
"orders": [
{
"product": "507f1f77bcf86cd799439013",
"quantity": 1,
"complementary": {
"isComplementary": true,
"note": "Cortesía del chef"
}
}
]
}
4. Pedido para entrega (sin mesa)
{
"group": "507f1f77bcf86cd799439015",
"groupName": "Entrega - Cliente Juan",
"seller": "507f1f77bcf86cd799439016",
"orders": [
{
"product": "507f1f77bcf86cd799439013",
"quantity": 1,
"delivery": {
"isDelivery": true,
"deliveryProvider": "507f1f77bcf86cd799439017"
}
}
]
}
5. Múltiples pedidos en una sola petición
{
"table": "507f1f77bcf86cd799439014",
"group": "507f1f77bcf86cd799439015",
"groupName": "Mesa 8 - Familia González",
"orders": [
{
"product": "507f1f77bcf86cd799439013",
"quantity": 2,
"unit_price": 15000,
"notes": ["Término medio", "Sin mostaza"]
},
{
"product": "507f1f77bcf86cd799439021",
"quantity": 3,
"unit_price": 8000,
"notes": ["Extra hielo"]
},
{
"product": "507f1f77bcf86cd799439022",
"quantity": 1,
"unit_price": 12000,
"productsExtra": [
{
"product": "507f1f77bcf86cd799439023",
"quantity": 2,
"price": 2000
}
]
},
{
"product": "507f1f77bcf86cd799439024",
"quantity": 1,
"complementary": {
"isComplementary": true,
"note": "Postre de cumpleaños"
}
}
]
}
Request
- Base URLhttps://api.pirpos.com
- URLhttps://api.pirpos.com/orders
- AuthHTTP bearer
Request body
Example request
{
"table": "507f1f77bcf86cd799439014",
"group": "507f1f77bcf86cd799439015",
"groupName": "Mesa 5 - Orden 1",
"seller": "507f1f77bcf86cd799439016",
"discountPercentage": 10,
"discountAmount": 5000,
"orders": [
{
"product": "507f1f77bcf86cd799439013",
"quantity": 2,
"unit_price": 15000,
"notes": [
"Sin cebolla",
"Extra queso"
],
"productsExtra": [
{
"product": "507f1f77bcf86cd799439020",
"quantity": 1,
"price": 3000
}
],
"complementary": {
"note": "Cortesía del chef"
}
}
]
}Response
Pedidos creados exitosamente
Example response
[
{
"_id": "507f1f77bcf86cd799439011",
"business": "507f1f77bcf86cd799439012",
"product": {
"name": "Hamburguesa Clásica",
"price": 15000
},
"table": {
"name": "Mesa 5"
},
"deliveryProviderOrder": "507f1f77bcf86cd799439014",
"group": "507f1f77bcf86cd799439015",
"groupName": "Grupo Mesa 5",
"seller": {
"name": "Carlos",
"lastName": "Pérez",
"urlImage": "https://ejemplo.com/vendedor.jpg"
},
"notes": [
"Sin cebolla",
"Extra queso"
],
"causeCancel": "Cliente canceló",
"quantity": 2,
"unit_price": 15000,
"total": 30000,
"status": "Espera",
"statusKitchen": "Espera",
"productsExtra": [
{
"product": {
"name": "Papas fritas",
"price": 5000
},
"quantity": 1
}
],
"modifiedBy": {
"name": "Admin"
},
"createdOn": "2025-08-05T10:30:00.000Z",
"modifiedOn": "2025-08-05T10:30:00.000Z"
}
]Changes
No recorded changes to this operation across all 1 revision of this API.