Account Aggregation

Connect multiple accounts and get real-time information

Introduction

Account Aggregation API services offer a secure and convenient way to access and manage financial information from various institutions through a centralized platform. This process is underpinned by rigorous security measures, user consent, and compliance with relevant regulations, ensuring the protection and privacy of the user's financial data.

Account aggregation lets you fetch real-time account information, balances, transactions, etc.

Consent

User consent is the primary requirement to access any services in Open Banking. The user or account holder grants explicit consent to a Third-Party to access their financial data. This consent is given through a secure, multi-factor authentication process to verify the user's identity.

The consent request must include the following details:

EndpointuseCaseType Valuepermissions Value
/v1/api/observice/connectACCOUNTAGGREGATIONReadAccountsBasic
ReadAccountsDetail
ReadBalances
ReadBeneficiariesBasic
ReadBeneficiariesDetail
ReadDirectDebits
ReadTransactionsBasic
ReadTransactionsCredits
ReadTransactionsDebits
ReadTransactionsDetail
ReadProducts
ReadStandingOrdersDetail
ReadStandingOrdersDetail
ReadStatementsDetail
ReadParty
ReadPartyPSU
ReadPartyPSUIdentity

Check Consent Management for more details to create, view, and revoke consents.

How it works?

The image below represents data usage within an App from account aggregation services using SingleView APIs.

Account Aggregation - Representation of request and response data

Account Aggregation - Representation of request and response data

Get Account Aggregation Services

Endpoint details

Endpoint URLMethodAuthentication requirements
/v1/api/observice/accountAggregationPOST1. clientId 2. clientCode 3. signature 4. Authorization Bearer: Token

Sample request

{
  "dateTimeStamp": "YYYY-MM-DDTHH:MM:SS",
  "requestID": "Enter_Request_Id",
  "merchantId": "Enter_Merchant_Id",
  "fromDate": "YYYY-MM-DDTHH:MM:SS.SSSZ",
  "toDate": "YYYY-MM-DDTHH:MM:SS.SSSZ",
  "accountAggregation" : true,
  "banks": [
    {
      "code": "Enter_Bank_Code",
      "consentId":"Enter_Consent_Id"
    }
  ]
}

Request description

JSON TagDescriptionData type
DateTimeStamp
Mandatory
Stamp denoting the date and time of the requestString
RequestID
Mandatory
Unique request identificationString
merchantId
Mandatory
Unique merchant identificationString
fromDate
Mandatory
Initial date of transaction periodString
toDate
Mandatory
Final date of transaction periodString
accountAggregation
Mandatory
Account aggregation service tag to be denoted as trueBoolean
banks
Mandatory
Array of banks and consentsObject
code
Mandatory
Unique bank identification codeString
consentId
Mandatory
Unique consent identificationString

Sample response

{
  "success": true,
  "payload": [
    {
      "code": "Bank_Code",
      "data": {
        "account": [
          {
            "accountId": "Account_Id",
            "accountHolderName": "Account_Holder_Name",
            "accountHolderShortName": "Account_Holder_Short_Name",
            "status": "Account_Status",
            "currency": "Currency",
            "nickname": "Account_Nickname",
            "accountType": "Account_Type",
            "accountSubType": "Account_Sub_Type",
            "accountIdentifiers": [
              {
                "identificationType": "Identification_Type",
                "identification": "Identification_Details",
                "name": "Name"
              },
              {
                "identificationType": "Identification_Type",
                "identification": "Identification_Details",
                "name": "Name"
              }
            ],
            "servicer": {
              "identificationType": "Servicer_Identification_Type",
              "identification": "Servicer_Identification"
            },
            "statusUpdateDateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
            "description": "Account_Description",
            "openingDate": "YYYY-MM-DDTHH:MM:SS.SSSZ",
            "maturityDate": "YYYY-MM-DDTHH:MM:SS.SSSZ",
            "balance": [
              {
                "amount": {
                  "amount": "0000.00",
                  "currency": "Currency"
                },
                "creditDebitIndicator": "Credit_or_Debit",
                "type": "Type_Indicator",
                "dateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
                "creditLine": [
                  {
                    "included": true,
                    "type": "Credit_Line_Type",
                    "amount": {
                      "amount": "0000.00",
                      "currency": "Currency"
                    }
                  }
                ]
              }
            ],
            "creditData": {
              "transactions": [
                {
                  "transactionId": "Transaction_Id",
                  "transactionDateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
                  "transactionReference": "Transaction_Reference",
                  "transactionType": "Transaction_Type",
                  "subTransactionType": "Transaction_Sub_Type",
                  "paymentModes": "Payment_Modes",
                  "creditDebitIndicator": "Credit_Debit_Indicator",
                  "status": "Status",
                  "transactionMutability": "Transaction_Mutability",
                  "bookingDateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
                  "valueDateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
                  "amount": {
                    "amount": "0.00",
                    "currency": "Currency"
                  },
                  "chargeAmount": {
                    "amount": "0.00",
                    "currency": "Currency",
                    "chargeIncluded": true, "or": false
                  },
                  "balance": {
                    "creditDebitIndicator": "Credit_Debit_Indicator",
                    "type": "Type",
                    "amount": {
                      "amount": "00.00",
                      "currency": "Currency"
                    }
                  },
                  "merchantDetails": {
                    "merchantName": "Merchant_Name",
                    "merchantCategoryCode": "Merchant_Category_Code",
                    "merchantId": "Merchant_Id\r\n                  "},
                  "localTimeZone": "XXX+HH:MM",
                  "terminalId": "terminal_Id",
                  "chargeAmountVat": {
                    "amount": "00.0000",
                    "currency": "Currency"
                  },
                  "flags": [
                    "Flag_Details"
                  ],
                  "cardInstrument": {
                    "cardSchemeName": "Card_Scheme_Name",
                    "instrumentType": "Instrument_Type",
                    "name": "Name",
                    "identification": "Identification_Details"
                  },
                  "creditorAccount": [
                    {}
                  ],
                  "debtorAccount": {
                    "identificationType": "Debit_Account",
                    "identification": "Identification_Details",
                    "name": "Name"
                  },
                  "transactionInformation": "Transaction_Info",
                  "bankTransactionCode": {
                    "domain": "Domain",
                    "domainCode": "Domain_Code",
                    "family": "Family",
                    "familyCode": "Family_Code",
                    "subFamily": "Sub_Family",
                    "subFamilyCode": "Sub_Family_Code"
                  },
                  "proprietaryBankTransactionCode": {
                    "code": "Code",
                    "issuer": "Issuer"
                  },
                  "creditorAgent": {
                    "identificationType": "Identification_Type",
                    "identification": "Identification",
                    "postalAddress": {
                      "addressType": "Address_Type",
                      "streetName": "Street_Name",
                      "buildingNumber": "Building_Number",
                      "postalCode": "Postal_Code",
                      "city": "City_Name",
                      "country": "Country",
                      "shortAddress": "Short_Address",
                      "unitNumber": "Unit_Number",
                      "secondaryNumber": "Secondary_Number",
                      "district": "District"
                    },
                    "name": "Name"
                  },
                  "debtorAgent": {
                    "identificationType": "Identification_Type",
                    "identification": "Identification",
                    "postalAddress": {
                      "addressType": "Address_Type",
                      "streetName": "Street_Name",
                      "buildingNumber": "Building_Number",
                      "postalCode": "Postal_Code",
                      "city": "City_Name",
                      "country": "Country",
                      "shortAddress": "Short_Address",
                      "unitNumber": "Unit_Number",
                      "secondaryNumber": "Secondary_Number",
                      "district": "District"
                    },
                    "name": "Name"
                  },
                  "billDetails": {
                    "billerId": "Biller_Id",
                    "billNumber": "Bill_Number",
                    "billPaymentType": "Bill_Payment_Type"
                  },
                  "merchantCategoryCode": "Merchant_Category_Code"
                },
                {
                  "transactionId": "Transaction_Id",
                  "transactionDateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
                  "transactionReference": "Transaction_Reference",
                  "transactionType": "Transaction_Type",
                  "subTransactionType": "Transaction_Sub_Type",
                  "paymentModes": "Payment_Modes",
                  "creditDebitIndicator": "Credit_Debit_Indicator",
                  "status": "Status",
                  "transactionMutability": "Transaction_Mutability",
                  "bookingDateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
                  "valueDateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
                  "amount": {
                    "amount": "0.00",
                    "currency": "Currency"
                  },
                  "chargeAmount": {
                    "amount": "0.00",
                    "currency": "Currency",
                    "chargeIncluded": true, "or": false
                  },
                  "balance": {
                    "creditDebitIndicator": "Credit_Debit_Indicator",
                    "type": "Type",
                    "amount": {
                      "amount": "00.00",
                      "currency": "Currency"
                    }
                  },
                  "merchantDetails": {
                    "merchantName": "Merchant_Name",
                    "merchantCategoryCode": "Merchant_Category_Code",
                    "merchantId": "Merchant_Id\r\n                  "},
                  "localTimeZone": "XXX+HH:MM",
                  "terminalId": "terminal_Id",
                  "chargeAmountVat": {
                    "amount": "00.0000",
                    "currency": "Currency"
                  },
                  "flags": [
                    "Flag_Details"
                  ],
                  "cardInstrument": {
                    "cardSchemeName": "Card_Scheme_Name",
                    "instrumentType": "Instrument_Type",
                    "name": "Name",
                    "identification": "Identification_Details"
                  },
                  "creditorAccount": [
                    {}
                  ],
                  "debtorAccount": {
                    "identificationType": "Debit_Account",
                    "identification": "Identification_Details",
                    "name": "Name"
                  },
                  "transactionInformation": "Transaction_Info",
                  "bankTransactionCode": {
                    "domain": "Domain",
                    "domainCode": "Domain_Code",
                    "family": "Family",
                    "familyCode": "Family_Code",
                    "subFamily": "Sub_Family",
                    "subFamilyCode": "Sub_Family_Code"
                  },
                  "proprietaryBankTransactionCode": {
                    "code": "Code",
                    "issuer": "Issuer"
                  },
                  "creditorAgent": {
                    "identificationType": "Identification_Type",
                    "identification": "Identification",
                    "postalAddress": {
                      "addressType": "Address_Type",
                      "streetName": "Street_Name",
                      "buildingNumber": "Building_Number",
                      "postalCode": "Postal_Code",
                      "city": "City_Name",
                      "country": "Country",
                      "shortAddress": "Short_Address",
                      "unitNumber": "Unit_Number",
                      "secondaryNumber": "Secondary_Number",
                      "district": "District"
                    },
                    "name": "Name"
                  },
                  "debtorAgent": {
                    "identificationType": "Identification_Type",
                    "identification": "Identification",
                    "postalAddress": {
                      "addressType": "Address_Type",
                      "streetName": "Street_Name",
                      "buildingNumber": "Building_Number",
                      "postalCode": "Postal_Code",
                      "city": "City_Name",
                      "country": "Country",
                      "shortAddress": "Short_Address",
                      "unitNumber": "Unit_Number",
                      "secondaryNumber": "Secondary_Number",
                      "district": "District"
                    },
                    "name": "Name"
                  },
                  "billDetails": {
                    "billerId": "Biller_Id",
                    "billNumber": "Bill_Number",
                    "billPaymentType": "Bill_Payment_Type"
                  },
                  "merchantCategoryCode": "Merchant_Category_Code"
                }
              ],
              "count": "00",
              "totalAmount": "0000.00",
              "merchantCodeList": [
                {
                  "code": "Merchant_Code",
                  "count": "00",
                  "amount": "0000.00",
                  "avgAmount": "000.00"
                }
              ]
            }
          },
          {
            "accountId": "Account_Id",
            "accountHolderName": "Account_Holder_Name",
            "accountHolderShortName": "Account_Holder_Short_Name",
            "status": "Account_Status",
            "currency": "Currency",
            "nickname": "Account_Nickname",
            "accountType": "Account_Type",
            "accountSubType": "Account_Sub_Type",
            "accountIdentifiers": [
              {
                "identificationType": "Identification_Type",
                "identification": "Identification_Details",
                "name": "Name"
              },
              {
                "identificationType": "Identification_Type",
                "identification": "Identification_Details",
                "name": "Name"
              }
            ],
            "servicer": {
              "identificationType": "Servicer_Identification_Type",
              "identification": "Servicer_Identification"
            },
            "statusUpdateDateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
            "description": "Account_Description",
            "openingDate": "YYYY-MM-DDTHH:MM:SS.SSSZ",
            "maturityDate": "YYYY-MM-DDTHH:MM:SS.SSSZ",
            "balance": [
              {
                "amount": {
                  "amount": "0000.00",
                  "currency": "Currency"
                },
                "creditDebitIndicator": "Credit_or_Debit",
                "type": "Type_Indicator",
                "dateTime": "YYYY-MM-DDTHH:MM:SS.SSSZ",
                "creditLine": [
                  {
                    "included": true,
                    "type": "Credit_Line_Type",
                    "amount": {
                      "amount": "0000.00",
                      "currency": "Currency"
                    }
                  }
                ]
              }
            ]
          }
        ],
        "totalOpeningBalance": "0000",
        "totalAvailableBalance": "0000",
        "totalClosingAvailable": "0000",
        "currency": "Currency"
      },
      "links": {
        "self": "https://"
      },
      "meta": {
        "totalPages": 0
      }
    }
  ],
  "overAllBalance": {
    "totalOpeningBalance": "0000",
    "totalAvailableBalance": "0000",
    "totalClosingAvailable": "0000",
    "currency": "Currency"
  },
  "overAllTxns": {
    "totalCredit": "0000.00",
    "totalCreditCount": "00",
    "totalDebit": 0,
    "totalDebitCount": 0
  }
}

Response description

JSON TagDescription
successProcess success status represented as true or false
payloadTag carrying the response information
codeUnique bank identification code
dataTag carrying the response data of the accounts
accountTag carrying a specific account information
accountIdUnique bank account identification code
accountHolderNameFull name of the account holder
accountHolderShortNameShort name of the account holder
statusCurrent status of the account as active or inactive
currencyDefault currency of the account
nicknameNickname of the account holder
accountTypeType of the account
accountSubTypeSub-type of the account
accountIdentifiersAccount identifiers information tag
identificationTypeType of account identification
identificationUnique identification details
nameName of the account as per identification
servicerAccount servicer details tag
identificationTypeType of servicer account identification
identificationUnique servicer identification details
statusUpdateDateTimeEffective date and time of the last update of account information
descriptionDescription of the account information
openingDateDate of opening of the bank account
maturityDateDate of maturity of the bank account
balanceTag carrying account balance information
amountTag carrying cash balance information
amountCash balance amount
currencyDefault currency of the account in which the balance is indicated
creditDebitIndicatorIndicates whether the balance is a credit or a debit balance
typeIndicator type details
dateTimeDate and time information of the indicator
creditLineTag carrying credit line information
includedStatus of credit line as included or excluded
typeType of credit line details
amountTag carrying amount information of credit line
amountAvailable amount in credit line
currencyCurrency in which the credit line balance is indicated
creditDataTag carrying information on credit data
transactionsTag carrying account transactions information
transactionIdUnique transaction identification
transactionDateTimeTime and date of the transaction executed
transactionReferenceUnique transaction reference details
transactionTypeType of transaction
subTransactionTypeSub-type of the transaction
paymentModesMode of the payment
creditDebitIndicatorCredit or debit indicator for the transaction
statusStatus of the transaction
transactionMutabilityMutability factor of the transaction
bookingDateTimeDate and time of booking the transaction
valueDateTimeDate and time of transaction value
amountTag carrying transaction amount information
amountTransaction amount
currencyDefault currency of the account in which the transaction amount is indicated
chargeAmountTag carrying transaction charges information
amountTotal amount charged for the transaction
currencyDefault currency of account in which the transaction charge amount is indicated
chargeIncludedIndicates if the charge amount is included in transaction amount as true or false
balanceBalance info after the transaction
creditDebitIndicatorIndicates whether the balance is a credit or a debit balance
typeIndicator type details
amountTag carrying balance amount information
amountAvailable amount balance
currencyCurrency in which the balance is indicated
merchantDetailsTag carrying merchant details
merchantNameName of the merchant
merchantCategoryCodeAssigned merchant category code
merchantIdUnique merchant identification
localTimeZoneLocal time zone information
terminalIdUnique terminal identification
chargeAmountVatTag carrying VAT amount charges and details
amountVAT amount charged
currencyCurrency of VAT amount charged indicated
flagsTag carrying flags as array of strings
cardInstrumentTag carrying card details
cardSchemeNameScheme name description of the card
instrumentTypeType of instrument used for the card payment
nameName on the card
identificationUnique card identification
creditorAccountTag carrying creditor account information
debtorAccountTag carrying debtor account information
identificationTypeType of identification of the account
identificationAccount identification details
nameName of the account holder
transactionInformationDetails of the transaction information
bankTransactionCodeTag carrying transaction bank codes
domainDomain details
domainCodeDomain code
familyDomain family details
familyCodeDomain family code
subFamilyDomain sub-family details
subFamilyCodeDomain sub-family code
proprietaryBankTransactionCodeTag representing proprietary bank transaction code and details
codeUnique proprietary transaction code
issuerName of the issuer of the code
creditorAgentTag carrying creditor agent information
debtorAgentTag carrying debtor agent information
identificationTypeType of identification of the creditor/debtor account
identificationUnique identification details of the creditor/debtor account
postalAddressPostal address of the creditor/debtor account
addressTypeAddress type on the creditor/debtor account
streetNameStreet name on the creditor/debtor account
buildingNumberBuilding number of the creditor/debtor account
postalCodePostal code on the creditor/debtor
cityCity of the creditor/debtor
countryCountry of the creditor/debtor
shortAddressShort address of the creditor/debtor
unitNumberUnit number of the creditor/debtor
secondaryNumberSecondary number of the creditor/debtor
districtDistrict of the creditor/debtor
nameName of the creditor/debtor
billDetailsTag carrying bill details
billerIdUnique biller identification
billNumberBill number
billPaymentTypePayment type for the bill
merchantCategoryCodeMerchant Category Code
overallBalanceTag carrying information on overall balances
totalOpeningBalanceTotal opening balance
totalAvailableBalanceTotal available balance
totalClosingBalanceTotal closing balance
currencyCurrency of the overall balance indicated
linksRedirect link
selfOwn link/URL details
metaMeta tag
totalPagesInformation displayed in terms of pages
overAllTxnsTag carrying information on the overall transactions included in the response
totalCreditTotal credit amount found in the response
totalCreditCountTotal number of crediting transactions in the response
totalDebitTotal debit amount found in the response
totalDebitCountTotal number of debiting transactions in the response