Skip to main content
credit_ledger_entry.created é emitido depois que um CreditLedgerEntry é criado. Handlers usam este evento para executar efeitos assíncronos fora do fluxo síncrono.

Detalhes do Evento

PropriedadeValor
Tipocredit_ledger_entry.created
OrigemCriação de CreditLedgerEntry
PublicaçãoApós commit do CreditLedgerEntry
QuandoCrédito é concedido, reservado, capturado, liberado, estornado, expirado ou ajustado.

Handlers

HandlerResponsabilidadeDados usadosExecução
refresh-customer-credit-balance-cacheAtualiza projeções de saldo do cliente.dataAssíncrona.

Payload

CampoTipoDescrição
dataCreditLedgerEntryEntidade CreditLedgerEntry criada

Regras dos handlers

  • Handlers não rodam na transação que publicou o CreditLedgerEntry.
  • Falha em handler não desfaz o CreditLedgerEntry.
  • Cada handler deve ser idempotente.
  • Novos handlers podem ser adicionados sem mudar o fluxo síncrono.

Exemplo

{
  "type": "credit_ledger_entry.created",
  "data": {
    "creditLedgerEntryId": "0197f7b2-3270-78a7-a9ab-a66ebd93487a",
    "creditGrantId": "0197f7b0-9a63-720d-b4c7-e17390b3a901",
    "organizationId": "0197a801-1690-7590-b3cf-19599b9be3e4",
    "companyId": "0197a801-6a42-79aa-9e56-d3c85148c0fa",
    "customerId": "0197a7f6-4d36-7c0a-a7cb-54fcb33a3148",
    "cooperativeId": "0197a800-24e6-76a2-90ed-ff0f6fba7b0c",
    "transportOperatorId": "01980d30-6a3c-7a42-9182-17ad6324d3aa",
    "checkoutId": "0197a812-b835-79c4-8f0b-0e3863eb6d34",
    "orderId": "0197a813-0fb9-7d42-9c81-50c0f6d9ae5a",
    "ticketId": "0197a813-a9a6-7752-8173-d40a2a2d0ef0",
    "type": "CAPTURE",
    "amount": -1500,
    "availableAfter": 3500,
    "referenceType": "TICKET",
    "referenceId": "0197a813-a9a6-7752-8173-d40a2a2d0ef0",
    "idempotencyKey": "credit-capture-0197a813-a9a6-7752-8173-d40a2a2d0ef0",
    "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
    "createdAt": "2026-07-04T14:45:00.000Z"
  }
}