API - Estoque
Endpoints
GET /t/:slug/inventory
Lista todos os itens do estoque.
Response:
json
[
{
"_id": "...",
"name": "Filé Mignon",
"sku": "CAR-001",
"currentStock": 15,
"minStock": 5,
"unit": "kg",
"cost": 4500,
"status": "active"
}
]POST /t/:slug/inventory
Cria um novo item.
Body:
json
{
"name": "Picanha",
"sku": "CAR-002",
"currentStock": 10,
"minStock": 3,
"unit": "kg",
"cost": 5500
}PUT /t/:slug/inventory/:id
Atualiza um item.
DELETE /t/:slug/inventory/:id
Remove um item.
Movimentações
POST /t/:slug/inventory/:id/movements
Registra uma movimentação.
Body:
json
{
"type": "entry",
"quantity": 5,
"reason": "Compra fornecedor"
}Tipos de Movimentação
| Tipo | Descrição |
|---|---|
entry | Entrada (compra, importação NFS) |
exit | Saída (venda, perda) |
adjustment | Ajuste de inventário |
transfer | Transferência entre filiais |
reservation | Reserva interna |
Motivos de Movimentação
| Motivo | Descrição |
|---|---|
purchase | Compra de fornecedor |
sale | Venda (dedução automática) |
transfer | Transferência |
adjustment | Ajuste manual |
production | Produção interna |
loss | Perda |
theft | Furto |
expiration | Vencimento |
return | Devolução |
POST /t/:slug/inventory/import-nfs
Importa uma NF-e XML de fornecedor e cria/atualiza itens de estoque.
Content-Type: multipart/form-data
| Campo | Tipo | Descrição |
|---|---|---|
file | File | Arquivo XML da NF-e (.xml) |
Response 201:
json
{
"success": true,
"nfeNumber": "42",
"nfeKey": "35260312345678000195550010000000421234567890",
"emitter": "FORNECEDOR LTDA",
"totalItems": 12,
"created": 3,
"updated": 9,
"movements": 12,
"skipped": 0,
"errors": []
}Requer: role admin ou superadmin
GET /t/:slug/inventory/expiration-alerts
Retorna itens com validade vencida ou próxima.
Response 200:
json
{
"expiredItems": [
{
"_id": "...",
"name": "Leite Integral",
"sku": "LAT-001",
"expirationDate": "2026-02-28T00:00:00.000Z",
"availableQuantity": 5,
"unit": "l"
}
],
"expiringIn7": [...],
"expiringIn30": [...]
}Requer: role admin, staff ou superadmin