SIL Enums Reference
All enum values returned by SIL API responses are serialised as their string name (not the integer value). The integer codes are documented here for database-level queries and debugging.
Transaction Status (SITTransactionStatusEnum)​
Business lifecycle state of a SIL transaction. Tracks what happened to the transaction from the operator's perspective, independent of whether it has been replayed to core banking.
| Value | Integer | Description |
|---|---|---|
Pending | 0 | Held pending approval because a debit/credit limit was breached. No balance impact yet. |
Posted | 1 | Approved or directly posted. Balances have been updated in the SIL ledger. |
Reversed | 3 | A compensating reversal transaction has been posted. The original is now voided. |
Rejected | 5 | Rejected by the approver. No balance impact was ever applied. |
Cancelled | 6 | Cancelled by the initiating teller before an approver acted on it. |
Integer values 2 and 4 are retired. Existing rows that carry those values were migrated to CoreSyncStatus.
State flow:
Pending → Posted → (Reversed)
Pending → Rejected
Pending → Cancelled
Core Sync Status (SITCoreSyncStatusEnum)​
Tracks the replay-to-core-banking lifecycle. Intentionally decoupled from SITTransactionStatusEnum — a Reversed transaction can still carry its own sync history.
| Value | Integer | Description |
|---|---|---|
NotQueued | 0 | Not yet queued. The transaction may be awaiting approval or may not require replay (e.g. balance enquiries). |
Queued | 1 | Added to the SITSyncQueue outbox. The background worker will pick it up on its next tick. |
SyncedToCore | 2 | Successfully replayed to core banking. Reversal must now happen on the core side — SITReverseTransactionCommand will be rejected with 409. |
FailedToSync | 3 | The last replay attempt failed. Retry is scheduled with exponential back-off. |
DeadLettered | 4 | Exceeded the maximum number of retry attempts. Manual intervention is required. |
Approval Status (SITApprovalStatusEnum)​
Approval workflow state for transactions that breach a configured SIL limit.
| Value | Integer | Description |
|---|---|---|
NotRequired | 0 | The transaction was within limits and was posted immediately without approval. |
PendingApproval | 1 | Awaiting action from an authorised approver. |
Approved | 2 | Approved and posted. |
Rejected | 3 | Rejected by the approver. |
Cancelled | 4 | Cancelled by the initiating teller before approval. |
Transaction Type (SITTransactionTypeEnum)​
The type of financial operation recorded in the SIL ledger.
| Value | Integer | Description |
|---|---|---|
Deposit | 1 | Cash or cheque deposit into a customer account via the till. |
Withdrawal | 2 | Cash withdrawal from a customer account via the till. |
Transfer | 3 | Account-to-account transfer. No till balance impact. |
LoanRepayment | 4 | Loan repayment received at the till. |
Reversal | 5 | Compensating entry created by SITReverseTransactionCommand. |
BalanceEnquiry | 6 | Read-only balance enquiry. No ledger entry created. |
TillCashIn | 7 | Cash added to the teller till (till opening or top-up). |
TillCashOut | 8 | Cash removed from the teller till (till closing or surrender). |
Channel (SITChannelEnum)​
The initiation channel recorded against the transaction.
| Value | Integer | Description |
|---|---|---|
Branch | 1 | Teller at a bank branch. |
USSD | 2 | USSD session. |
Mobile | 3 | Mobile banking app. |
Internet | 4 | Internet banking portal. |
ATM | 5 | Automated Teller Machine. |
Agent | 6 | Agent banking. |
Api | 7 | Direct API integration. |
Account Status (SITAccountStatusEnum)​
The state of the SIL account snapshot, mirrored from core banking. Controls which transactions are allowed. See Account States & Rules for the full posting rules matrix.
| Value | Integer | Description |
|---|---|---|
Active | 1 | Fully operational. All transactions allowed subject to limits. |
Dormant | 2 | Account has been inactive. Deposits allowed; withdrawals may be restricted. |
PostNoDebit | 3 | Credits (deposits) allowed; debits (withdrawals) blocked. |
PostNoCredit | 4 | Debits (withdrawals) allowed; credits (deposits) blocked. |
Closed | 5 | Account is closed. All transactions blocked. |
Frozen | 6 | All transactions blocked (regulatory/compliance hold). |
Cash or Cheque (SITCashOrChequeEnum)​
Tender type for till transactions. Affects till balance.
| Value | Integer | Description |
|---|---|---|
Cash | 0 | Physical cash. Till balance is updated immediately. |
Cheque | 1 | Cheque instrument. Customer-side ledger is posted; till balance is not updated. Parked for clearing. |
Debit / Credit (SITDrCrEnum)​
Indicator on double-entry ledger posting lines (SITTransactionEntry).
| Value | Integer | Description |
|---|---|---|
Debit | 1 | Debit leg of the entry (reduces the account balance). |
Credit | 2 | Credit leg of the entry (increases the account balance). |
Customer Type (SITCustomerTypeEnum)​
Customer classification mirrored from core banking.
| Value | Integer | Description |
|---|---|---|
Individual | 1 | Personal / retail customer. |
Corporate | 2 | Business / corporate customer. |
Customer Sync Status (SITSyncStatusEnum)​
Synchronisation state of the SIL customer/account record with core banking. Used on the SITCustomer entity.
| Value | Integer | Description |
|---|---|---|
Synced | 1 | Customer data is current — matches core banking. |
PendingSync | 2 | Queued for sync; data may be stale. |
Failed | 3 | Last sync attempt failed. Manual re-sync may be required. |
Sync Queue Status (SITSyncQueueStatusEnum)​
Status of an individual entry in the SITSyncQueue outbox table. Each entry represents one replay attempt to core banking.
| Value | Integer | Description |
|---|---|---|
Pending | 0 | Awaiting pickup by the background worker. |
InProgress | 1 | Currently being processed by the worker. |
Succeeded | 2 | Successfully replayed to core banking. |
Failed | 3 | This attempt failed. A new entry will be created for the next retry. |
DeadLettered | 4 | Exceeded maximum retries. The parent transaction's CoreSyncStatus is set to DeadLettered. |