Make Single Payment
Make a single payment through Payouts API
SingleView Payouts API V2.0 services allow a single payment facility to interact through JSON requests and responses. The request is posted in a format specified for 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
Datetag inYYMMDDformat should have an upcoming date. Transaction with a past date gets failed.- Ensure
Datetag carries +1 day value for international (Swift) payments associated with BSF bank.- Ensure that the
SequenceNumandTransactionReferenceNumberare unique for each transaction. Payments with same sequence number or transaction reference number appear as duplicate transactions and affects their processing and enquiry operations.- Beneficiary information should not contain special characters such as
#,&,*,%,=,^,_,\,{,|,},~,",;,@,[,], `
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 a Single Payment - V2.0
Endpoint details
Endpoint URL | Method | Authentication requirements |
|---|---|---|
| POST |
|
Sample Request
curl --location 'https://sandboxapi.onesingleview.com/api/v2/single/payment' \
--header 'SVReferenceID: SV123456' \
--header 'CompanyId: SINGLEVIEW1234' \
--header 'Device: web' \
--header 'DateTimeStamp: 2025-01-07T10:20:39' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjoiTDNyMmpxV29JS2I4MTNodDBNeVN4WFRCZjlqUlNWQzFad3B5QnlkOVpHelZXR2ZwUmFQNUUrY3d6cVQ5bi9OV0lwR2V5STNNMkdPL1pqakd4ZG0yclJkVEZxY3lhWGNpWnZFejl0V1EySjQxK2VvSlk2ZjdJZkFsV3BKRi9VL1YydDEzMUtnRnVhcnd6MzVQY1UzbnFEV0p0UWlzIiwiaWF0IjoxNzY3NzYxODc3LCJleHAiOjE3Njc3NjU0Nzd9.lWDSB3Rk_TtdUbKyFcCdaE5XGo7UDiTu2kDcqEyU7vg' \
--header 'Content-Type: application/json' \
--data '{
"Message": {
"OSVPaymentMessageRequest": {
"TransactionType": "MT100",
"OSVPaymentTransactionRequest": [
{
"BankCode": "ALRAJHI",
"TransactionReferenceNumber": "8212099155",
"TransactionDescription": "Service Payment",
"OrderingCustomerIBAN": "SA808123420460801234123",
"OrderingCustomerAccountNumber": "20460801234123",
"OrderingInstitution": "RJHISARI",
"OrderingCurrency": "SAR",
"OrderingCustomerNameAddress": {
"OrderingCustomerName": "Abdul Kalam",
"OrderingCustomerAdd1": "Suite 4444, B-Tower, Alawwal Street",
"OrderingCustomerAdd2": "Riyadh",
"OrderingCustomerAdd3": "Saudi Arabia"
},
"TransactionData": {
"BeneficiaryAccountNumberNameAddress": {
"BeneficiaryName": "Yusuf Muhammad",
"BeneficiaryAdd1": "Suite 1234, Q-Tower, Business Street",
"BeneficiaryAdd2": "Riyadh",
"BeneficiaryAdd3": "Saudi Arabia",
"BeneficiaryAccount": "SA2745123456727277763211"
},
"BeneficiaryAccountWithInstitutionBIC": "SABBSARI",
"DateCurrencyAmount": {
"Currency": "SAR",
"Amount": "29",
"Date": "260107"
},
"CompanyCode": "SV12345",
"SequenceNum": "5390088903799909",
"TransferType": "sarie",
"TransactionComment": "Regular service payment",
"PurposeOfRemittance": "01",
"B2BCRN": "",
"DetailsOfCharge": "SHA",
"AdditionalDetails": ""
}
}
]
}
},
"Signature": "rZZ9alg/2k9B5uWSdnW3AfYswAMqA4HXyNX3jIzckWb4o37uS4eKFEQ3xRn/dBarN6EGjfaXiMSOPdKyyjjrgT80K5ReXzQ7cC1INuU79ozlLgK8yTFz+nq785geQ+He4PR+hD35DkF9qnela9qmcr3GhAXpTjZG12hmaJEyzeofh6q3p+jqLFd208eAImubnL6SbSBDEAi5SLRH1K2I1U77OmFNirrfGV8qd+gsi+lqgyF9mpNj6lzy/fJNNe0qEr2WHvG1R7E2g3EhqovDNanQt6RFgkWegtlE37Eyi5qO3xlTqu76317ZWfMI7jHxs48fOLTNtBCOwUboVze5Tw=="
}'Request Description
JSON Tag | Requirement | 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/Array |
BankCode | Mandatory | Unique bank identification code | Alphabet |
TransactionReferenceNumber | Mandatory | Unique reference number generated by the customer for each transaction Maximum length : 16 numeric characters | String |
TransactionDescription | Mandatory | Payment Description Maximum length : 35 characters | String |
OrderingCustomerAccountNumber | Conditional | Ordering Customer’s account number (Any one is mandatory Account Number or IBAN Number) Input size: Min - 11 Characters Max - 24 Characters | Alphanumeric |
OrderingCustomerIBAN | Conditional | Ordering Customer’s IBAN number | Alphanumeric |
OrderingInstitution | Mandatory | Ordering Institution Ex: SABBSARI, RJHISARI Maximum length: 8 or 11 characters | Alphanumeric |
OrderingCurrency | Optional | 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 |
TransactionData | Mandatory | This tag contains the payment details | Object |
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 |
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 |
BeneficiaryAccount | Mandatory | Beneficiary Customer’s account number Input size: 3-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 | Alphabet |
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 provided by the bank | Alphanumeric |
SequenceNum | Mandatory | Unique number representing each transaction generated by the client Length of input: 16 numeric characters | String |
TransferType | Mandatory | Same Bank : | Alphabet |
TransactionComment | Mandatory | Additional payment remarks or information Max size of input: 35 Characters | String |
PurposeOfRemittance | Conditional | Code representing the purpose of remittance View all POR codes | Numeric |
B2BCRN | Conditional | Unique Commercial Registration Number for Client provided by Al Rajhi Bank | String |
DetailsOfCharge | Mandatory | To be mentioned as | Alphabet |
AdditionalDetails | Optional | Additional details about the payment Max size of input: 35 Characters | String |
Signature | Mandatory | Encrypted string generated using a Private Key/CA-Signed Certificate with SHA-256 and RSA (JCE Signature) | String |
Sample response
{
"OSVPaymentMessageResponse": {
"OSVPaymentTransactionResponse": [
{
"BankCode": "ALRAJHI",
"ReferenceNumber": "28989876123",
"CompanyCode": "125001291",
"TransactionData": {
"SequenceNum": "28989876123",
"StatusCode": "Processing",
"StatusDetail": "Your Payment file has been accepted, Kindly attempt to do a Payment Inquiry in a few minutes to know the Final status.",
"BankReferenceNumber": "B260108143421114"
}
}
]
}
}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 |
ReferenceNumber | Unique reference number assigned for transaction tracking and further operations | String |
CompanyCode | Sender company Code/Identifier | String |
TransactionData | This tag contains the status of the transactions included in the payment request | Object/Array |
SequenceNum | Unique number representing the transaction generated by the client | String |
StatusCode | Code representing status of the transaction in the request | String |
StatusDetail | Details of the status code represented for the transaction in the request | String |
BankReferenceNumber | Unique transaction reference number provided by the bank | String |
Status Codes & Information
Transaction Status
| StatusCode | StatusDetail |
|---|---|
| Processing | Your Payment file has been accepted, Kindly attempt to do a Payment Inquiry in a few minutes to know the Final status. |
| Completed | Bank response description |
| Failed | Bank response description |
| Response_Timeout | Timeout! Unable to get response from the bank. Please perform payment enquiry in few mins or contact SingleView support. |
Updated 1 day ago