Transactions - v3.1.2

  1. Overview
  2. Endpoints
    1. GET /accounts/{AccountId}/transactions
    2. GET /transactions
  3. Data Model
    1. Resource Definition
    2. UML Diagram
      1. Notes
    3. Filtering
      1. Filtering Examples
    4. Permission Codes
    5. Data Dictionary
  4. Usage Examples
    1. Specific Account
      1. Get Account Transactions Request
      2. Get Account Transactions Response
    2. Bulk
      1. Get Transactions Request
      2. Get Transactions Response
    3. No Access
      1. GET Account Transactions Request
      2. GET Account Transactions Response

Overview

The transactions resource is used by an AISP to retrieve the transactions for a specific AccountId or to retrieve the transactions in bulk for account(s) that the PSU has authorised to access.

This resource description should be read in conjunction with a compatible Account Information Services API Profile.

Endpoints

Endpoints for the resource - and available methods.

 ResourceHTTP OperationEndpointMandatory?ScopeGrant TypeIdempotency KeyParametersRequest ObjectResponse Object
1transactionsGETGET /accounts/{AccountId}/transactionsMandatoryaccountsAuthorization CodeNoPagination Filtering OBReadTransaction5
2transactionsGETGET /transactionsOptionalaccountsAuthorization CodeNoPagination Filtering OBReadTransaction5

GET /accounts/{AccountId}/transactions

An AISP may retrieve the transaction resource for a specific AccountId (which is retrieved in the call to GET /accounts).

GET /transactions

If an ASPSP has implemented the bulk retrieval endpoints, an AISP may optionally retrieve the transactions in bulk. This will retrieve the resources for all authorised accounts linked to the account-request.

Data Model

The OBReadTransaction5 object will be used for the call to:

  • GET /accounts/{AccountId}/transactions
  • GET /transactions
  • GET /accounts/{AccountId}/statements/{StatementId}transactions

Resource Definition

A resource that describes a posting to an account that results in an increase or decrease to a balance. For a specific date range, an account (AccountId) may have no transactions booked, or may have multiple transactions booked.

UML Diagram

 OBReadTransaction5.png

Notes

  • The use of the term “Transaction” has been made consistently in the Transaction endpoint payload (instead of “Entry” which is the ISO20022 element name).
  • A DateTime element has been used instead of a complex choice element of Date and DateTime. Where time elements do not exist in ASPSP systems, the time portion of the DateTime element will be defaulted to 00:00:00+00:00.
  • The BookingDateTime has been set to mandatory as all ASPSPs must provide this field for pagination and filtering. The BookingDateTime is the date the transaction is booked (or posted) and becomes immutable, which is not the date the transaction took place.
  • Either the BankTransactionCode (which is the ISO transaction code list), or ProprietaryBankTransactionCode, or both may be populated. While the expectation is that at least one of BankTransactionCode. or ProprietaryBankTransactionCode are populated, we have decided not to enforce this behaviour in the payload structure as this would require nesting elements and introducing complex choice elements.
  • The BankTransactionCode (ISO) code-list is documented on the ISO20022 website: https://www.iso20022.org/external_code_list.page; and External Code Sets spreadsheet.
    • The ISO 20022 BankTransactionCode Code and SubCode are specified as 4 letter codes. However, the principle we have applied for the code lists is to have longer more descriptive codes.
    • The BankTransactionCode Code and SubCode will be populated with the long form description of the ISO 20022 code, with delimiters removed. E.g., the Family Code “CNTR” has a description of “Counter Transactions” which is populated as “CounterTransactions”
  • ASPSPs must have the ability to provide transactions through APIs for a period that at least equals the period provided through their online channels.

Filtering

Limited support for filtering is provided on the transactions resource.

NameOccurrenceEnhanced DefinitionClass
fromBookingDateTime0..1Specifies start date and time for filtering of the Transaction records on the Transaction/BookingDateTime fieldISODateTime
toBookingDateTime0..1Specifies end date and time for filtering of the Transaction records on the Transaction/BookingDateTime field.ISODateTime

The ASPSP must treat the following as valid input:

  • Non-working days (e.g. a Sunday or a Bank holiday) or any other days on which no transactions are recorded.
  • Dates that fall outside the range for which transaction information is provided through APIs.
  • Dates that fall outside the range for which a consent authorisation is available.
  • Timezone may be included in the filter request, but must be ignored by the ASPSP.

In the above situations, the ASPSP must return data for the remaining valid period specified by the filter.

Filtering Examples

// All transactions from 1st Jan, 2015
GET /transactions?fromBookingDateTime=2015-01-01T00:00:00

// All transactions in 2016
GET /transactions?fromBookingDateTime=2016-01-01T00:00:00&toBookingDateTime=2016-12-31T23:59:59

// All transactions in a specific account up to 31-Mar-2017
GET /accounts/1/transactions?toBookingDateTime=2017-03-31T23:59:59

Permission Codes

The resource differs depending on the permissions (ReadTransactionsBasic and ReadTransactionsDetail) used to access resource. In the event the resource is accessed with both ReadTransactionsBasic and ReadTransactionsDetail, the most detailed level (ReadTransactionsDetail) must be used.

  • These objects must not be returned without the ReadTransactionsDetail permission:
    • OBReadTransaction5/Data/Transaction/TransactionInformation
    • OBReadTransaction5/Data/Transaction/Balance
    • OBReadTransaction5/Data/Transaction/MerchantDetails
    • OBReadTransaction5/Data/Transaction/CreditorAgent
    • OBReadTransaction5/Data/Transaction/CreditorAccount
    • OBReadTransaction5/Data/Transaction/DebtorAgent
    • OBReadTransaction5/Data/Transaction/DebtorAccount
  • If the ReadTransactionsDetail is granted by the PSU:
    • OBReadTransaction5/Data/Transaction/TransactionInformation may be returned if applicable to the transaction and ASPSP (0..1)
    • OBReadTransaction5/Data/Transaction/Balance may be returned if applicable to the transaction and ASPSP (0..1)
    • OBReadTransaction5/Data/Transaction/MerchantDetails may be returned if applicable to the transaction and ASPSP (0..1)
    • OBReadTransaction5/Data/Transaction/CreditorAgent may be returned if applicable to the transaction and ASPSP (0..1)
    • OBReadTransaction5/Data/Transaction/CreditorAccount may be returned if applicable to the transaction and ASPSP (0..1)
    • OBReadTransaction5/Data/Transaction/DebtorAgent may be returned if applicable to the transaction and ASPSP (0..1)
    • OBReadTransaction5/Data/Transaction/DebtorAccount may be returned if applicable to the transaction and ASPSP (0..1)

If the ReadPAN permission is granted by the PSU - the ASPSP may choose to populate the unmasked PAN - if the PAN is being populated in the response for these fields:

  • OBReadTransaction5/Data/Transaction/CreditorAccount/Identification
  • OBReadTransaction5/Data/Transaction/DebtorAccount/Identification
  • OBReadTransaction5/Data/Transaction/CardInstrument/Identification

Data Dictionary

NameOccurrenceXPathEnhancedDefinitionClassCodesPattern
OBReadTransaction5 OBReadTransaction5 OBReadTransaction5  
Data1..1OBReadTransaction5/Data OBReadDataTransaction5  
Transaction0..nOBReadTransaction5/Data/TransactionProvides further details on an entry in the report.OBTransaction5  
AccountId1..1OBReadTransaction5/Data/Transaction/AccountIdA unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner.Max40Text  
TransactionId0..1OBReadTransaction5/Data/Transaction/TransactionIdUnique identifier for the transaction within an servicing institution. This identifier is both unique and immutable.Max210Text  
TransactionReference0..1OBReadTransaction5/Data/Transaction/TransactionReferenceUnique reference for the transaction. This reference is optionally populated, and may as an example be the FPID in the Faster Payments context.Max35Text  
StatementReference0..nOBReadTransaction5/Data/Transaction/StatementReferenceUnique reference for the statement. This reference may be optionally populated if available.Max35Text  
CreditDebitIndicator1..1OBReadTransaction5/Data/Transaction/CreditDebitIndicatorIndicates whether the transaction is a credit or a debit entry.OBCreditDebitCodeCredit Debit 
Status1..1OBReadTransaction5/Data/Transaction/StatusStatus of a transaction entry on the books of the account servicer.OBEntryStatus1CodeBooked Pending 
BookingDateTime1..1OBReadTransaction5/Data/Transaction/BookingDateTimeDate and time when a transaction entry is posted to an account on the account servicer’s books. Usage: Booking date is the expected booking date, unless the status is booked, in which case it is the actual booking date.ISODateTime  
ValueDateTime0..1OBReadTransaction5/Data/Transaction/ValueDateTimeDate and time at which assets become available to the account owner in case of a credit entry, or cease to be available to the account owner in case of a debit transaction entry. Usage: If transaction entry status is pending and value date is present, then the value date refers to an expected/requested value date. For transaction entries subject to availability/float and for which availability information is provided, the value date must not be used. In this case the availability component identifies the number of availability days.ISODateTime  
TransactionInformation0..1OBReadTransaction5/Data/Transaction/TransactionInformationFurther details of the transaction. This is the transaction narrative, which is unstructured text.Max500Text  
AddressLine0..1OBReadTransaction5/Data/Transaction/AddressLineInformation that locates and identifies a specific address for a transaction entry, that is presented in free format text.Max70Text  
Amount1..1OBReadTransaction5/Data/Transaction/AmountAmount of money in the cash transaction entry.OBActiveOrHistoricCurrencyAndAmount  
Amount1..1OBReadTransaction5/Data/Transaction/Amount/AmountA number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.OBActiveCurrencyAndAmount_SimpleType ^\d{1,13}.\d{1,5}$
Currency1..1OBReadTransaction5/Data/Transaction/Amount/CurrencyA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 “Codes for the representation of currencies and funds”.ActiveOrHistoricCurrencyCode ^[A-Z]{3,3}$
ChargeAmount0..1OBReadTransaction5/Data/Transaction/ChargeAmountTransaction charges to be paid by the charge bearer.OBActiveOrHistoricCurrencyAndAmount  
Amount1..1OBReadTransaction5/Data/Transaction/ChargeAmount/AmountA number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.OBActiveCurrencyAndAmount_SimpleType ^\d{1,13}.\d{1,5}$
Currency1..1OBReadTransaction5/Data/Transaction/ChargeAmount/CurrencyA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 “Codes for the representation of currencies and funds”.ActiveOrHistoricCurrencyCode ^[A-Z]{3,3}$
CurrencyExchange0..1OBReadTransaction5/Data/Transaction/CurrencyExchangeSet of elements used to provide details on the currency exchange.OBCurrencyExchange5  
SourceCurrency1..1OBReadTransaction5/Data/Transaction/CurrencyExchange/SourceCurrencyCurrency from which an amount is to be converted in a currency conversion.ActiveOrHistoricCurrencyCode ^[A-Z]{3,3}$
TargetCurrency0..1OBReadTransaction5/Data/Transaction/CurrencyExchange/TargetCurrencyCurrency into which an amount is to be converted in a currency conversion.ActiveOrHistoricCurrencyCode ^[A-Z]{3,3}$
UnitCurrency0..1OBReadTransaction5/Data/Transaction/CurrencyExchange/UnitCurrencyCurrency in which the rate of exchange is expressed in a currency exchange. In the example 1GBP = xxxCUR, the unit currency is GBP.ActiveOrHistoricCurrencyCode ^[A-Z]{3,3}$
ExchangeRate1..1OBReadTransaction5/Data/Transaction/CurrencyExchange/ExchangeRateFactor used to convert an amount from one currency into another. This reflects the price at which one currency was bought with another currency. Usage: ExchangeRate expresses the ratio between UnitCurrency and QuotedCurrency (ExchangeRate = UnitCurrency/QuotedCurrency).BaseOneRate  
ContractIdentification0..1OBReadTransaction5/Data/Transaction/CurrencyExchange/ContractIdentificationUnique identification to unambiguously identify the foreign exchange contract.Max35Text  
QuotationDate0..1OBReadTransaction5/Data/Transaction/CurrencyExchange/QuotationDateDate and time at which an exchange rate is quoted.ISODateTime  
InstructedAmount0..1OBReadTransaction5/Data/Transaction/CurrencyExchange/InstructedAmountAmount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.OBActiveOrHistoricCurrencyAndAmount  
Amount1..1OBReadTransaction5/Data/Transaction/CurrencyExchange/InstructedAmount/AmountA number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.OBActiveCurrencyAndAmount_SimpleType ^\d{1,13}.\d{1,5}$
Currency1..1OBReadTransaction5/Data/Transaction/CurrencyExchange/InstructedAmount/CurrencyA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 “Codes for the representation of currencies and funds”.ActiveOrHistoricCurrencyCode ^[A-Z]{3,3}$
BankTransactionCode0..1OBReadTransaction5/Data/Transaction/BankTransactionCodeSet of elements used to fully identify the type of underlying transaction resulting in an entry.OBBankTransactionCodeStructure1  
Code1..1OBReadTransaction5/Data/Transaction/BankTransactionCode/CodeSpecifies the family within a domain.ExternalBankTransactionFamily1Code  
SubCode1..1OBReadTransaction5/Data/Transaction/BankTransactionCode/SubCodeSpecifies the sub-product family within a specific family.ExternalBankTransactionSubFamily1Code  
ProprietaryBankTransactionCode0..1OBReadTransaction5/Data/Transaction/ProprietaryBankTransactionCodeSet of elements to fully identify a proprietary bank transaction code.ProprietaryBankTransactionCodeStructure1  
Code1..1OBReadTransaction5/Data/Transaction/ProprietaryBankTransactionCode/CodeProprietary bank transaction code to identify the underlying transaction.Max35Text  
Issuer0..1OBReadTransaction5/Data/Transaction/ProprietaryBankTransactionCode/IssuerIdentification of the issuer of the proprietary bank transaction code.Max35Text  
Balance0..1OBReadTransaction5/Data/Transaction/BalanceSet of elements used to define the balance as a numerical representation of the net increases and decreases in an account after a transaction entry is applied to the account.OBTransactionCashBalance  
CreditDebitIndicator1..1OBReadTransaction5/Data/Transaction/Balance/CreditDebitIndicatorIndicates whether the balance is a credit or a debit balance. Usage: A zero balance is considered to be a credit balance.OBCreditDebitCodeCredit Debit 
Type1..1OBReadTransaction5/Data/Transaction/Balance/TypeBalance type, in a coded form.OBBalanceType1CodeClosingAvailable ClosingBooked ClosingCleared Expected ForwardAvailable Information InterimAvailable InterimBooked InterimCleared OpeningAvailable OpeningBooked OpeningCleared PreviouslyClosedBooked 
Amount1..1OBReadTransaction5/Data/Transaction/Balance/AmountAmount of money of the cash balance after a transaction entry is applied to the account..OBActiveOrHistoricCurrencyAndAmount  
Amount1..1OBReadTransaction5/Data/Transaction/Balance/Amount/AmountA number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.OBActiveCurrencyAndAmount_SimpleType ^\d{1,13}.\d{1,5}$
Currency1..1OBReadTransaction5/Data/Transaction/Balance/Amount/CurrencyA code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 “Codes for the representation of currencies and funds”.ActiveOrHistoricCurrencyCode ^[A-Z]{3,3}$
MerchantDetails0..1OBReadTransaction5/Data/Transaction/MerchantDetailsDetails of the merchant involved in the transaction.OBMerchantDetails1  
MerchantName0..1OBReadTransaction5/Data/Transaction/MerchantDetails/MerchantNameName by which the merchant is known.Max350Text  
MerchantCategoryCode0..1OBReadTransaction5/Data/Transaction/MerchantDetails/MerchantCategoryCodeCategory code conform to ISO 18245, related to the type of services or goods the merchant provides for the transaction.Min3Max4Text  
CreditorAgent0..1OBReadTransaction5/Data/Transaction/CreditorAgentFinancial institution servicing an account for the creditor.OBBranchAndFinancialInstitutionIdentification6  
SchemeName0..1OBReadTransaction5/Data/Transaction/CreditorAgent/SchemeNameName of the identification scheme, in a coded form as published in an external list.OBExternalFinancialInstitutionIdentification4Code  
Identification0..1OBReadTransaction5/Data/Transaction/CreditorAgent/IdentificationUnique and unambiguous identification of a financial institution or a branch of a financial institution.Max35Text  
Name0..1OBReadTransaction5/Data/Transaction/CreditorAgent/NameName by which an agent is known and which is usually used to identify that agent.Max140Text  
PostalAddress0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddressInformation that locates and identifies a specific address, as defined by postal services.OBPostalAddress6  
AddressType0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/AddressTypeIdentifies the nature of the postal address.OBAddressTypeCodeBusiness Correspondence DeliveryTo MailTo POBox Postal Residential Statement 
Department0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/DepartmentIdentification of a division of a large organisation or building.Max70Text  
SubDepartment0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/SubDepartmentIdentification of a sub-division of a large organisation or building.Max70Text  
StreetName0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/StreetNameName of a street or thoroughfare.Max70Text  
BuildingNumber0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/BuildingNumberNumber that identifies the position of a building on a street.Max16Text  
PostCode0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/PostCodeIdentifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.Max16Text  
TownName0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/TownNameName of a built-up area, with defined boundaries, and a local government.Max35Text  
CountrySubDivision0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/CountrySubDivisionIdentifies a subdivision of a country such as state, region, county.Max35Text  
Country0..1OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/CountryNation with its own government.CountryCode ^[A-Z]{2,2}$
AddressLine0..7OBReadTransaction5/Data/Transaction/CreditorAgent/PostalAddress/AddressLineInformation that locates and identifies a specific address, as defined by postal services, presented in free format text.Max70Text  
CreditorAccount0..1OBReadTransaction5/Data/Transaction/CreditorAccountUnambiguous identification of the account of the creditor, in the case of a debit transaction.OBCashAccount6  
SchemeName0..1OBReadTransaction5/Data/Transaction/CreditorAccount/SchemeNameName of the identification scheme, in a coded form as published in an external list.OBExternalAccountIdentification4Code  
Identification0..1OBReadTransaction5/Data/Transaction/CreditorAccount/IdentificationIdentification assigned by an institution to identify an account. This identification is known by the account owner.Max256Text  
Name0..1OBReadTransaction5/Data/Transaction/CreditorAccount/NameThe account name is the name or names of the account owner(s) represented at an account level, as displayed by the ASPSP’s online channels. Note, the account name is not the product name or the nickname of the account.Max70Text  
SecondaryIdentification0..1OBReadTransaction5/Data/Transaction/CreditorAccount/SecondaryIdentificationThis is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally identify accounts with a roll number (in addition to a sort code and account number combination).Max34Text  
DebtorAgent0..1OBReadTransaction5/Data/Transaction/DebtorAgentFinancial institution servicing an account for the debtor.OBBranchAndFinancialInstitutionIdentification6  
SchemeName0..1OBReadTransaction5/Data/Transaction/DebtorAgent/SchemeNameName of the identification scheme, in a coded form as published in an external list.OBExternalFinancialInstitutionIdentification4Code  
Identification0..1OBReadTransaction5/Data/Transaction/DebtorAgent/IdentificationUnique and unambiguous identification of a financial institution or a branch of a financial institution.Max35Text  
Name0..1OBReadTransaction5/Data/Transaction/DebtorAgent/NameName by which an agent is known and which is usually used to identify that agent.Max140Text  
PostalAddress0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddressInformation that locates and identifies a specific address, as defined by postal services.OBPostalAddress6  
AddressType0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/AddressTypeIdentifies the nature of the postal address.OBAddressTypeCodeBusiness Correspondence DeliveryTo MailTo POBox Postal Residential Statement 
Department0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/DepartmentIdentification of a division of a large organisation or building.Max70Text  
SubDepartment0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/SubDepartmentIdentification of a sub-division of a large organisation or building.Max70Text  
StreetName0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/StreetNameName of a street or thoroughfare.Max70Text  
BuildingNumber0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/BuildingNumberNumber that identifies the position of a building on a street.Max16Text  
PostCode0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/PostCodeIdentifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.Max16Text  
TownName0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/TownNameName of a built-up area, with defined boundaries, and a local government.Max35Text  
CountrySubDivision0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/CountrySubDivisionIdentifies a subdivision of a country such as state, region, county.Max35Text  
Country0..1OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/CountryNation with its own government.CountryCode ^[A-Z]{2,2}$
AddressLine0..7OBReadTransaction5/Data/Transaction/DebtorAgent/PostalAddress/AddressLineInformation that locates and identifies a specific address, as defined by postal services, presented in free format text.Max70Text  
DebtorAccount0..1OBReadTransaction5/Data/Transaction/DebtorAccountUnambiguous identification of the account of the debtor, in the case of a credit transaction.OBCashAccount6  
SchemeName0..1OBReadTransaction5/Data/Transaction/DebtorAccount/SchemeNameName of the identification scheme, in a coded form as published in an external list.OBExternalAccountIdentification4Code  
Identification0..1OBReadTransaction5/Data/Transaction/DebtorAccount/IdentificationIdentification assigned by an institution to identify an account. This identification is known by the account owner.Max256Text  
Name0..1OBReadTransaction5/Data/Transaction/DebtorAccount/NameThe account name is the name or names of the account owner(s) represented at an account level, as displayed by the ASPSP’s online channels. Note, the account name is not the product name or the nickname of the account.Max70Text  
SecondaryIdentification0..1OBReadTransaction5/Data/Transaction/DebtorAccount/SecondaryIdentificationThis is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally identify accounts with a roll number (in addition to a sort code and account number combination).Max34Text  
CardInstrument0..1OBReadTransaction5/Data/Transaction/CardInstrumentSet of elements to describe the card instrument used in the transaction.OBTransactionCardInstrument1  
CardSchemeName1..1OBReadTransaction5/Data/Transaction/CardInstrument/CardSchemeNameName of the card scheme.OBExternalCardSchemeType1CodeAmericanExpress Diners Discover MasterCard VISA 
AuthorisationType0..1OBReadTransaction5/Data/Transaction/CardInstrument/AuthorisationTypeThe card authorisation type.OBExternalCardAuthorisationType1CodeConsumerDevice Contactless None PIN 
Name0..1OBReadTransaction5/Data/Transaction/CardInstrument/NameName of the cardholder using the card instrument.Max70Text  
Identification0..1OBReadTransaction5/Data/Transaction/CardInstrument/IdentificationIdentification assigned by an institution to identify the card instrument used in the transaction. This identification is known by the account owner, and may be masked.Max34Text  
SupplementaryData0..1OBReadTransaction5/Data/Transaction/SupplementaryDataAdditional information that can not be captured in the structured fields and/or any other specific block.OBSupplementaryData1  

Usage Examples

Specific Account

Get Account Transactions Request

GET /accounts/22289/transactions HTTP/1.1
Authorization: Bearer Az90SAOJklae
x-fapi-auth-date:  Sun, 10 Sep 2017 19:43:31 GMT
x-fapi-customer-ip-address: 104.25.212.99
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Accept: application/json

Get Account Transactions Response

HTTP/1.1 200 OK
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json
{
  "Data": {
    "Transaction": [
      {
        "AccountId": "22289",
        "TransactionId": "123",
        "TransactionReference": "Ref 1",
        "Amount": {
          "Amount": "10.00",
          "Currency": "GBP"
        },
        "CreditDebitIndicator": "Credit",
        "Status": "Booked",
        "BookingDateTime": "2017-04-05T10:43:07+00:00",
        "ValueDateTime": "2017-04-05T10:45:22+00:00",
        "TransactionInformation": "Cash from Aubrey",
        "BankTransactionCode": {
          "Code": "ReceivedCreditTransfer",
          "SubCode": "DomesticCreditTransfer"
        },
        "ProprietaryBankTransactionCode": {
          "Code": "Transfer",
          "Issuer": "AlphaBank"
        },
        "Balance": {
          "Amount": {
            "Amount": "230.00",
            "Currency": "GBP"
          },
          "CreditDebitIndicator": "Credit",
          "Type": "InterimBooked"
        }
      }
    ]
  },
  "Links": {
    "Self": "https://api.alphabank.com/open-banking/v3.1/aisp/accounts/22289/transactions/"
  },
  "Meta": {
    "TotalPages": 1,
	"FirstAvailableDateTime": "2017-05-03T00:00:00+00:00",
	"LastAvailableDateTime": "2017-12-03T00:00:00+00:00"
  }
}

Bulk

None of the transactions included in the payload are Ecommerce transactions, so MerchantDetails are not included in the examples.

Get Transactions Request

GET /transactions HTTP/1.1
Authorization: Bearer Az90SAOJklae
x-fapi-auth-date:  Sun, 10 Sep 2017 19:43:31 GMT
x-fapi-customer-ip-address: 104.25.212.99
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Accept: application/json

Get Transactions Response

HTTP/1.1 200 OK 
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json
{
  "Data": {
    "Transaction": [
      {
        "AccountId": "22289",
        "TransactionId": "123",
        "TransactionReference": "Ref 123",
        "Amount": {
          "Amount": "10.00",
          "Currency": "GBP"
        },
        "CreditDebitIndicator": "Credit",
        "Status": "Booked",
        "BookingDateTime": "2017-04-05T10:43:07+00:00",
        "ValueDateTime": "2017-04-05T10:45:22+00:00",
        "TransactionInformation": "Cash from Aubrey",
        "BankTransactionCode": {
          "Code": "ReceivedCreditTransfer",
          "SubCode": "DomesticCreditTransfer"
        },
        "ProprietaryBankTransactionCode": {
          "Code": "Transfer",
          "Issuer": "AlphaBank"
        },
        "Balance": {
          "Amount": {
            "Amount": "230.00",
            "Currency": "GBP"
          },
          "CreditDebitIndicator": "Credit",
          "Type": "InterimBooked"
        }
      },
      {
        "AccountId": "31820",
        "TransactionId": "567",
        "TransactionReference": "Ref 124",
        "Amount": {
          "Amount": "100.00",
          "Currency": "GBP"
        },
        "CreditDebitIndicator": "Debit",
        "Status": "Booked",
        "BookingDateTime": "2017-05-02T14:22:09+00:00",
        "ValueDateTime": "2017-05-02T14:22:09+00:00",
        "TransactionInformation": "Paid the gas bill",
        "AddressLine": "Coventry",
        "BankTransactionCode": {
          "Code": "IssuedCreditTransfer",
          "SubCode": "AutomaticTransfer"
        },
        "ProprietaryBankTransactionCode": {
          "Code": "DirectDebit",
          "Issuer": "AlphaBank"
        },
        "Balance": {
          "Amount": {
            "Amount": "57.36",
            "Currency": "GBP"
          },
          "CreditDebitIndicator": "Debit",
          "Type": "InterimBooked"
        }
      }
    ]
  },
  "Links": {
    "Self": "https://api.alphabank.com/open-banking/v3.1/aisp/transactions"
  },
  "Meta": {
    "TotalPages": 1,
	"FirstAvailableDateTime": "2017-05-03T00:00:00+00:00",
	"LastAvailableDateTime": "2017-12-03T00:00:00+00:00"
  }
}

No Access

In this example, the AISP does not have access to call the transactions endpoint. This will result in a 403 error.

GET Account Transactions Request

GET /accounts/22289/transactions HTTP/1.1
Authorization: Bearer Az90SAOJklae
x-fapi-auth-date:  Sun, 10 Sep 2017 19:43:31 GMT
x-fapi-customer-ip-address: 104.25.212.99
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Accept: application/json

GET Account Transactions Response

HTTP/1.1 403 Forbidden 
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d