Pular para o conteúdo principal

Lista faturas do cliente

GET /api/{userId}/establishment/{establishmentId}/clients/{clientId}/invoices

Retorna as faturas ativas do cliente, ordenadas por vencimento (dueDateTime asc).

Parâmetros de rota

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

Requisição

  • Método: GET
  • Path: /api/\{userId\}/establishment/\{establishmentId\}/clients/\{clientId\}/invoices
  • Headers: Authorization, Accept: application/json

Formato da resposta (JSON)

  • Sucesso (HTTP 200): { "response": "success", "data": <payload> }
  • Erro (HTTP 400): { "response": "error", "data": { "msg": "...", "code": "..." } }
  • Não autorizado / permissão: Autorização

Objeto data.client

CampoTipoDescrição
clientIdstringIdentificador do cliente
clientNamestringNome
clientTypeIdnumberTipo de cliente

Array data.invoices

CampoTipoDescrição
establishmentIdnumberEstabelecimento (interno)
clientIdstringCliente
invoiceDateTimestringChave da fatura (usar nas rotas de visualização e ações)
registerDateTimestringData/hora de registro
closingDateTimestringData/hora de fechamento (regra interna para “aberta/fechada”)
dateTimeSequencestringSequência usada internamente para recorrência/ordenação
dueDateTimestringVencimento
paymentDateTimestring / nullPagamento (quando pago)
amountnumberValor base
closingAmountnumberAjustes/taxa (quando aplicável)
transactionsarrayLançamentos associados (decodificados de JSON; pode vir vazio)
transactionIdstring / nullTransação de pagamento vinculada
serviceContractIdstring / nullContrato de pacote de serviço (quando aplicável)
observationsstring / nullObservações
situationIdnumberSituação
statusnumberStatus do registro

Campos calculados:

CampoTipoDescrição
amountReceivednumberValor recebido quando existe transactionId; senão 0
openednumber1 se a fatura é considerada “aberta” pela regra de closingDateTime, senão 0

Nuâncias

  • A lista considera somente registros ativos (status = 1).
  • transactions pode vir como [] quando não há itens, e como lista quando há JSON no banco.
  • O campo opened é uma convenção útil para clientes pós pago (ver Visão geral de faturas).

Exemplo de resposta (JSON)

{
"response": "success",
"data": {
"client": {
"clientId": "448420250815093045",
"clientName": "Beatriz Nascimento",
"clientTypeId": 2
},
"invoices": [
{
"establishmentId": 4482,
"clientId": "448420250815093045",
"invoiceDateTime": "20250815093108",
"registerDateTime": "2025-08-15 09:31:08",
"closingDateTime": "2025-08-22 16:00:00",
"dateTimeSequence": "2025-08-22 16:00:00",
"dueDateTime": "2025-08-22 16:00:00",
"paymentDateTime": "2025-08-22 16:05:41",
"amount": 88.0,
"closingAmount": 5.5,
"transactions": [],
"transactionId": "44842025081509304591",
"serviceContractId": null,
"observations": null,
"situationId": 2,
"status": 1,
"amountReceived": 93.5,
"opened": 0
}
]
}
}