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

Get Balance Enquiry

Endpoint details

Endpoint URLMethodAuthentication requirements
/api/v1/account/balancePOST1. 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 TagDescriptionData type
Message
Mandatory
Header information (client credentials)Object & String
OSVBalanceEnquiryRequest
Mandatory
Root nodeObject
StartDate
Mandatory
Initial or starting date of the mentioned periodString
EndDate
Mandatory
Final or last date of the mentioned periodString
DateTimeStamp
Mandatory
Stamp denoting the date and time of the requestString
SVRefId
Mandatory
Unique SingleView reference identification detailsString
TransactionType
Mandatory
Always it should be β€œBE”String
OSVPaymentInfoMessage
Mandatory
This tag contains multiple banks requestsObject
OSVPaymentInfoRequest
Mandatory
Element rootObject
BankCode
Mandatory
Name of the bank.
Ex: β€œALRAJHI”, β€œSABB”
String
CompanyCode
Mandatory
Sender company code/Identifier provided by the bank during on-boardingString
B2BIdentifier
Mandatory
Unique B2B identification detailsString
B2BUserId
Mandatory
Unique B2B user identification detailsString
B2BUrn
Mandatory
Unique B2B reference numberString
B2BAggrId
Mandatory
Unique B2B aggregator identification detailsString
AccountNumbers
Mandatory
Tag carrying information on account numbersArray of Strings
AccountNumber
Mandatory
Tag carrying account number detailsString
AccNumber
Mandatory
Unique account number to request balanceString
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 TagDescriptionData type
OSVBalanceEnquiryResponseRoot nodeObject
BalanceEnquiryResponseMessageElement root containing response of every bankObject
BankCodeName of the bank
Ex: β€œALRAJHI”, β€œSABB”
String
CompanyCodeSender company code/Identifier provided by the bank during on-boardingString
B2BAggrIdUnique B2B aggregator identificationString
B2BUserIdUnique B2B user identification detailsString
StatusCodeCode representing the status of the request processedString
StatusDetailDetails of the responseString
ResponseItemCountNumber of balance items fetched in the responseString
TotalAvailableBalanceTotal available balanceString
TotalOpeningBalanceTotal opening balanceString
TotalClosingBalanceTotal closing balanceString
BalanceEnquiryResponseThis tag contains the details of the requested Bank AccountsString
SequenceNumCount of the accounts per the bankString
ReceiptTimeReceipt Time of the EnquiryString
AccountNumberAccount NumberString
AccountCurrencyAccount Currency. Maximum length of Currency should be 3. E.g. SARString
AccountTypeAccount Type (Current, Saving etc.)String
AccountStatusStatus of the Account (ACTIVE, DORMANT, UNCLAIMED, CLOSING, CLOSED, BLOCKED, DECEASED, INVALID)String
AccountStatusDescReason for the Corresponding Account StatusString
CustomerFullNameAccount Holder NameString
AvailableBalanceAvailable Balance in Account (i.e)
(Ledger Balance + OD limit) - Booked balance
String
AvailableBalanceLCYAvailable Balance in Local CurrencyString
OpeningBalanceOpeningBalanceString
OpeningBalanceLCYOpening Balance in Local Currency for Requested AccountString
ClosingBalanceClosing BalanceString
DebitAllowedDebit is allowed from the account or not. The value will be either true or falseString
CreditAllowedCredit is allowed to the account or not. The value will be either true or falseString
StatusCodeStatus Code will be β€œOK” for Success or FailedString
StatusDetailStatus Detail will be β€œOK” for Success or FailedString