Credit Ledger
Access Prerequisites
- Permission (module):
viewCredits(ledger query). - License/Feature:
CREDIT_INVESTMENTSenabled on the tenant license (Vault). - Menu container: TOKENIZATION → group Tokenized Credit
What it is / when to use
The Credit Ledger screen is the ledger that records all internal accounting entries for credit operations: disbursements, charge receipts, settlements, buybacks, fees, and adjustments. Each entry points to an entity (deal, receivable, charge, position), has an entry type, an amount, and an account type.
Use this screen to audit and reconcile the financial movement of a deal — summing debits/credits, tracing where each amount came from, and closing the balance per account (getDealBalance).
Prerequisites
- Permission:
viewCredits(dual permission — CPM enum + dynamic module in DB). - License/Feature:
CREDIT_INVESTMENTSenabled. Without it the group does not appear in the menu at all. - Dependencies on other screens: entries are generated automatically by the flows of Disbursements, Settlements, Charges and Buybacks — this screen is read-only.
Step by step
- Go to the menu Tokenized Credit → Ledger.
- Fill in the filters: Deal ID, Entity Type, and/or Entry Type.
- Click Filter (or press Enter in the field) to load the entries.
- Browse the table to audit the movement; paginate as needed.
Filters and columns
| Filter/Column | What it shows | Data source |
|---|---|---|
| Deal ID (filter) | Restricts to the specified deal | dealId parameter in getLedgerEntries |
| Entity Type (filter/column) | Which object the entry refers to (DEAL, RECEIVABLE, CHARGE, POSITION…) | entry.entityType |
| Entity ID (column) | Identifier of the referenced object | entry.entityId |
| Entry Type (filter/column) | Accounting nature of the entry (e.g.: disbursement, receipt, fee, buyback) | entry.entryType |
| Amount (column) | Entry amount | entry.amount (BigNumber) |
| Account Type (column) | Internal account affected (accountType) | entry.accountType |
| Deal (column) | Linked deal | entry.dealId |
| Created at (column) | Date/time of the entry | entry.createdAt |
The Entity Type and Entry Type filters are free-text fields — enter the exact value (e.g.:
DEAL,CHARGE) to match the records.
Actions and modals
Read-only screen: filter and paginate. There is no creation/editing/deletion of entries through the interface — the ledger is fed by the financial flows of the credit module. The balance per account for a deal is calculated in the backend (getDealBalance(dealId, accountType)).
Business rules / notes
Attention
- Ledger is immutable. Entries cannot be edited or deleted — corrections are entered as new entries (reversal/adjustment), preserving the audit trail.
- Reconcile by
dealId+accountType. To close the balance of an account for a deal, filter by deal and sum by account type; the backend exposesgetDealBalancefor the total. - Each event generates an entry. Disbursement, charge receipt, settlement, and buyback each produce corresponding entries — the absence of an expected entry indicates a failure in the originating flow.
- Financial values:
amountis BigNumber in the backend; the UI displays it formatted, but reconciliation must use full precision — do not round.