Funds Account Transactions
Funds account transactions record individual financial movements on an account. This is the most detailed entity in the FXM module, capturing transaction amounts, currency conversions, ISO 20022 categorisation codes, card instrument details, and a running balance snapshot.
Transaction core
| Field | Purpose |
|---|---|
| Account | The funds account the transaction belongs to |
| Transaction amount | Positive values represent debits and negative values represent credits |
| Currency | Transaction currency |
| Booking date | When the transaction was posted |
| Value date | When funds became available or ceased to be available |
| Status | Booked, pending, or rejected |
| Finality | Whether the provider considers the transaction final |
The sign convention follows banking standards: positive values represent debits (money leaving the account) and negative values represent credits (money entering the account).
Transaction identification
Transactions carry identifiers from both the account information provider (AISP) and the account servicing provider (bank):
| Field | Purpose |
|---|---|
| Account information provider reference | The AISP's transaction identifier |
| Account servicing provider reference | The bank or provider transaction identifier |
These dual identifiers allow reconciliation between the AISP's view and the bank's view of the same transaction.
Description
| Field | Purpose |
|---|---|
| Free-text description | Provider-supplied transaction description |
| Structured description | Structured description details that can be exposed more safely |
The public view intentionally omits the free-text description field, exposing only the structured description object. This prevents uncontrolled text from reaching API consumers.
Charges
| Field | Purpose |
|---|---|
| Charge amount | Fee or charge applied to the transaction |
| Charge currency | Currency of the charge |
ISO 20022 categorisation
Transactions are categorised using ISO 20022 Bank Transaction Codes, which provide a standardised three-level classification:
| Field | Purpose |
|---|---|
| Family code | High-level category, such as received credit transfers |
| Sub-family code | Sub-category within the family |
| Proprietary code | Institution-specific transaction category |
| Proprietary code issuer | The issuer of the proprietary category |
Additional categorisation fields:
| Field | Purpose |
|---|---|
| Provider category | The AISP's own category code |
| Merchant category | ISO 18245 Merchant Category Code (MCC) |
| Merchant party | The merchant associated with the transaction |
Card instrument details
When a transaction originates from a card payment, additional card details are recorded:
| Field | Purpose |
|---|---|
| Card scheme | Card network, such as Visa or Mastercard |
| Authentication type | Authentication method, such as contactless, PIN, or consumer device |
| Cardholder name | Name recorded for the card instrument |
| Card identification | Provider-supplied card identification code |
Currency conversion
For cross-currency transactions, the full conversion details are recorded:
| Field | Purpose |
|---|---|
| Source currency | Original transaction currency |
| Target currency | Converted transaction currency |
| Unit currency | Currency used as the exchange-rate unit |
| Converted amount | Converted transaction amount |
| Exchange rate | Rate used for the conversion |
| Contract reference | FX contract reference, where supplied |
| Quotation date | Date the exchange rate was quoted |
Running balance
Each transaction includes a balance snapshot representing the account balance after the transaction:
| Field | Purpose |
|---|---|
| Balance value | Balance after the transaction |
| Balance type | Type of balance represented |
| Balance currency | Balance currency |
This denormalisation avoids the need to compute running balances from the full transaction history.
Privacy-enhanced view
The public transactions view applies the same privacy protections as the balances view:
- Identifier protection - internal and provider identifiers are replaced with privacy-safe values
- Value rounding - monetary values are rounded for safer exposure
- Date precision - timestamps are reduced to date-only granularity
- Field omission - the free-text transaction description is excluded
These protections ensure that transaction data exposed through the API cannot be correlated across users or used to reconstruct exact financial positions.
Authorisation
Transaction records follow the visibility of the parent funds account. A user who can view an account can view the transactions made available for that account.