Balance Enquiry
Retrieve single or multiple bank account balances
SingleView B2B API services Balance Enquiry allows users with access to request and retrieve specific user bank account balances. Corporate Customers can use this B2B service to enquire about their real-time account Information, which includes Customer Name, Account Status, Account Number, Account Currency, and Available Balance.
Mandatory information
- The user must provide the valid credentials in the header
- Encrypted and valid Signature and an active "Access Token."
- Request format as specified with all the mandatory details with appropriate request tags
🌐Domain details
- Sandbox API - https://sandboxapi.onesingleview.com
- Production/LIVE API - To be provided upon onboarding
Get Balance Enquiry
Endpoint details
Endpoint URL | Method | Authentication requirements |
---|---|---|
/api/v1/account/balance | POST | 1. clientsecret 2. clientid 3. SVReferenceID 4. CompanyID 5. BaseCurrency 6. Authorization: Bearer 7. Signature |
Sample request
curl --location 'https://sandboxapi.onesingleview.com/api/v1/account/balance' \
--header 'clientsecret: Enter-Client-Secret' \
--header 'clientid: Enter-Client-Id' \
--header 'SVReferenceID: Enter-SV-Reference-Id' \
--header 'Device: Device-type' \
--header 'DateTimeStamp: YYYY-MM-DDTHH:MM:SS' \
--header 'CompanyId: Enter-Company-Id' \
--header 'BaseCurrency: SAR' \
--header 'Authorization: Bearer <Enter-Token>' \
--header 'Content-Type: application/json' \
--data '{
"Message": {
"OSVBalanceEnquiryRequest": {
"StartDate": "YYYY-MM-DDTHH:MM:SS",
"EndDate": "YYYY-MM-DDTHH:MM:SS",
"DateTimeStamp": "YYYY-MM-DDTHH:MM:SS",
"SVRefId": "Enter_SingleView_Reference_ID",
"TransactionType": "Enter_Transaction_Type",
"OSVPaymentInfoMessage": [
{
"OSVPaymentInfoRequest": {
"BankCode": "Enter_Bank_Code",
"CompanyCode": "Enter_Company_Code",
"B2BIdentifier": "Enter_B2B_Identifier",
"B2BUserId": "Enter_B2B_User_ID",
"B2BUrn": "Enter_B2B_URN",
"B2BAggrId": "Enter_B2B_Aggregator_ID",
"AccountNumbers": {
"AccountNumber": [
{
"AccNumber": "Account_Number"
}
]
}
}
}
]
},
"Signature": "Enter_Signature_String"
}
Request description:
JSON Tag | Description | Data type |
---|---|---|
Message Mandatory | Header information (client credentials) | Object & String |
OSVBalanceEnquiryRequest Mandatory | Root node | Object |
StartDate Mandatory | Initial or starting date of the mentioned period | String |
EndDate Mandatory | Final or last date of the mentioned period | String |
DateTimeStamp Mandatory | Stamp denoting the date and time of the request | String |
SVRefId Mandatory | Unique SingleView reference identification details | String |
TransactionType Mandatory | Always it should be “BE” | String |
OSVPaymentInfoMessage Mandatory | This tag contains multiple banks requests | Object |
OSVPaymentInfoRequest Mandatory | Element root | Object |
BankCode Mandatory | Name of the bank. Ex: “ALRAJHI”, “SABB” | String |
CompanyCode Mandatory | Sender company code/Identifier provided by the bank during on-boarding | String |
B2BIdentifier Mandatory | Unique B2B identification details | String |
B2BUserId Mandatory | Unique B2B user identification details | String |
B2BUrn Mandatory | Unique B2B reference number | String |
B2BAggrId Mandatory | Unique B2B aggregator identification details | String |
AccountNumbers Mandatory | Tag carrying information on account numbers | Array of Strings |
AccountNumber Mandatory | Tag carrying account number details | String |
AccNumber Mandatory | Unique account number to request balance | String |
Signature Mandatory | Encrypted string obtained by processing request body with Private Key/Certificate through SHA-256 with RSA Algorithm (Crypto : JCE Sign) | String |
Sample responses
{
"OSVBalanceEnquiryResponse": {
"BalanceEnquiryResponseMessage": [
{
"BankCode": "ANB",
"CompanyCode": "Jazeera",
"B2BAggrId": "",
"B2BUserId": "",
"B2Burn": "",
"StatusCode": "OK",
"StatusDetail": "OK",
"ResponseItemCount": "",
"TotalAvailableBalance": 0.28,
"TotalAvailableBalanceUSD": "",
"TotalAvailableBalanceAED": "",
"TotalAvailableBalanceGBP": "",
"TotalAvailableBalanceINR": "",
"TotalAvailableBalanceKWD": "",
"TotalAvailableBalanceBHD": "",
"TotalAvailableBalanceEUR": "",
"TotalOpeningBalance": "",
"TotalOpeningBalanceUSD": "",
"TotalOpeningBalanceAED": "",
"TotalOpeningBalanceGBP": "",
"TotalOpeningBalanceINR": "",
"TotalOpeningBalanceKWD": "",
"TotalOpeningBalanceBHD": "",
"TotalOpeningBalanceEUR": "",
"TotalClosingBalance": 0.28,
"TotalClosingBalanceUSD": "",
"TotalClosingBalanceAED": "",
"TotalClosingBalanceGBP": "",
"TotalClosingBalanceINR": "",
"TotalClosingBalanceKWD": "",
"TotalClosingBalanceBHD": "",
"TotalClosingBalanceEUR": "",
"BalanceEnquiryResponse": [
{
"SequenceNum": "",
"ReceiptTime": null,
"AccountNumber": "Account_Number",
"AccountCurrency": "SAR",
"AccountStatus": "",
"AccountStatusDesc": "",
"CustomerFullName": "",
"AccountType": null,
"AuthorizedOdLimit": "",
"LastCreditDate": "",
"LastCreditAmount": "",
"AvailableBalance": 0.28,
"AvailableBalanceLCY": "",
"OpeningBalanceLCY": "",
"OpeningBalance": "",
"ClosingBalance": 0.28,
"DebitAllowed": true,
"CreditAllowed": true,
"StatusCode": "OK",
"StatusDetail": "OK"
}
]
}
]
}
}
{
"OSVBalanceEnquiryResponse": {
"BalanceEnquiryResponseMessage": [
{
"BankCode": "ANB",
"CompanyCode": "Jazeera",
"B2BAggrId": "",
"B2BUserId": "",
"B2Burn": "",
"StatusCode": "Failed",
"StatusDetail": null,
"ResponseItemCount": "",
"TotalAvailableBalance": "",
"TotalAvailableBalanceUSD": "",
"TotalAvailableBalanceAED": "",
"TotalAvailableBalanceGBP": "",
"TotalAvailableBalanceINR": "",
"TotalAvailableBalanceKWD": "",
"TotalAvailableBalanceBHD": "",
"TotalAvailableBalanceEUR": "",
"TotalOpeningBalance": "",
"TotalOpeningBalanceUSD": "",
"TotalOpeningBalanceAED": "",
"TotalOpeningBalanceGBP": "",
"TotalOpeningBalanceINR": "",
"TotalOpeningBalanceKWD": "",
"TotalOpeningBalanceBHD": "",
"TotalOpeningBalanceEUR": "",
"TotalClosingBalance": "",
"TotalClosingBalanceUSD": "",
"TotalClosingBalanceAED": "",
"TotalClosingBalanceGBP": "",
"TotalClosingBalanceINR": "",
"TotalClosingBalanceKWD": "",
"TotalClosingBalanceBHD": "",
"TotalClosingBalanceEUR": "",
"BalanceEnquiryResponse": [
{
"SequenceNum": "",
"ReceiptTime": null,
"AccountNumber": "01080573862900141",
"AccountCurrency": null,
"AccountStatus": "",
"AccountStatusDesc": "",
"CustomerFullName": "",
"AccountType": null,
"AuthorizedOdLimit": "",
"LastCreditDate": "",
"LastCreditAmount": "",
"AvailableBalance": "",
"AvailableBalanceLCY": "",
"OpeningBalanceLCY": "",
"OpeningBalance": "",
"ClosingBalance": null,
"DebitAllowed": true,
"CreditAllowed": true,
"StatusCode": "Failed",
"StatusDetail": "Invalid Account Number"
}
]
}
]
}
}
Response description
JSON Tag | Description | Data type |
---|---|---|
OSVBalanceEnquiryResponse | Root node | Object |
BalanceEnquiryResponseMessage | Element root containing response of every bank | Object |
BankCode | Name of the bank Ex: “ALRAJHI”, “SABB” | String |
CompanyCode | Sender company code/Identifier provided by the bank during on-boarding | String |
B2BAggrId | Unique B2B aggregator identification | String |
B2BUserId | Unique B2B user identification details | String |
StatusCode | Code representing the status of the request processed | String |
StatusDetail | Details of the response | String |
ResponseItemCount | Number of balance items fetched in the response | String |
TotalAvailableBalance | Total available balance | String |
TotalOpeningBalance | Total opening balance | String |
TotalClosingBalance | Total closing balance | String |
BalanceEnquiryResponse | This tag contains the details of the requested Bank Accounts | String |
SequenceNum | Count of the accounts per the bank | String |
ReceiptTime | Receipt Time of the Enquiry | String |
AccountNumber | Account Number | String |
AccountCurrency | Account Currency. Maximum length of Currency should be 3. E.g. SAR | String |
AccountType | Account Type (Current, Saving etc.) | String |
AccountStatus | Status of the Account (ACTIVE, DORMANT, UNCLAIMED, CLOSING, CLOSED, BLOCKED, DECEASED, INVALID) | String |
AccountStatusDesc | Reason for the Corresponding Account Status | String |
CustomerFullName | Account Holder Name | String |
AvailableBalance | Available Balance in Account (i.e) (Ledger Balance + OD limit) - Booked balance | String |
AvailableBalanceLCY | Available Balance in Local Currency | String |
OpeningBalance | OpeningBalance | String |
OpeningBalanceLCY | Opening Balance in Local Currency for Requested Account | String |
ClosingBalance | Closing Balance | String |
DebitAllowed | Debit is allowed from the account or not. The value will be either true or false | String |
CreditAllowed | Credit is allowed to the account or not. The value will be either true or false | String |
StatusCode | Status Code will be “OK” for Success or Failed | String |
StatusDetail | Status Detail will be “OK” for Success or Failed | String |
Updated about 2 months ago