Obtém relatório financeiro do estabelecimento.
GET /api/{userId}/establishment/{establishmentId}/reports/financial
Parâmetros de rota
| Nome | Tipo | Descrição |
|---|---|---|
userId | number | Identificador do usuário |
establishmentId | number | Identificador do estabelecimento |
Requisição
- Método:
GET - Path:
/api/\{userId\}/establishment/\{establishmentId\}/reports/financial - Headers:
Authorization,Accept: application/json - Autorização: informe o
userIddo token na URL e envie o token no headerAuthorization: Bearer <YOUR_API_TOKEN>(gerados no painel de API do Site Admin).
Parâmetros de consulta (query string)
| Nome | Tipo | Descrição |
|---|---|---|
startDate | string (YYYY-MM-DD) | Data inicial do período. |
endDate | string (YYYY-MM-DD) | Data final do período. |
startTime | string (HH:MM:SS) | Hora inicial. Padrão: 00:00:00. |
endTime | string (HH:MM:SS) | Hora final. Padrão: 23:59:59. |
Resposta
- Status:
200 OK - Content-Type:
application/json
Exemplo de resposta
{
"response": "success",
"data": {
"cashFlow": {
"entry": 12840.50,
"exit": -4530.00,
"balance": 8310.50
},
"serviceOrders": {
"content": [
{ "typePrice": "Hora", "total": 180, "totalAmount": 4320.00 },
{ "typePrice": "Diária", "total": 34, "totalAmount": 2380.00 }
],
"total": 214,
"totalAmount": 6700.00
},
"invoices": {
"content": {
"paidOut": {
"total": 12,
"totalAmount": 5420.00
}
},
"total": 12,
"totalAmount": 5420.00
},
"services": {
"content": [
{
"description": "Lavagem simples",
"total": 42,
"totalAmount": 1470.00,
"serviceCategories": ["Lavagem"]
},
{
"description": "Lavagem completa",
"total": 28,
"totalAmount": 1960.00,
"serviceCategories": ["Lavagem", "Detalhamento"]
}
],
"total": 70,
"totalAmount": 3430.00
},
"discounts": {
"content": [
{ "description": "Ordem de Serviço", "total": 7, "totalAmount": 180.00 },
{ "description": "Pedido", "total": 2, "totalAmount": 40.00 }
],
"total": 9,
"totalAmount": 220.00
},
"products": {
"content": [
{
"storageProductUuid": "9f4c2a5b-2d8f-4c3a-a1e4-7c2b1a0e9f12",
"name": "Café 300ml",
"total": 3,
"totalAmount": 18.00
},
{
"storageProductUuid": "1a2b3c4d-5e6f-7a8b-9c0d-e1f2a3b4c5d6",
"name": "Água Mineral",
"total": 2,
"totalAmount": 12.00
}
],
"total": 5,
"totalAmount": 30.00
},
"paymentMethods": {
"content": [
{
"establishmentPaymentMethodId": 17,
"paymentMethodName": "Dinheiro",
"total": 120,
"totalAmount": 4500.00
},
{
"establishmentPaymentMethodId": 18,
"paymentMethodName": "Cartão de Crédito",
"total": 94,
"totalAmount": 8340.50
}
],
"total": 214,
"totalAmount": 12840.50
},
"exitCategory": {
"content": [
{ "categoryName": "Fornecedores", "totalAmount": -2300.00, "total": 12 },
{ "categoryName": "Manutenção", "totalAmount": -1230.00, "total": 4 }
],
"total": 16,
"totalAmount": -3530.00
},
"entryCategory": {
"content": [
{ "categoryName": "Estacionamento Rotativo", "totalAmount": 4320.00, "total": 180 },
{ "categoryName": "Mensalistas", "totalAmount": 8520.50, "total": 34 }
],
"total": 214,
"totalAmount": 12840.50
},
"reservations": null
}
}
Observações
- Todos os blocos de agregação (
serviceOrders,invoices,services,discounts,products,paymentMethods,exitCategory,entryCategory) seguem o mesmo padrão:{ content: [...], total, totalAmount }. Quando não há movimento no período, o bloco retornanull. cashFlowagrega transações confirmadas/pagas (situationIdem2ou3) das categorias operacionais, retornando totais de entrada (entry), saída (exit) e saldo (balance).invoices.content.paidOutconsolida apenas faturas que possuem transação vinculada e estão pagas.exitCategory.totalAmounté negativo porque agrega despesas;entryCategory.totalAmounté positivo (receitas).reservationsestá reservado para futuras integrações e atualmente retornanull.