Transfers
Move value between accounts through structured ledger transactions.
Transfers are financial operations that move value between accounts within an Infrarails ledger.
Every transfer is represented by a transaction and its associated accounting entries, providing a consistent record of the financial movement.
Understanding transfers
A transfer moves value from one or more source accounts to one or more destination accounts.
For a basic transfer, the accounting effects consist of a debit to the source account and a credit to the destination account.
flowchart LR
A["Source Account"] -->|Debit €100.00| T["TRANSFER Transaction"]
T -->|Credit €100.00| B["Destination Account"]
The accounting model records both sides of the movement.
Transfer accounting
Consider two EUR accounts within the same ledger.
| Account | Initial balance |
|---|---|
| Account A | €1,000.00 |
| Account B | €250.00 |
A transfer of €100.00 from Account A to Account B produces the following entries:
| Entry | Account | Direction | Amount |
|---|---|---|---|
| 1 | Account A | Debit | €100.00 |
| 2 | Account B | Credit | €100.00 |
After the transfer is completed and its accounting effects are applied:
| Account | Final balance |
|---|---|
| Account A | €900.00 |
| Account B | €350.00 |
This example assumes both accounts use EUR and no additional fees or adjustments apply.
Transaction type
Transfers use the TRANSFER transaction type.
The core ledger processor requires at least two accounting entries for a transfer.
The entries represent the accounts affected by the operation.
Multiple-entry transfers
A transfer may involve more than two entries.
For example, a financial operation could distribute €200.00 between two destination accounts.
| Account | Direction | Amount |
|---|---|---|
| Source Account | Debit | €200.00 |
| Destination A | Credit | €150.00 |
| Destination B | Credit | €50.00 |
The total debit amount equals the total credit amount.
This model can support more complex internal accounting workflows.
Transfer lifecycle
Transfers follow the standard Infrarails transaction lifecycle.
PENDING
|
+-- INFLIGHT
| |
| +-- COMPLETED
| +-- REJECTED
| +-- VOID
|
+-- COMPLETED
+-- REJECTED
+-- VOID
A transfer does not necessarily pass through every state.
Applications should use the current transaction status to determine the operation's processing outcome.
Currency handling
Each account has an associated currency and currency exponent.
Applications should validate currency compatibility before submitting a transfer.
A transfer between accounts denominated in different currencies ma
Updated about 2 hours ago