Make Multiple Payments
Disburse multiple payments through Payouts API
SingleView Payouts API V2.0 allows multiple payment facilities through JSON requests and responses. The request in the specified format is posted to the concerned end-point. Based on the validity of the request, SingleView Payouts API processes the request and reflects a response accordingly. The authentication process involves additional identification parameters to ensure the best way to authorize the payment request.
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
- Ensure that the
SequenceNum
is unique for each transaction. Payments with same sequence number appear as duplicate transactions and affects their processing and enquiry operations.
Note:
Multiple payment services is not available for the following banks:
- Alinma Bank
- Banque Saudi Fransi (BSF)
- Bank Al Jazira
- Gulf International Bank (GIB)
- Bank Al Bilad
Domain details
Environment Domain Rate/Limit Sandbox sandboxapi.onesingleview.com 10 Calls per Minute Production/LIVE To be provided upon onboarding Based on contract
Make Multiple Payments - V2.0
Endpoint details
Endpoint URL | Method | Authentication requirements |
---|---|---|
| POST |
|
Sample Request
curl --location 'https://sandboxapi.onesingleview.com/api/v2/bulk/payment' \
--header 'SVReferenceID: osv02211210212' \
--header 'CompanyId: COMPANYID' \
--header 'Device: web' \
--header 'DateTimeStamp: 2025-07-22T10:20:39' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjoiTDNyMmpxV29JS2I4MTNodDBNaVN4MzdCZHREWlNGdTFad3B5QnlkOVpHelZXR2ZwUmFQNUYrZzB5YVg5bi9KVE5wK1FucERJMEZXWWN6VGJsOEc5cXhaUkVxQTBaM2dqYmZNMjQ0cGYvbnRTc1FMd3RJVnBBN2xuczZ4USIsImlhdCI6MTc1MzE3Njg2OSwiZXhwIjoxNzUzMTgwNDY5fQ.InwxIoDGBhyPWwijISVDRi2UMbW4V0qRVSnm3oJp9Ls' \
--header 'Content-Type: application/json' \
--data '{
"Message": {
"OSVPaymentMessageRequest": {
"TransactionType": "MT100",
"OSVPaymentTransactionRequest": [
{
"TransactionDescription": "Invoice Payment",
"BankCode": "RIYADH",
"TransactionData": [
{
"PurposeOfRemittance": "",
"TransferType": "sarie",
"SequenceNum": "5331101108",
"OrderingCustomerIBAN": "SA4621234002011682739940",
"OrderingCustomerAccountNumber": "2011681234540",
"OrderingInstitution": "RIBLSARI",
"OrderingCurrency": "SAR",
"OrderingCustomerNameAddress": {
"OrderingCustomerName": "SingleView",
"OrderingCustomerAdd1": "Suite 4444, B-Tower, Alawwal Street",
"OrderingCustomerAdd2": "Riyadh",
"OrderingCustomerAdd3": "Saudi Arabia"
},
"BeneficiaryAccountWithInstitutionBIC": "RJHISARI",
"BeneficiaryAccountNumberNameAddress": {
"BeneficiaryName": "Abdul Rahman",
"BeneficiaryAccount": "SA8881234466608010110291",
"BeneficiaryADD1": "Suite 1234, Q-Tower, Business Street,",
"BeneficiaryADD2": "Riyadh",
"BeneficiaryADD3": "Saudi Arabia"
},
"TransactionComment": "First Payment",
"DateCurrencyAmount": {
"Currency": "SAR",
"Amount": "25000",
"Date": "250722"
},
"CompanyCode": "SV0001",
"DetailsOfCharge": "SHA",
"AdditionalDetails": ""
},
{
"PurposeOfRemittance": "",
"TransferType": "sarie",
"SequenceNum": "50222110311308",
"OrderingCustomerIBAN": "SA4621234002011682739940",
"OrderingCustomerAccountNumber": "2011781234540",
"OrderingInstitution": "RIBLSARI",
"OrderingCurrency": "SAR",
"OrderingCustomerNameAddress": {
"OrderingCustomerName": "SingleView",
"OrderingCustomerAdd1": "Suite 4444, B-Tower, Alawwal Street",
"OrderingCustomerAdd2": "Riyadh",
"OrderingCustomerAdd3": "Saudi Arabia"
},
"BeneficiaryAccountWithInstitutionBIC": "SABBSARI",
"BeneficiaryAccountNumberNameAddress": {
"BeneficiaryName": "Muhammad",
"BeneficiaryAccount": "SA8645123456732020604002",
"BeneficiaryADD1": "Suite 9999, C-Tower, Alduwwam Street",
"BeneficiaryADD2": "Riyadh",
"BeneficiaryADD3": "Saudi Arabia"
},
"TransactionComment": "Second Payment",
"DateCurrencyAmount": {
"Currency": "SAR",
"Amount": "25000",
"Date": "250722"
},
"CompanyCode": "SV0001",
"DetailsOfCharge": "SHA",
"AdditionalDetails": ""
}
],
"TransactionReferenceNumber": "41141234567"
}
]
}
},
"Signature": "PcGHzQOYzeKsCK9V0hd8i0c35Uyafc38mDgVFWuBb7DtdSCutzR3zk+jrgiIemRcsy/5rHrmHBLqK3RhZeUVrWj82xUtWoMLTp4uraPdwqSGgudz269BRxlIToHWdkEsCShbRZC/Iy4lpB9pHZAjxBqmA07wmBATX0Ef1nTcro2Xm6zxEXJuS4NStVQ3v0YVaLfjcOPNOTHdF6qYXEt0D5lxdoIo8nS9hOaZ/uvjvtKzqSOZ39okRZl6+ZLfJC12fXpNdn32v4Oz+YJ5upEUyG7wVcotJ6LnmiQ+SM6LdWi36dZXSfqcUyWzhWBi/mMM+RBCuC2TYs5erylDF9mZ8Q=="
}'
Request Description
JSON Tag | Description | Data type |
---|---|---|
Message Mandatory | Header information (client credentials) | Object |
OSVPaymentMessageRequest Mandatory | Root node containing all the payment transaction messages | Object |
TransactionType Mandatory | To be always mentioned as | Alphanumeric |
OSVPaymentTransactionRequest Mandatory | This tag contains multiple banks requests | Object |
TransactionDescription Mandatory | Payment Description Maximum length : 35 characters | String |
BankCode Mandatory | Unique bank identification code
| Alphabet |
TransactionReferenceNumber Mandatory | It is a unique reference number generated by the customer for each transaction Maximum length : 16 numeric characters | Numeric |
TransactionData Mandatory | This tag contains the payment details | Object/Array |
PurposeOfRemittance Conditional Review POR list for mandatory banks | Code representing the purpose of remittance View all POR codes | Numeric |
TransferType Mandatory | Same Bank : | Alphabet |
SequenceNum Mandatory | Unique number representing each transaction generated by the client Length of input: 16 characters | Numeric |
OrderingCustomerIBAN Mandatory | Ordering Customer’s IBAN number (Any one is mandate Account Number or IBAN Number) | Alphanumeric |
OrderingCustomerAccountNumber Mandatory | Ordering Customer’s account number (Any one is mandatory Account Number or IBAN Number) Input size: Min - 11 Characters Max - 24 Characters | Alphanumeric |
OrderingInstitution Mandatory | Ordering Institution Ex: SABBSARI, RJHISARI Maximum length: 8 or 11 characters | Alphanumeric |
OrderingCurrency Mandatory | This is the currency code used in the transaction. Maximum length : 3 digit currency code | Alphabet |
OrderingCustomerNameAddress Mandatory | Element root containing details of Ordering customer | Object/Array |
OrderingCustomerName Mandatory | Ordering Customer’s Name Input size: 3-35 Characters | Alphabet |
OrderingCustomerAdd1 Mandatory | Ordering Customer’s Address Line 1 Input size: 3-35 Characters | String |
OrderingCustomerAdd2 Mandatory | Ordering Customer’s Address Line 2 ( | String |
OrderingCustomerAdd3 Mandatory | Ordering Customer’s Address Line 3 Input size: 3-35 Characters | String |
BeneficiaryAccountWithInstitutionBIC Mandatory | Beneficiary BIC Code Ex: SABBSARI, RJHISARI Maximum length: 8 or 11 characters | Alphanumeric |
BeneficiaryAccountNumberNameAddress Mandatory | Element root containing details of Beneficiary | Object/Array |
BeneficiaryName Mandatory | Beneficiary Name Input size: 3-35 Characters | Alphabet |
BeneficiaryAccount Mandatory | Beneficiary Customer’s account number Input size: 3-35 Characters | String |
BeneficiaryADD1 Mandatory | Beneficiary Address Line 1 Input size: 3-35 Characters | String |
BeneficiaryADD2 Mandatory | Beneficiary Address Line 2 ( | String |
BeneficiaryADD3 Mandatory | Beneficiary Address Line 3 Input size: 3-35 Characters | String |
TransactionComment Mandatory | Additional comments for the payments Max size of input: 35 Characters | String |
DateCurrencyAmount Mandatory | Element root containing details of Date, Currency and Amount | Object |
Currency Mandatory | This is the currency code used in the transaction. Length of input: 3 characters | Alphabetic |
Amount Mandatory | This is the amount used in the transaction | Numeric |
Date Mandatory | Value date Transactions will be performed on this date. Date must be expressed as YYMMDD Maximum length : 6 numeric characters | Date |
CompanyCode Mandatory | Unique identification code of the company | Alphanumeric |
DetailsOfCharge Mandatory | To be mentioned as | Alphabet |
AdditionalDetails Optional | Additional details about the payment Max size of input: 35 Characters | String |
B2BCRN Conditional | Unique Commercial Registration Number for Client provided by Al Rajhi Bank Mandatory only for Al Rajhi Bank | String |
B2BAggrId Conditional | Unique B2B aggregator identification details. Mandatory only for ICICI Bank | Alphanumeric |
B2BName Conditional | Unique B2B name Mandatory only for ICICI Bank | Alphabet |
B2BUserId Conditional | Unique B2B user identification details Mandatory only for ICICI Bank | Alphanumeric |
B2BUrn Conditional | Unique B2B URN Mandatory only for ICICI Bank | String |
Signature Mandatory | Encrypted string generated using a Private Key/CA-Signed Certificate with SHA-256 and RSA (JCE Signature) | String |
Sample responses
{
"OSVPaymentMessageResponse": {
"OSVPaymentTransactionResponse": [
{
"BankCode": "RIYADH",
"TransactionReferenceNumber": "41141234567",
"TransactionData": [
{
"CompanyCode": "SV0001",
"StatusCode": "OK",
"StatusDetail": "XML Online Payment File has been accepted",
"BankReferenceNumber": "9e12345ae35d4288a4d737eec828g234"
}
]
}
]
}
}
{
"OSVPaymentMessageResponse": {
"OSVPaymentTransactionResponse": [
{
"BankCode": "RIYADH",
"TransactionReferenceNumber": "41141234567",
"TransactionData": [
{
"CompanyCode": "SV0001",
"StatusCode": "FAILED",
"StatusDetail": "Single Payment Not Supported"
}
]
}
]
}
}
Response description
JSON Tag | Description | Data type |
---|---|---|
OSVPaymentMessageResponse | Root node | Object |
OSVPaymentTransactionResponse | Element root containing response of every bank transactions | Object/Array |
BankCode | Unique bank identification code
| String |
TransactionReferenceNumber | It is a unique reference number generated by the customer by the time of transaction) | String |
TransactionData | This tag contains the status of the payments | String |
CompanyCode | Sender company Code/Identifier | String |
StatusCode | Code representing status of the request
| Alphabetical |
StatusDetail | Details of the status code represented:
| String |
BankReferenceNumber | Unique bank reference identification details for the transaction | String |
Updated 9 days ago