Table of Contents | ||||
---|---|---|---|---|
|
1. Version Control
Version | Date | Description of Changes |
Bahrain OBF v1.0.0 | 25th Aug 2020 | Initial Release |
2. Overview
The product supplementary account info resource is used by an AISP to retrieve the account product information for a specific AccountId.The products resource is used by an AISP to retrieve the products for all authorised accounts linked to a specific account-request.
This resource description should be read in conjunction with a compatible Account Information Services API Profile.
...
3. Endpoints
Endpoints for the resource - and available methods.
S. No. | Resource | HTTP Operation | Endpoint | Mandatory | ?Scope | Grant Type | Idempotency Key | Parameters | Request Object | Response Object | ||||||||||||
3.1products | supplementary-account-info | GET | GET /accounts/{AccountId}/product | Conditional | accounts | Authorization Code | No |
|
| OBReadProduct | 2 | products | GET | GET /products | supplementary-account-info | Optional | accounts | Authorization Authorisation Code | No | PaginationOBReadSupplementaryAccountInfoOBReadSupplementaryAccountInfo |
...
OBReadProduct
...
3.1 GET /accounts/{AccountId}/
...
supplementary-account-info
An AISP may retrieve the account product information for a specific AccountId (which is retrieved in the call to GET /accounts). While this This endpoint is marked as Conditional, it will be Mandatory Optional for ASPSPs and account types covered in the CMA Order.
2.2 GET /products
If an ASPSP has implemented the bulk retrieval endpoints for products an AISP may optionally retrieve the products information in bulk. This endpoint will retrieve the products resources for all authorised accounts linked to a specific account-request
...
.
4. Data Model
The OBReadProduct OBReadSupplementaryAccountInfo OBReadSupplementaryAccountInfo object will be used for the call to:
GET /accounts/{AccountId}/product
GET /products
...
supplementary-account-info
4.1 UML Diagram
...
...
4.2 Permission Codes
The resource requires the ReadProducts ReadSupplementaryAccountInfo permission. The resource response payload does not differ depending on the permissions granted.
...
4.3 Data Dictionary
Name | Occurrence | XPath | EnhancedDefinitionEnhanced Definition | Class/ Datatype | Codes | Pattern | |||||||||||||||||||||||||||||||||||||||||||
OBReadSupplementaryAccountInfo | OBReadProduct | OBReadSupplementaryAccountInfo |
| OBReadProductOBReadSupplementaryAccountInfo |
| OBReadProduct | |||||||||||||||||||||||||||||||||||||||||||
Data | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data |
| OBReadProductOBReadSupplementaryAccountInfo/Data | CASA |
| |||||||||||||||||||||||||||||||||||||||||||
ReadAccount | 0..n1 | OBReadProductOBReadSupplementaryAccountInfo/Data/CASAReadAccount |
| OBReadProductOBReadSupplementaryAccountInfo/Data/CASAReadAccount |
|
| |||||||||||||||||||||||||||||||||||||||||||
AccountID | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/CASAReadAccount/AccountID | A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. | String | AccountType | 1..1 | OBReadProduct/Data/CASA/AccountType | Type of account as classified by the ASPSP (eg. Savings Account, Current account) | String | ProductTypeDescription |
|
| |||||||||||||||||||||||||||||||||||||
DateTime | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/CASAReadAccount/ProductTypeDescription | Full description of the product | String | Name | 1..1 | OBReadProduct/Data/CASA/Name | Full name of the account holder | String | BranchName | 1..1 | OBReadProduct/Data/CASA/BranchName | Branch Name | String | AccountStatus | 1..1 | OBReadProduct/Data/CASA/AccountStatus | Specifies the status of account resource in code form. | String | AccountClosed | 1..1 | OBReadProduct/Data/CASA/AccountClosed | Y or N | String | Currency | 1..1 | OBReadProduct/Data/CASA/Currency | Identification of the currency in which the account is held. | String | AvailableBalance | 1..1 | OBReadProduct/Data/CASA/AvailableBalance | Withdrawable balance + funds in clearing | String | EffectiveAvailableBalance | 1..1 | OBReadProduct/Data/CASA/EffectiveAvailableBalance | Withdrawable balance | String | DateTime | Date on which the account and related basic services are effectively operational for the account owner | DateTime |
|
| |||||
ReadCASAInfo | 0..1 | OBReadSupplementaryAccountInfo/Data/ReadAccount/ReadCASAInfo |
| OBReadSupplementaryAccountInfo/Data/ReadAccount/ReadCASAInfo |
|
| |||||||||||||||||||||||||||||||||||||||||||
LienAmount | 0..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/CASAReadAccount/ReadCASAInfo /LienAmount | Lien amount marked | String |
|
| |||||||||||||||||||||||||||||||||||||||||||
ExchangeRate Rate | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/ReadAccount/CASAReadCASAInfo /ExchangeRate | Factor 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). | String | AccountOpeningDate | 1..1 | OBReadProduct/Data/CASA/AccountOpeningDate | Account opening date | DateTime | AccountClosingDate | 1..1 | OBReadProduct/Data/CASA/AccountClosingDate | If the account is closed then Account closed date should be available. | DateTime | JointHoldersName | 0..1 | OBReadProduct/Data/CASA/JointHoldersNameRate | Rate charged for the account (where it is charged in terms of a rate rather than an amount)- In Islamic banking, this field is referred to as ‘Profit/ Charge’ | String |
|
| ||||||||||||||||||||||||||||
JointHolderName | 0..1 | OBReadSupplementaryAccountInfo/Data/ReadAccount/ReadCASAInfo /JointHolderName | List of joint account holder name | String | Investment | 0..n | OBReadProduct/Data/Investment |
| OBReadProduct/Data/Investment | AccountID | 1 |
| |||||||||||||||||||||||||||||||||||||
ReadDepositInfo | 0..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/InvestmentReadAccount/AccountID | A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. | String | AccountType | 1..1 | OBReadProductReadDepositInfo |
| OBReadSupplementaryAccountInfo/Data/InvestmentReadAccount/AccountType | Type of account as classified by the ASPSP (eg. Savings Account, Current account) | String | ProductTypeDescription ReadDepositInfo |
|
| |||||||||||||||||||||||||||||||||||
Rate | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/Investment/ProductTypeDescription | Full description of the product | String | Name | 1..1 | OBReadProduct/Data/Investment/Name | Full name of the account holder | String | BranchName | 1..1 | OBReadProduct/Data/Investment/BranchName | Branch Name | String | AccountStatus ReadAccount/ReadDepositInfo /Rate | Rate charged for the account (where it is charged in terms of a rate rather than an amount)- In Islamic banking, this field is referred to as ‘Profit/ Charge’ | String |
|
| ||||||||||||||||||||||||||||||
InitialDepositAmount | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/ReadAccount/InvestmentReadDepositInfo /AccountStatus Specifies the status of account resource in code form.InitialDepositAmount | Initial deposit amount | String | AccountClosed | 1..1 | OBReadProduct/Data/Investment/AccountClosed | Y or N | String | Currency |
|
| |||||||||||||||||||||||||||||||||||||
DepositFrequency | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/InvestmentReadAccount/ReadDepositInfo /Currency Identification of the currency in which the account is held.DepositFrequency | Regularity with which deposit are made/processed to the account | StringRate | DepositTerms - Days | 1..1 | OBReadProduct/Data/Investment/DepositTerms - Days | Deposit term in days | String | Enum:1
| OBReadProduct/Data/Investment/Rate | Interest rate / profit rate for islamic banks | String | InitialDepositAmount | 1..1 | OBReadProduct/Data/Investment/InitialDepositAmount | Initial deposit amount | String | DepositTerms- Months | 1..1 | OBReadProduct/Data/Investment/DepositTerms- Months | Deposit terms in months (in case of years convert to months) | String |
|
| ||||||||||||||||||||||||
MaturityAmount | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/ReadAccount/InvestmentReadDepositInfo /MaturityAmount | Maturity Amount | String |
|
| |||||||||||||||||||||||||||||||||||||||||||
MaturityDate | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/ReadAccount/InvestmentReadDepositInfo /MaturityDate | Maturity Date | DateTime | ExchangeRate | 1..1 | OBReadProduct/Data/Investment/ExchangeRate | Factor 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). | String | AccountOpeningDate | 1..1 | OBReadProduct/Data/Investment/AccountOpeningDate | Account opening date | DateTime | AccountClosingDate | 1..1 | OBReadProduct/Data/Investment/AccountClosingDate | If the account is closed then Account closed date should be available. | DateTime | JointHoldersName | 0..1 | OBReadProduct/Data/Investment/JointHoldersName |
|
| |||||||||||||||||||||||||
JointHolderName | 0..1 | OBReadSupplementaryAccountInfo/Data/ReadAccount/ReadDepositInfo /JointHolderName | List of joint account holder name | String | Loans | 0..n | OBReadProduct/Data/Loans |
| OBReadProduct/Data/Loans | AccountID | 1 |
| |||||||||||||||||||||||||||||||||||||
ReadLoanMortgageInfo | 0..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/LoansReadAccount/ AccountID | A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. | String | LoanType | 1..1 | OBReadProduct/Data/Loans/LoanType | Type of loan as classified by the ASPSP | String | ProductTypeDescription | 1..1 | OBReadProduct/Data/Loans/ProductTypeDescription | Full description of the product | String | Name | 1..1 | OBReadProduct/Data/Loans/Name | Full name of the account holder | String | BranchName ReadLoanMortgageInfo | In Islamic banking, this field is referred to as ‘Financing/ Property Finance' | OBReadSupplementaryAccountInfo/Data/ReadAccount/ ReadLoanMortgageInfo |
|
| |||||||||||||||||||||||||
Rate | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/Loans/BranchName | Branch Name | String | AccountStatus | 1..1 | OBReadProduct/Data/Loans/AccountStatus | Specifies the status of account resource in code form. | String | AccountClosed | 1..1 | OBReadProduct/Data/Loans/AccountClosed | Y or N | String | Currency | 1..1 | OBReadProduct/Data/Loans/Currency | Identification of the currency in which the loan is held. | String | Rate | 1..1 | OBReadProduct/Data/Loans/Rate | Interest rate / profit rate for islamic banks | StringReadAccount/ ReadLoanMortgageInfo /Rate | Rate charged for the account (where it is charged in terms of a rate rather than an amount)- In Islamic banking, this field is referred to as ‘Profit/ Charge’ | String |
|
| |||||||||||||||||||||
LoanAmount | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/ReadAccount/ LoansReadLoanMortgageInfo /LoanAmount | Initial Loan Amount issued to the account- In Islamic banking, this field is referred to as ‘Finance Amount’ | String |
|
| |||||||||||||||||||||||||||||||||||||||||||
DisbursedAmount | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/ReadAccount/ LoansReadLoanMortgageInfo /DisbursedAmount | Disbursed Amount till date to the account | String |
|
| |||||||||||||||||||||||||||||||||||||||||||
OutstandingLoanAmount | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/LoansReadAccount/ ReadLoanMortgageInfo /OutstandingLoanAmount | Outstanding Loan Amount- In Islamic banking, this field is referred to as ‘Outstanding Finance Amount’ | String |
|
| |||||||||||||||||||||||||||||||||||||||||||
Numberofinstallments | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/ReadAccount/ LoansReadLoanMortgageInfo /Numberofinstallments | Number of installments | String | LoanTerms - Months |
| |||||||||||||||||||||||||||||||||||||||||||
LoanFrequency | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/ReadAccount/ LoansReadLoanMortgageInfo /LoanTerms - Months | Deposit terms in months (in case of years convert to months) | String | DepositTerms - Days | 1..1 | OBReadProduct/Data/Loans/DepositTerms - Days | Deposit term in days | String | ExchangeRate | 1..1 | OBReadProduct/Data/Loans/ExchangeRate | Factor 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). | String | AccountOpeningDate | 1..1 | OBReadProduct/Data/Loans/AccountOpeningDate | Account opening date | DateTime | AccountClosingDate | 1..1 | OBReadProduct/Data/Loans/AccountClosingDate | If the account is closed then Account closed date should be available. | DateTime | JointHoldersName | 0..1 | OBReadProduct/Data/Loans/JointHoldersNameLoanFrequency | Regularity with which the installment is applied to the Account | String | Enum:
|
| ||||||||||||||||||
JointHolderName | 0..1 | OBReadSupplementaryAccountInfo/Data/ReadAccount/ ReadLoanMortgageInfo /JointHolderName | List of joint account holder name | String | CreditCards | 0..n | OBReadProduct/Data/CreditCards |
| OBReadProduct/Data//CreditCards | ||||||||||||||||||||||||||||||||||||||||
CardNumber | 1ReadCreditCardInfo | 0..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/CreditCardsReadAccount/ CardNumber | Card number (Masked card details) | String | CardIssuer | 1..1 | OBReadProductReadCreditCardInfo |
| OBReadSupplementaryAccountInfo/Data/CreditCardsReadAccount/ CardIssuer | Card issuer (e.g VISA) | String | CardType ReadCreditCardInfo |
|
| ||||||||||||||||||||||||||||||||||
Rate | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/CreditCards/CardType | Primary or Secondary | String | ProductTypeDescription | 1..1 | OBReadProduct/Data/CreditCards/ProductTypeDescription | Full description of the product | String | Name | 1..1 | OBReadProduct/Data/CreditCards/Name | Full Name | String | BranchName | ReadAccount/ ReadCreditCardInfo /Rate | Rate charged for the account (where it is charged in terms of a rate rather than an amount)- In Islamic banking, this field is referred to as ‘Profit/ Charge’ | String |
|
| |||||||||||||||||||||||||||||
CardLimit | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/CreditCards/BranchName | Branch Name | String | CardStatus | 1..1 | OBReadProduct/Data/CreditCards/CardStatus | Specifies the status of card resource in code form. | String | CardClosed | 1..1 | OBReadProduct/Data/CreditCards/CardClosed | Y or N | String | Currency | 1..1 | OBReadProduct/Data/CreditCards/Currency | Identification of the currency in which the account is held. | String | CardBalance | 1..1 | OBReadProduct/Data/CreditCards/CardBalance | Card Balance | String | Rate | 1..1 | OBReadProduct/Data/CreditCards/Rate | Interest rate / profit rate for islamic banks | String | CardLimit | 1..1 | OBReadProduct/Data/CreditCards/CardLimit | Card Limit | String | MinimumDue | 1..1 | OBReadProduct/Data/CreditCards/MinimumDue | Minimum Amount payable | String | TotalDue | 1..1 | OBReadProduct/Data/CreditCards/TotalDue | Total Amount payable | String | PaymentDueDate ReadAccount/ ReadCreditCardInfo /CardLimit | Credit Limit applied to the account | String |
|
|
GracePeriod | 0..1 | OBReadSupplementaryAccountInfo/Data/ReadAccount/ ReadCreditCardInfo/ GracePeriod | The duration after the due date during which the payment can be received without penalty | String |
|
| |||||||||||||||||||||||||||||||||||||||||||
URL | 0..1 | OBReadSupplementaryAccountInfo/Data/ReadAccount/ ReadCreditCardInfo/URL | Uniform resource locator of the specified product | String |
|
| |||||||||||||||||||||||||||||||||||||||||||
ReadEWalletInfo | 0..1 | OBReadSupplementaryAccountInfo/Data/ReadAccount/ ReadEWalletInfo |
| OBReadSupplementaryAccountInfo/Data/ReadAccount/ ReadEWalletInfo |
|
| |||||||||||||||||||||||||||||||||||||||||||
Charge | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/CreditCards/PaymentDueDate | Payment Due date | DateTime | AddOnCards | 1..1 | OBReadProduct/Data/CreditCards/AddOnCards | Number of add-on cards (supplementary cards) | String | ExchangeRate ReadAccount/ ReadEWalletInfo/Charge | Fee charged for the account (where it is charged in terms of an amount)
| String |
|
| |||||||||||||||||||||||||||||||||||
ChargeFrequency | 1..1 | OBReadProductOBReadSupplementaryAccountInfo/Data/ReadAccount/ CreditCardsReadEWalletInfo/ ExchangeRate | Factor 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). | String | CardIssueDate | 1..1 | OBReadProduct/Data/CreditCards/CardIssueDate | Card Issue date | DateTime | CardClosingDate | 1..1 | OBReadProduct/Data/CreditCards/CardClosingDate | If the Card is closed then Account closed date should be available. | DateTime |
4. Usage Example
4.1 Specific Account
...
ChargeFrequency | Regularity with which the fee is applied to the Account | String | Enum:
|
|
5. Usage Example
5.1 Get Supplementary Account Info
5.1.1 Request
|
...
5.1.2 Response
Get Product Response |
|
4.2 Bulk Account
4.2.1 Get Products Request
|
4.2.2 Get Products Response
|
|
CENTRAL BANK OF BAHRAIN © 2020