Pular para o conteúdo principal

Obtém relatório financeiro do estabelecimento.

GET /api/{userId}/establishment/{establishmentId}/reports/financial

Parâmetros de rota

NomeTipoDescrição
userIdnumberIdentificador do usuário
establishmentIdnumberIdentificador do estabelecimento

Requisição

  • Método: GET
  • Path: /api/\{userId\}/establishment/\{establishmentId\}/reports/financial
  • Headers: Authorization, Accept: application/json
  • Autorização: informe o userId do token na URL e envie o token no header Authorization: Bearer <YOUR_API_TOKEN> (gerados no painel de API do Site Admin).

Parâmetros de consulta (query string)

NomeTipoDescrição
startDatestring (YYYY-MM-DD)Data inicial do período.
endDatestring (YYYY-MM-DD)Data final do período.
startTimestring (HH:MM:SS)Hora inicial. Padrão: 00:00:00.
endTimestring (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 retorna null.
  • cashFlow agrega transações confirmadas/pagas (situationId em 2 ou 3) das categorias operacionais, retornando totais de entrada (entry), saída (exit) e saldo (balance).
  • invoices.content.paidOut consolida apenas faturas que possuem transação vinculada e estão pagas.
  • exitCategory.totalAmount é negativo porque agrega despesas; entryCategory.totalAmount é positivo (receitas).
  • reservations está reservado para futuras integrações e atualmente retorna null.