cpb-accounts-and-transactions-api-overview

Key Features
Easy Access to Data

Provide detailed customer account data with a simple API call.

Multi-Purpose API

Provides easy access to data for any idea, product or service.

No More Screen Scraping

There is no need for your customer's credentials. The industry standard API provides access to account info and data you need in a faster and structured manner.

Use Cases
Security of Financial Information

The strong customer authentication will provide access to customer's financial information safely and securely.

Personal Financial Management

The availability of the customer's financial data to Third Party Providers securely will act as added advantage for customers to get personal financial management services from third-party financial institutions or banks.

Financial Metrics for Consumers

Consumers can use real-time data concerning their income, expenses and exposures to continuously understand their financial position (e.g. categories of spending, projected savings/deficits), in addition to aggregation of financial metrics, such as net worth and savings across multiple accounts.

How it Works

Account Details and Identifiers
Get an overview of the Citi Private Bank customer's accounts, identifiers and other details.

Account Type and Subtype
Retrieve the account type and subtype for the Citi Private Bank customer's accounts.

Currency
Retrieve the currency in which the accounts are held.

 

{ "Data": { "Account": [ {"AccountId": "111001","Currency": "GBP","AccountType": "Personal","AccountSubType": "CurrentAccount","Nickname": "Bills","Account": {"SchemeName": "UK.OBIE.SortCodeAccountNumber","Identification": "80200110203345","Name": "John Doe","SecondaryIdentification": "00021" } }, {"AccountId": "111002","Currency": "GBP","AccountType": "Personal","AccountSubType": "CurrentAccount","Nickname": "Household","Account": {"SchemeName": "UK.OBIE.SortCodeAccountNumber","Identification": "80200110203348","Name": "John Doe" } } ] }}

Deviations

Deviations from Open Banking Specifications
Item Notes Sample Response

In GET/Balances endpoint

under CreditLine/Amount object , Amount and Currency fields will not be populated

CPB will not send the fields for CreditLine/Amount object  

In GET /beneficiaries endpoint

under CreditorAccount object, SchemeName field will not be populated.

CPB will not send the Scheme name of the Creditor Account.  

In GET /scheduled-payments and GET /accounts/{AccountId}/scheduled-payments endpoints,

under CreditorAccount object, SchemeName field will not be populated

CPB will not send the Scheme name of the Creditor Account.  

In GET /standing-orders and GET /accounts/{AccountId}/standing-orders endpoints

under CreditorAccount object, SchemeName field will not be populated

CPB will not send the Scheme name of the Creditor Account.  

In GET /scheduled-payments and GET /accounts/{AccountId}/scheduled-payments endpoints

under CreditorAgent object, SchemeName field will be populated only for the relevant response (i.e. "SWIFT") else the field is not populated

CPB will not send the Scheme name of the Creditor Agent, if it is not swift message.

Case 1 : When SchemeName is SWIFT

  "Data": {
    "ScheduledPayment": [
      {
       
        "CreditorAgent": {
          "SchemeName""UK.OBIE.BICFI",
          "Identification""CITIUK33",
          "Name""Mr Tee"
        }
      }

 

Case 2 : When SchemeName is not SWIFT

  "Data": {
    "ScheduledPayment": [
      {
       
        "CreditorAgent": {
      
          "Identification""083300",
          "Name""Mr Tee"
        }
      }

In GET /standing-orders and GET /accounts/{AccountId}/standing-orders endpoints

under CreditorAgent object, SchemeName field will be populated only for the relevant response (i.e. "SWIFT") else the field is not populated

CPB will not send the Scheme name of the Creditor Agent, if it is not swift message.

Case 1 : When SchemeName is SWIFT

  "Data": {
    "StandingOrder": [
      {
       
        "CreditorAgent": {
          "SchemeName""UK.OBIE.BICFI",
          "Identification""CITIUK33",
          "Name""Mr Tee"
        }
      }

 

Case 2 : When SchemeName is not SWIFT

  "Data": {
    "StandingOrder": [
      {
       
        "CreditorAgent": {
      
          "Identification""083300",
          "Name""Mr Tee"
        }
      }

 

 

Available Markets
UNITED KINGDOM

For further information on Citi Private Bank’s API solution please email us at psd2.cpb@citi.com