Documentation Index
Fetch the complete documentation index at: https://docs.useaira.com/llms.txt
Use this file to discover all available pages before exploring further.
A API pública permite criar faturas avulsas em etapas: criar o cabeçalho, montar grupos e linhas de cobrança, ajustar valores e submeter para revisão. Útil para cobranças pontuais, ajustes ou integrações que precisam montar a fatura programaticamente.
A edição via API só vale para faturas avulsas. Faturas geradas por ciclos de cobrança contratuais não podem ser modificadas dessa forma.
Fluxo
O fluxo é multi-etapa: cada passo retorna oid da entidade criada, que você usa no passo seguinte. Tudo continua editável até a fatura ser emitida manualmente no Dashboard ou cancelada.
Criar a fatura
POST /v1/invoices cria o cabeçalho da fatura em status open.id da fatura. Guarde esse valor como invoiceId para usar nos próximos passos.Campos importantes:customerIdouexternalCustomerId: informe exatamente um.paymentAccountId: opcional. Quando omitido, a Aira escolhe automaticamente uma conta de pagamento do cliente.invoiceDate: data de fechamento da fatura (fim do período coberto).idempotencyKey: chave única. Reusar a mesma chave retorna a fatura já existente.
Criar um grupo de linhas
Grupos agrupam linhas relacionadas ao mesmo produto. São úteis quando um produto é faturado em várias linhas, por exemplo Onboarding + Treinamento dentro de Serviços de Implantação.Guarde o
POST /v1/invoices/{invoiceId}/line-item-groupsid retornado como lineItemGroupId. O campo name é opcional. Quando omitido, o nome do produto é usado.Adicionar linhas ao grupo
Cada linha vincula um item do catálogo a um valor e um período. Faça uma chamada por linha.Repita para cada linha. Por exemplo, uma segunda chamada com
POST /v1/invoices/{invoiceId}/line-itemsitemId e idempotencyKey diferentes para Treinamento.Sobre os IDs:productIddeve ser o mesmo do grupo.itemIddeve ser um item válido do catálogo.nameé opcional. Quando omitido, usa o nome do item.
(Opcional) Detalhar consumo com sub-linhas
Para detalhar a composição do Em cada sub-linha,
amount da linha (por exemplo, consumo por faixa de preço), inclua subLineItems no payload do passo anterior:usage é a quantidade consumida e amount é o valor unitário. O valor parcial da sub-linha é usage * amount, e a soma dos parciais deve bater exatamente com o amount da linha. No exemplo acima: (10000 * 0.08) + (4000 * 0.12) = 1280.00.Marcar como Em revisão
Com a fatura montada, marque como Em revisão para que ela apareça na fila de aprovação interna no Dashboard.
POST /v1/invoices/{invoiceId}/in-reviewA partir daí, a revisão e a emissão para o cliente acontecem pelo Dashboard. Veja Ciclo de vida da fatura para os próximos status.Linhas sem grupo
Linhas podem existir fora de grupos. O campolineItemGroupId é opcional no POST /line-items. Use quando não faz sentido agrupar, por exemplo uma única linha avulsa ou linhas heterogêneas que não compartilham produto.
Editar e cancelar
Faturas avulsas continuam editáveis via API mesmo apósin_review. Ações suportadas:
- Atualizar data e memorando da fatura:
PUT /v1/invoices/{invoiceId}(aceita apenasinvoiceDateememo). - Atualizar ou remover grupo:
PUTouDELETEem/v1/invoices/{invoiceId}/line-item-groups/{lineItemGroupId}. - Atualizar ou remover linha:
PUTouDELETEem/v1/invoices/{invoiceId}/line-items/{lineItemId}. - Cancelar a fatura:
POST /v1/invoices/{invoiceId}/cancel. Funciona em qualquer estado da fatura avulsa.
Referência rápida
| Operação | Método | Path |
|---|---|---|
| Criar fatura | POST | /v1/invoices |
| Atualizar fatura | PUT | /v1/invoices/{invoiceId} |
| Marcar como Em revisão | POST | /v1/invoices/{invoiceId}/in-review |
| Cancelar fatura | POST | /v1/invoices/{invoiceId}/cancel |
| Criar grupo | POST | /v1/invoices/{invoiceId}/line-item-groups |
| Atualizar grupo | PUT | /v1/invoices/{invoiceId}/line-item-groups/{lineItemGroupId} |
| Remover grupo | DELETE | /v1/invoices/{invoiceId}/line-item-groups/{lineItemGroupId} |
| Criar linha | POST | /v1/invoices/{invoiceId}/line-items |
| Atualizar linha | PUT | /v1/invoices/{invoiceId}/line-items/{lineItemId} |
| Remover linha | DELETE | /v1/invoices/{invoiceId}/line-items/{lineItemId} |
Próximos passos
- Ciclo de vida da fatura: entenda os status após
in_review. - Documentos fiscais: emissão de NFSe e geração de PDFs após a aprovação.
- Importação de faturas: alternativa em planilha XLSX para carga em lote.