O que são Lançamentos Contábeis
Uma rubrica é um mapeamento que informa ao motor quais contas do ledger debitar e creditar para uma determinada ação de transação. Em vez de calcular as classificações contábeis manualmente para cada movimentação, você registra as rubricas uma única vez e deixa o Midaz resolvê-las automaticamente à medida que as transações são processadas. Cada rubrica carrega:
code— um identificador único (o código do plano de contas, ex.:1.1.1.001).description— um rótulo legível para o lançamento (ex.:Customer checking — outbound).- Um conjunto de mapeamentos de ação — um lançamento por tipo de ação, cada um com sua própria rubrica de débito e/ou crédito.
routeCode (e o routeDescription) resultante. Isso fornece uma trilha de auditoria completa, de transação → operation → rubrica, permitindo que as equipes rastreiem exatamente qual regra contábil foi aplicada a cada movimentação.
As rubricas são configuradas por ação em cada Operation Route. Rotas de origem (source) exigem a rubrica de débito, rotas de destino (destination) exigem a rubrica de crédito e rotas bidirecionais exigem ambas.
Os 5 tipos de ação
Cada ação representa um evento transacional distinto. Uma única rubrica pode mapear diferentes contas de débito/crédito para cada ação, de modo que cada etapa de uma operação caia no lançamento correto do ledger.
| Ação | Identificador | Descrição |
|---|---|---|
| Direct | direct | Débito/crédito imediato de etapa única entre duas contas, sem estágios intermediários (ex.: uma taxa ou ajuste). |
| Hold | hold | Reserva fundos criando uma movimentação pendente (move o valor de available para on_hold na conta de origem). |
| Commit | commit | Confirma um valor previamente reservado, liberando o valor on_hold para a conta de destino. |
| Cancel | cancel | Cancela/reverte uma reserva, retornando o valor on_hold para o saldo available na conta de origem. |
| Revert | revert | Reverte uma transação direct concluída criando uma contratransação que desfaz a original. |
Configurando Lançamentos Contábeis
As rubricas são registradas via API como parte das suas Operation Routes — o bloco
accountingEntries em uma rota define um lançamento por ação, cada um com sua rubrica de debit e/ou credit:
Modos de validação
Como o Midaz reage quando nenhuma rubrica correspondente é encontrada depende das configurações contábeis do Ledger. Existem dois gates distintos:
Padrão (graceful)
Por padrão, se nenhuma rubrica estiver registrada para uma ação, a transação prossegue normalmente. Os camposrouteCode e routeDescription simplesmente ficam vazios (nil) para aquela operation — nenhum erro é gerado.
Estrito (opt-in)
Definaaccounting.validateRoutes como true nas Configurações do Ledger para exigir que todas as ações tenham uma rubrica registrada. Qualquer operation cuja ação e direção não tenha um mapeamento registrado é rejeitada com o erro 0117 ErrAccountingRouteNotFound.
- routeCode — o
codedaAccountingRubricresolvida para aquela ação e direção. - routeDescription — a descrição da rubrica contábil resolvida, preenchida junto com o
routeCode.

