Account Statement

Retrieve single or multiple bank account balances

SingleView B2B API services Account statement allows users access to request and retrieve specific user bank account statements. Corporate Customers can use this B2B service to get unaltered and raw account statement information, including all the majorly required information.

📘

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

EnvironmentDomainRate/Limit
Sandboxsandboxapi.onesingleview.com10 Calls per Minute
Production/LIVETo be provided upon onboardingBased on contract

Get Account Statement

Endpoint details

Endpoint URL

Method

Grant type

/api/v1/account/statement/940

POST

1. CompanyId
2. SVReferenceID
3. DateTimeStamp
4. Device
5. Authorization: Bearer (Token)

Sample request

curl --location 'https://sandboxapi.onesingleview.com/api/v1/account/statement/940' \
--header 'CompanyId: MYCOMPANY'
--header 'SVReferenceID: SV150619940615'
--header 'DateTimeStamp	:2025-01-02T10:20:39'
--header 'Device: Web'
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjoiTDNyMmpxV29JS2I4MTNodDBNMlZ4WGpFZmR6WFNWaTFad3B5QnlkOVpHelZXR2ZwUmFQNUV1TXl6S1Aybi94Y0lwR2V5STNNMkdPL1pqakd4ZG0yclJKUkdhRXlaWGNpWnZnOHArMWIyOGtOQTVkZ0VKajVVSEdiTmtNPSIsImlhdCI6MTczNTgwMTQ3NywiZXhwIjoxNzM1ODA1MDc3fQ.Bh7LFkvxNFrLe9dmH5rURWjGpES-u4z2EGeyrNM7z6E'
--header 'Content-Type: application/json' \
--data '{
"Message": {
  "OSVAccountStatementRequest": {
    "FromDate": "2025-01-15T00:00:00",
    "ToDate": "2025-01-15T23:59:59",
    "DateTimeStamp": "2025-01-17T09:13:26",
    "TransactionType": "940",
    "OSVPaymentInfoMessage": [
      {
        "OSVPaymentInfoRequest": {
          "BankCode": "ALRAJHI",
          "CompanyCode": "125001291",
          "AccountNumbers": {
            "AccountNumber": [
              {
                "AccNumber": "204000010006085129123"
              }
            ]
          }
        }
      }
    ]
  }
},
"Signature": "UMEH9M8tXknuRnnkrzRjDHaxFRLyZJ+wDNAl408+nTWyfTKaVcBkLLPhX5DKjTX18HK/oEJ8rmSeoswQuKzk9F2WIcXwZI9C+h7GA5d6r0FEu9hAYG+tDjFSyPDPHunMbILe1rgIlenbHra24Xt2IxAqj5115FEhJyabV0saIveNfK4sPOWtB+HeEAhwP6pwHETZoO4Z9kiMgdIbBbyD43IpRyxVQzogtlNKrkRaW/k16eIGzeS8Nh5g0txEoa3aocQTiVqzEtkwBXMKKUnoMZMCIOsPh7XNDN9nmsad0CNHr5wwJZoc9gC2e/d7fWuUu8xqe8AaSWXm3xTIfostIg=="
}'

Request description:

JSON Tag

Description

Data type

Message Mandatory

Header information (client credentials)

Object & String

OSVAccountStatementRequest
Mandatory

Tag carrying information on request to fetch account statement

Object

FromDate
Mandatory

Starting date of the statement period
ISO 8601 format - YYYY-MM-DDTHH:MM:SS

Date

ToDate
Mandatory

Ending date of the statement period
ISO 8601 format - YYYY-MM-DDTHH:MM:SS

String

DateTimeStamp
Mandatory

Stamp denoting the time and date of the request
ISO 8601 format - YYYY-MM-DDTHH:MM:SS

Date

TransactionType
Mandatory

To be mentioned as
942 - For statement about today's transactions
940 - For statement about date ranged transaction statement

Numerical

OSVPaymentInfoMessage
Mandatory

This tag contains multiple banks requests

Object

OSVPaymentInfoRequest
Mandatory

Element root

Object

BankCode
Mandatory

Unique bank identification code (SingleView Identifier)
Ex: ALRAJHI, SABB, BSF, ANB, SNB, ALINMA, GIB, RIYADH, ALBI, BJAZ

Alphabetical

CompanyCode
Mandatory

Sender company code/Identifier provided by the bank during on-boarding

String

AccountNumbers
Mandatory

Tag carrying information on bank account number

Object

AccountNumber
Mandatory

Tag carrying an array of strings of bank account numbers

Array of string

AccNumber
Mandatory

Unique account number for which the account statement is requested

  • Input size:
    Min - 11 Characters
    Max - 24 Characters_

Alphanumeric

Signature
Mandatory

Encrypted string generated using a Private Key/CA-Signed Certificate with SHA-256 and RSA (JCE Signature)

String

Sample responses

{
  "OSVAccoutStatementResponse": {
    "FromDate": "2025-01-15T00:00:00",
    "ToDate": "2025-01-15T23:59:59",
    "TransactionType": "940",
    "OSVPaymentInfoMessageResponse": [
      {
        "BankCode": "ALRAJHI",
        "CompanyCode": "125001291",
        "StatusCode": "OK",
        "StatusDetail": "OK",
        "ResponseItemCount": "1",
        "TotalOpeningBalance": "500.09",
        "TotalClosingBalance": "500.09",
        "OSVPaymentInfoResponse": [
          {
            "StatusCode": "OK",
            "StatusDetail": "Statment Initiated Successfully",
            "TransactionType": "940",
            "SequenceNum": "145541",
            "AccountNumber": "204000010006085129123",
            "ReceiptTime": "2025-01-15T00:00:00",
            "ProcessStatus": "1",
            "TransactionData": {
              "UniqueReference": "20250116080008",
              "RelatedReferenceNumber": "SV15061994",
              "AccountNumber": "204608015129123",
              "StatementNo": "00015/001",
              "TransactionTime": "2025-01-15T00:00:00",
              "CurrencyAmountCode": "SAR",
              "OpeningBalance": {
                "DCMark": "C",
                "Date": "250115",
                "Currency": "SAR",
                "Amount": 2000911706.34
              },
              "TransactionDetails": [],
              "ClosingBalance": {
                "DCMark": "C",
                "Date": "250115",
                "Currency": "SAR",
                "Amount": 2000911706.34
              },
              "ClosingAvailableBalance": {
                "DCMark": "C",
                "Date": "250115",
                "Currency": "SAR",
                "Amount": 2000911706.34
              },
              "Comment": "",
              "TotalNumberOfDebits": "01",
              "TotalNumberOfCredits": "00"
            }
          }
        ]
      }
    ]
  }
}
{
  "OSVAccoutStatementResponse": {
    "FromDate": "2025-01-15T00:00:00",
    "ToDate": "2025-01-15T23:59:59",
    "TransactionType": "940",
    "OSVPaymentInfoMessageResponse": [
      {
        "BankCode": "NCB",
        "CompanyCode": "ABC1234",
        "B2BUrn": "",
        "B2BAggrId": "",
        "B2BUserId": "",
        "StatusCode": "Failed",
        "StatusDetail": "Failed",
        "ResponseItemCount": "1",
        "TotalOpeningBalance": "",
        "TotalClosingBalance": "",
        "OSVPaymentInfoResponse": [
          {
            "StatusCode": "OK",
            "StatusDetail": "Statment Initiated Successfully",
            "TransactionType": "940",
            "SequenceNum": "145541",
            "AccountNumber": "204000010006085129123",
            "ReceiptTime": "",
            "ProcessStatus": "",
            "TransactionData": {
              "UniqueReference": "",
              "RelatedReferenceNumber": "",
              "AccountNumber": "204608015129123",
              "StatementNo": "",
              "TransactionTime": "",
              "CurrencyAmountCode": "",
              "OpeningBalance": {
                "DCMark": "",
                "Date": "",
                "Currency": "",
                "Amount":
              },
                "TransactionDetails": [],
                "ClosingBalance": {
                  "DCMark": "",
                  "Date": "",
                  "Currency": "",
                  "Amount": ""
                },
                "ClosingAvailableBalance": {
                  "DCMark": "",
                  "Date": "",
                  "Currency": "",
                  "Amount": ""
                },
                "Comment": "",
                "TotalNumberOfDebits": "",
                "TotalNumberOfCredits": ""
              }
            }
            ]
          }
        ]
      }
      }

Response description

JSON Tag

Description

Data type

OSVAccoutStatementResponse

Root node

Object

FromDate

From Date

String

ToDate

To Date

String

TransactionType

Always it should be “940”

String

OSVPaymentInfoMessageResponse

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

B2BUrn

Unique B2B reference number

String

B2BAggrId

Unique B2B aggregator identification details

String

B2BUserId

Unique B2B user identification details

String

StatusCode

Status code of the processed request

String

StatusDetail

Status details of the processed request

String

ResponseItemCount

Number of transactions included in the statement

String

TotalOpeningBalance

Total Opening Balance

String

TotalClosingBalance

Total Closing Balance

String

OSVPaymentInfoResponse

This tag contains the status of the Bank Accounts

Object

TransactionType

Type of transaction

String

StatusCode

Status code of the transaction

Boolean

StatusDetail

Status details of the transaction

Boolean

SequenceNum

Unique sequence number of the transaction

String

AccountNumber

Account Number

String

ReceiptTime

Receipt Time of the Enquiry

String

ProcessStatus

Status of the process

String

TransactionData

Tag carrying information on transaction details

String

UniqueReference

Statement reference number

String

RelatedReferenceNumber

Concerned related reference number

String

AccountNumber

Account Number

String

StatementNo

Statement Number

String

CurrencyAmountCode

Code of the currency

String

OpeningBalance

Tag carrying information on opening balance

String

DCMark

Credit/Debit mark

String

Date

Date of the credit and debit amount

String

Currency

Account Currency. Maximum length of Currency should be 3. E.g. SAR

String

Amount

Amount

String

TransactionDetails

Tag carrying information on transaction details

String

ValueDate

Date at which transaction is valued

String

EntryDate

Date at which transaction is entered in the statememt

String

PostingTime

Time of posting of the transaction status

String

DCMark

Transaction Credit/Debit

String

FundsCode

Code of the funds

String

Amount

Credit/Debit Amount

String

TransactionType

S: Swift Transfer
N: Non Swift Transfer
F: First Advice

String

IdentificationCode

Unique identification code

String

AccountOwnerReference

Account Owner Reference Number

String

BankReference

Bank Reference Number

String

Description

Transaction Description

String

SourceAccount

Source Account

String

SourceID

Source ID

String

SourceAccountName

Source Account Name

String

CardType

Card Type

String

BillerId

Unique SADAD biller identification details

String

Category

Category of the transaction among Local Transfer, POS, BANK COMMISION, ATM

String

VirtualAccount

Unique virtual account identification details

String

ClosingBalance

Tag carrying information on closing balance

Object

DCMark

DC mark of the closing balance

String

Date

Date of the indicated closing balance

String

Currency

Currency of the closing balance displayed

String

Amount

Amount denoting the closing balance

Numerical

ClosingAvailableBalance

Tag carrying information on available closing balance

Object

DCMark

DC mark of the available closing balance

String

Date

Date of the indicated available closing balance

String

Currency

Currency of the closing available balance displayed

String

Amount

Amount denoting the available closing balance

Numerical

Comment

Comment for the process

String

TotalNumberOfDebits

Number of debits included in the statement

Numerical

TotalNumberOfCredits

Number of credits included in the statement

Numerical