Saltar al contenido principal
Version: 0.53.0-rc.12

Eventos de Dominio

Lana Bank publica eventos de dominio a traves del patron de outbox transaccional. Estos eventos pueden ser consumidos por sistemas externos para integracion, analitica y auditoria.

Todos los eventos se serializan como JSON e incluyen metadatos para trazabilidad y ordenamiento.


Estructura del Evento

Cada evento esta envuelto en un sobre con la siguiente estructura:

{
"id": "uuid",
"event_type": "core.credit.facility-activated",
"payload": { ... },
"recorded_at": "2024-01-15T10:30:00Z",
"trace_id": "trace-uuid"
}

Access Events

Eventos relacionados con la gestion de usuarios y roles.

EventDescriptionPayload Fields
UserCreatedSe creo un nuevo usuarioentity
RoleCreatedSe creo un nuevo rolentity

Credit Events

Eventos relacionados con el ciclo de vida y operaciones de facilidades de credito.

EventDescriptionPayload Fields
FacilityProposalCreatedSe creo una propuesta de facilidad de creditoentity
FacilityProposalConcludedFacilityProposalConcludedentity
PendingCreditFacilityCollateralizationChangedCambio el estado de colateralizacion para facilidad pendienteentity
PendingCreditFacilityCompletedPendingCreditFacilityCompletedentity
FacilityActivatedSe activo una facilidad de creditoentity
FacilityCompletedUna facilidad de credito fue totalmente pagada y cerradaentity
FacilityCollateralizationChangedCambio el estado de colateralizacion para facilidad activaentity
DisbursalInitializedSe inició un desembolso y está pendiente de aprobaciónentity
DisbursalApprovalConcludedDisbursalApprovalConcludedentity
DisbursalSettledSe liquido un desembolsoentity
DisbursalCancelledSe canceló un desembolsoentity
AccrualPostedSe registro el devengamiento de interesesentity
FacilityMaturedNo description availableentity
PartialLiquidationInitiatedSe inicio una liquidacion parcialentity

CreditCollateral Events

CoreCreditCollateralEvent module_description

EventDescriptionPayload Fields
CollateralUpdatedCollateralUpdatedentity
LiquidationCollateralSentOutLiquidationCollateralSentOutamount, effective, ledger_tx_id, liquidation_id, recorded_at, secured_loan_id
LiquidationProceedsReceivedLiquidationProceedsReceivedamount, collateral_id, effective, ledger_tx_id, liquidation_id, payment_id, recorded_at, secured_loan_id
LiquidationCompletedLiquidationCompletedliquidation_id, secured_loan_id

CreditCollection Events

CoreCreditCollectionEvent module_description

EventDescriptionPayload Fields
PaymentCreatedPaymentCreatedentity
PaymentAllocationCreatedPaymentAllocationCreatedentity
ObligationCreatedSe creo una nueva obligacionentity
ObligationDueUna obligacion vencioentity
ObligationOverdueUna obligacion entro en moraentity
ObligationDefaultedUna obligacion entro en incumplimientoentity
ObligationCompletedUna obligacion fue completamente pagadaentity

Custody Events

Eventos relacionados con custodia de Bitcoin y gestion de billeteras.

EventDescriptionPayload Fields
WalletBalanceUpdatedNo description availableentity

Customer Events

Eventos relacionados con el ciclo de vida del cliente y KYC.

EventDescriptionPayload Fields
CustomerCreatedSe creo un nuevo clienteentity
CustomerFrozenSe congelo una cuenta de cliente, bloqueando operaciones financierasentity
CustomerUnfrozenSe descongelo una cuenta de cliente previamente congelada, restaurando operaciones normalesentity
CustomerClosedLa cuenta del cliente fue cerradaentity
PartyCreatedNo description availableentity
PartyEmailUpdatedNo description availableentity
ProspectCreatedSe creó un nuevo prospecto para la incorporaciónentity
ProspectKycStartedUn prospecto inició la verificación KYCentity
ProspectKycPendingLa verificación KYC de un prospecto está pendiente de revisiónentity
ProspectKycDeclinedLa verificación KYC de un prospecto fue rechazadaentity
ProspectConvertedUn prospecto fue convertido en clienteentity
ProspectClosedUn prospecto fue cerrado sin conversiónentity

Deposit Events

Eventos relacionados con cuentas de deposito y transacciones.

EventDescriptionPayload Fields
DepositAccountCreatedSe creo una cuenta de depositoentity
DepositInitializedSe inicializo un depositoentity
DepositRevertedSe revirtio un depositoentity
WithdrawalInitializedSe inició un retiro y está pendiente de aprobaciónentity
WithdrawalApprovalConcludedSe concluyó el proceso de aprobación de un retiroentity
WithdrawalDeniedSe denegó un retiroentity
WithdrawalConfirmedSe confirmo un retiroentity
WithdrawalCancelledSe canceló un retiroentity
WithdrawalRevertedSe revirtió un retiro confirmadoentity

Price Events

Eventos relacionados con actualizaciones de precio BTC/USD.

EventDescriptionPayload Fields
PriceUpdatedSe actualizo el precio BTC/USDprice, timestamp
ProviderPriceFetchedNo description availableprice, provider_id, timestamp

Report Events

Eventos relacionados con generacion de reportes.

EventDescriptionPayload Fields
ReportRunCreatedSe inicio una ejecucion de reporteentity
ReportRunStateUpdatedCambio el estado de ejecucion de reporteentity

Governance Events

Eventos relacionados con flujos de aprobacion.

EventDescriptionPayload Fields
ApprovalProcessConcludedSe concluyo un proceso de aprobacionentity

Time Events

CoreTimeEvent module_description

EventDescriptionPayload Fields
EndOfDayEndOfDayclosing_time, day, timezone

Referencia de Tipos de Eventos

Todos los tipos de eventos siguen la convencion de nombres: core.<module>.<event-name>

ModuloPrefijo de Tipo de Evento
Accesscore.access.*
Creditcore.credit.*
CreditCollateralcore.credit-collateral.*
CreditCollectioncore.credit-collection.*
Custodycore.custody.*
Customercore.customer.*
Depositcore.deposit.*
Pricecore.price.*
Reportcore.report.*
Governancegovernance.*
Timecore.time.*

Consumiendo Eventos

Los eventos se publican a traves del outbox transaccional y se pueden consumir mediante:

  1. Consulta directa a la base de datos - Consultar la tabla de outbox
  2. Streaming de eventos - Integracion con colas de mensajes (dependiente de la implementacion)
  3. Pipelines ETL - Via extraccion de Meltano

Para detalles de integracion, contacte al equipo de plataforma.