Multiple Payments
Disburse multiple payments through Payouts API
SingleView Payouts API 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
🌐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 Payout
Endpoint details
Endpoint URL | Method | Authentication requirements |
---|---|---|
/api/v1/payment/fundtransfer?transferType= | POST | 1. CompanyId 2. SVReferenceID 3. DateTimeStamp 4. Device 5. Authorization: Bearer (Token) |
transferType = | Query Parameter | 1. Same Bank : interbank if all payments are interbank2. Local Bank: sarie if all payments are sarie3. International : swift if all payments are swift4. To be left blank if request has various transfer types |
Sample Request
curl --location 'https://sandboxapi.onesingleview.com/api/v1/payment/fundtransfer?transferType=' \
--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": {
"OSVPaymentMessageRequest": {
"TransactionType": "MT100",
"OSVPaymentTransactionRequest": [
{
"TransactionDescription": "522 sar",
"BulkToSingle": "true",
"BankCode": "ANB",
"TransactionData": [
{
"AdditionalDetails": "/99/SA/Others",
"OrderingCustomerIBAN": "SA5330400108057386290014",
"BeneficiaryAccountWithInstitutionBIC": "ARNBSARI",
"PurposeOfRemittance": "22",
"TransferType": "interbank",
"SequenceNum": "977777285462521",
"BeneficiaryAccountNumberNameAddress": {
"BeneficiaryADD2": "riyadh",
"BeneficiaryADD3": "riyadh",
"BeneficiaryADD1": "Arab national Bank Same bank",
"BeneficiaryName": "محمد رمضان سالم عاشور",
"BeneficiaryAccount": "SA8430400108057386290038"
},
"OrderingCustomerNameAddress": {
"OrderingCustomerAdd3": "riyadh",
"OrderingCustomerAdd1": "Treasury Department, Riyadh",
"OrderingCustomerAdd2": "riyadh",
"OrderingCustomerName": "OSV Company"
},
"OrderingCurrency": "SAR",
"TransactionComment": "522 sar",
"DateCurrencyAmount": {
"Currency": "SAR",
"Amount": "49",
"Date": "250325"
},
"OrderingCustomerAccountNumber": "0108057386290014",
"OrderingInstitution": "ARNBSARI",
"CompanyCode": "SingleView",
"DetailsOfCharge": "SHA"
},
{
"AdditionalDetails": "/99/SA/Others",
"OrderingCustomerIBAN": "SA5330400108057386290014",
"BeneficiaryAccountWithInstitutionBIC": "ARNBSARI",
"PurposeOfRemittance": "22",
"TransferType": "interbank",
"SequenceNum": "977777225462551",
"BeneficiaryAccountNumberNameAddress": {
"BeneficiaryADD2": "riyadh",
"BeneficiaryADD3": "riyadh",
"BeneficiaryADD1": "Arab national Bank Same bank",
"BeneficiaryName": "محمد رمضان سالم عاشور",
"BeneficiaryAccount": "SA8930400108057386290045"
},
"OrderingCustomerNameAddress": {
"OrderingCustomerAdd3": "riyadh",
"OrderingCustomerAdd1": "Treasury Department, Riyadh",
"OrderingCustomerAdd2": "riyadh",
"OrderingCustomerName": "OSV Company"
},
"OrderingCurrency": "SAR",
"TransactionComment": "522 sar",
"DateCurrencyAmount": {
"Currency": "SAR",
"Amount": "49",
"Date": "250325"
},
"OrderingCustomerAccountNumber": "0108057386290014",
"OrderingInstitution": "ARNBSARI",
"CompanyCode": "SingleView",
"DetailsOfCharge": "SHA"
}
],
"TransactionReferenceNumber": "977777364313450"
}
]
}
},
"Signature": "luD/Ks4hBQs1+IW78G4Aj5c03acU9dZaT/BZ+O7VVfzyDAut//dUD7RU1nYuaqQnpypwgZiTm78C44C8PkpgNExBSJLK1FrE4yLGXOfBttrSSuyi+5L/Z6kXOwboHVsh5GE5PYgfQfDm0X80FNyBHo5709o8PRV3GXFcCLXGx1h/50uR8FUhTD+LMpJqZPHb5++pfUa/Rq85iXalITYxxI0jLBBe2lSG1snMbepPsdCJ9DVebCR5yOLxwkK10slYqYOlSAjMHw9KAODx2bvLxOgElDhpu5lkt8yJ5SjSLzmpTd7AWPdQ9mi5RGfrTasW18RpT/589Z+z3fxElEIJqA=="
}'
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 MT100 | Alphanumeric |
OSVPaymentTransactionRequest Mandatory | This tag contains multiple banks requests | Object |
TransactionDescription Mandatory | Payment Description Maximum length : 35 characters | String |
BulkToSingle Optional | Boolean indication of payment type (Bulk/Single) Usage depends on the volume of payments including in the request. Final parameter value will be specified later | Boolean (True/False) |
BankCode Mandatory | Unique bank identification code Ex: ALRAJHI, SABB, BSF, ANB, SNB, ALINMA, GIB, RIYADH, ALBI, BJAZ | 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 |
AdditionalDetails Optional | Additional details about the payment Max size of input: 35 Characters | String |
OrderingCustomerIBAN Mandatory | Ordering Customer’s IBAN number (Any one is mandate Account Number or IBAN Number) | Alphanumeric |
BeneficiaryAccountWithInstitutionBIC Mandatory | Beneficiary BIC Code Ex: SABBSARI, RJHISARI Maximum length: 8 or 11 characters | Alphanumeric |
PurposeOfRemittance Mandatory | Code representing the purpose of remittance View all POR codes | Numeric |
TransferType Mandatory | Same Bank : interbank Local Bank: sarie International : swift | Alphabet |
SequenceNum Mandatory | Unique number representing each transaction Length of input: 16 characters | Numeric |
BeneficiaryAccountNumberNameAddress Mandatory | Element root containing details of Beneficiary | Object/Array |
BeneficiaryADD1 Mandatory | Beneficiary Address Line 1 Input size: Min - 3 Characters Max - 35 Characters | String |
BeneficiaryADD2 Mandatory | Beneficiary Address Line 2 ( city to be mentioned)Input size: Min - 3 Characters Max - 35 Characters | String |
BeneficiaryADD3 Mandatory | Beneficiary Address Line 3 Input size: Min - 3 Characters Max - 35 Characters | String |
BeneficiaryName Mandatory | Beneficiary Name Input size: Min - 3 Characters Max - 35 Characters | Alphabet |
BeneficiaryAccount Mandatory | Beneficiary Customer’s account number Input size: Min - 11 Characters Max - 24 Characters | String |
OrderingCustomerNameAddress Mandatory | Element root containing details of Ordering customer | Object/Array |
OrderingCustomerName Mandatory | Ordering Customer’s Name Input size: Min - 3 Characters Max - 35 Characters | Alphabet |
OrderingCustomerAdd1 Mandatory | Ordering Customer’s Address Line 1 Input size: Min - 3 Characters Max - 35 Characters | String |
OrderingCustomerAdd2 Mandatory | Ordering Customer’s Address Line 2 ( city to be mentioned)Input size: Min - 3 Characters Max - 35 Characters | String |
OrderingCustomerAdd3 Mandatory | Ordering Customer’s Address Line 3 Input size: Min - 3 Characters Max - 35 Characters | String |
OrderingCurrency Mandatory | This is the currency code used in the transaction. Maximum length : 3 digit currency code | Alphabet |
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 |
Date Mandatory | Value date Transactions will be performed on this date. Date must be expressed as YYMMDD Maximum length : 6 numeric characters | Date |
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 |
B2BUserId Conditional | Unique B2B user identification details Mandatory only for ICICI Bank | String |
B2BUrn Conditional | Unique B2B URN Mandatory only for ICICI Bank | String |
B2BCRN Conditional | Unique Identity for Client Will be provided by Al Rajhi Bank. Mandatory only for Al Rajhi Bank. | String |
OrderingCustomerAccountNumber Mandatory | Ordering Customer’s account number (Any one is mandate 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 |
CompanyCode Mandatory | Unique identification code of the company | Alphanumeric |
DetailsOfCharge Mandatory | To be mentioned as SHA | Alphabet |
Signature Mandatory | Encrypted string generated using a Private Key/CA-Signed Certificate with SHA-256 and RSA (JCE Signature) | String |
Sample responses
✅ Successful response
{
"OSVPaymentMessageResponse": {
"OSVPaymentTransactionResponse": [
{
"BankCode": "ANB",
"BankReferenceNumber": "",
"TransactionReferenceNumber": "977777364313450",
"TransactionData": [
{
"CompanyCode": "SingleView",
"SequenceNum": "977777285462521",
"StatusCode": "OK",
"StatusDetail": "Payment processed successfully",
"AckReference": "BT00204699",
"TransferType": "interbank",
"BulkToSingle": "true",
"BankReferenceNumber": "9f417032-d9a0-4a7a-aaeb-4fbc6291ae94",
},
{
"CompanyCode": "SingleView",
"SequenceNum": "977777225462551",
"StatusCode": "OK",
"StatusDetail": "Payment processed successfully",
"AckReference": "BT00204698",
"TransferType": "interbank",
"BulkToSingle": "true",
"BankReferenceNumber": "fc1e02e9-5890-462e-a6e3-c9fed388d4aa"
}
]
}
]
}
}
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 Ex: ALRAJHI, SABB, BSF, ANB, NCB, ALINMA, GIB, RIYADH, ALBI, BJAZ | String |
BankReferenceNumber | Bank Reference Number | 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 |
SequenceNum | Value of SequenceNum tag in the request message | String |
StatusCode | Code representing status of the requestOK FAILED ONHOLD | Alphabetical |
StatusDetail | Details of the status code represented:OK - Your Payment file has been accepted. Kindly attempt to do a Payment Enquiry in a few minutes to know the Final status.FAILED - Invalid Account number, Exceed Daily Limit, Account Restricted, Connectivity ErrorONHOLD - Response timeout! Please perform payment enquiry to check the status after few minutes or contact support. | String |
AckReference | Transaction acknowledgement reference identification details | String |
TransferType | Type of transfer as interbank , sarie , swift | Alphabetic |
BulkToSingle | Boolean indication of payment type (Bulk/Single) Usage depends on the volume of payments including in the request. Final parameter value will be specified later | Boolean (True/False) |
BankReferenceNumber | Unique bank reference identification details for the transaction | String |
Updated 1 day ago