Restofy Docs
Producción de insumos POST

Registrar producción

POST /api/production/create-production

Descripción

Registra lo que preparaste: descuenta los ingredientes y suma al inventario lo que salió.

Detalles

Toma la receta y lo que salió para calcular los ingredientes en proporción. Si el negocio lo permite, cambias cantidades o agregas ingredientes. Cada ingrediente sale de su bodega de consumo y lo producido entra a la suya. Frena si un ingrediente no alcanza, salvo que se permita stock negativo.

Permisos requeridos

inventory.production.create

Request

Nombre Tipo Requerido Reglas
productionRecipeUuid string Sí
min:36 max:36
outputQuantity string Sí
decimal min_value:0
notes string No
max:500
lines array Sí —
lines[].productionRecipeLineId int No
min_value:1
lines[].inventoryItemId int Sí
min_value:1
lines[].quantity string Sí
decimal min_value:0
lines[].unitId int Sí
min_value:1

Ejemplo de request

curl -X POST https://restofy.pro/api/production/create-production \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <accessToken>" \
  -d '{
    "productionRecipeUuid": "string",
    "outputQuantity": "string",
    "lines": [
        {
            "inventoryItemId": 1,
            "quantity": "string",
            "unitId": 1
        }
    ]
}'

Los valores son demo: reemplázalos por datos reales del negocio.

Ejemplo de respuesta

Actualizado: 2026-11-02T19:00:57Z
HTTP 200

Request

{
    "productionRecipeUuid": "e59a9fed-370c-4834-8ed0-0e8222a475f0",
    "outputQuantity": 1000,
    "notes": "Tanda de la mañana",
    "lines": [
        {
            "productionRecipeLineId": 1,
            "inventoryItemId": 27,
            "quantity": 600,
            "unitId": 2
        },
        {
            "productionRecipeLineId": 2,
            "inventoryItemId": 28,
            "quantity": 200,
            "unitId": 2
        }
    ]
}

Response

{
    "success": true,
    "message": "Producción registrada",
    "data": {
        "productionUuid": "b91c0658-ab44-42c6-8c24-20a82d4e4a02",
        "productionId": 1
    }
}