Multiple/Bulk Payments Processing
Process a multiple/bulk payment through SingleView Payments API
Overview
Just like processing a single payment, the multiple or bulk payments processing requires the following details to be enclosed in the payment request:
Mandatory information
- The user must provide the valid credentials in the header
- Valid Signature, Access code as "Authorization: Bearer" and Session ID
- Payment Token has to be generated and assigned from the user end
- OTP has to be requested and a valid OTP has to be mentioned
- The request should be in the specified format
- The request should include all the mandatory details with appropriate request tags
A Process Payment request (Multiple/Bulk) in the following format should be posted to the URL https://servicesuat.onesingleview.com/v1/api/osvPlatform/payment.
"isBulk" status
- If "True", then payments with the same debiting account number will be considered as a bulk payment and a single transaction will be considered
- If "False", then payments included in the request will be considered as single payments and individual transactions
Process Bulk Payments
Endpoint details
Endpoint URL | Method | Authentication requirements |
---|---|---|
/v1/api/osvPlatform/payment | POST | 1. clientId 2. clientCode 3. signature 4. sid 5. Authorization: Bearer 6. otp |
Sample request
curl --location --request POST 'https://servicesuat.onesingleview.com/v1/api/osvPlatform/payment' \
--header 'clientId: Enter_Client_ID' \
--header 'clientcode: Enter_Client_Code' \
--header 'signature: Enter_Signature' \
--header 'sid: Enter_Session_ID' \
--header 'Authorization: Bearer Enter_Authorization_Key' \
--header 'Content-Type: application/json' \
--header 'Cookie: _redisPractice=s%3AZCBGJUQpUkodCfQzjQKS8FVNocn21g2p.jbPbPmfogwh2nDlTq6zjN5PihTC7oFWyrFVWASXiVas' \
--data-raw '{
"osvPlatformPaymentRQ": {
"userName":"Enter_Username",
"skipOTP": true,
"otp":"Enter_OTP",
"payToken":"Enter_Payment_Token",
"transactionType": "MT100",
"osvPlatformBanks": [
{
"bankCode": "Enter_Bank_Code",
"bankAccessToken": "Enter_Bank_Access_Token"
"isBulk" : true,
"comments":"Enter_Comments",
"osvPlatformPayments": [
{
"companyCode": "Company_Code",
"currency":"Enter_Currency",
"amount" : 00.00,
"debitAccount": {
"accountHolderName": "Enter_Account_Holder_Name",
"accountNumber": "Enter_Account_Number",
"bic":"Enter_BIC",
"address": "Enter_Address"
},
"creditAccount": {
"accountHolderName": "Enter_Account_Holder_Name",
"accountNumber": "Enter_Account_Number",
"bic":"Enter_BIC",
"address": "Enter_Address"
},
"transferType":"Type_of_Transfer",
"por": "/XX//Select_POR"
},
{
"companyCode": "Company_Code",
"currency":"Enter_Currency",
"amount" : 00.00,
"debitAccount": {
"accountHolderName": "Enter_Account_Holder_Name",
"accountNumber": "Enter_Account_Number",
"bic":"Enter_BIC",
"address": "Enter_Address"
},
"creditAccount": {
"accountHolderName": "Enter_Account_Holder_Name",
"accountNumber": "Enter_Account_Number",
"bic":"Enter_BIC",
"address": "Enter_Address"
},
"transferType":"Type_of_Transfer",
"por": "/XX//Select_POR"
}
]
},
{
"bankCode": "Enter_Bank_Code",
"bankAccessToken": "Enter_Bank_Access_Token"
"isBulk" : true,
"comments":"Enter_Comments",
"osvPlatformPayments": [
{
"companyCode": "Company_Code",
"currency":"Enter_Currency",
"amount" : 00.00,
"debitAccount": {
"accountHolderName": "Enter_Account_Holder_Name",
"accountNumber": "Enter_Account_Number",
"bic":"Enter_BIC",
"address": "Enter_Address"
},
"creditAccount": {
"accountHolderName": "Enter_Account_Holder_Name",
"accountNumber": "Enter_Account_Number",
"bic":"Enter_BIC",
"address": "Enter_Address"
},
"transferType":"Type_of_Transfer",
"por": "/XX//Select_POR"
},
{
"companyCode": "Company_Code",
"currency":"Enter_Currency",
"amount" : 00.00,
"debitAccount": {
"accountHolderName": "Enter_Account_Holder_Name",
"accountNumber": "Enter_Account_Number",
"bic":"Enter_BIC",
"address": "Enter_Address"
},
"creditAccount": {
"accountHolderName": "Enter_Account_Holder_Name",
"accountNumber": "Enter_Account_Number",
"bic":"Enter_BIC",
"address": "Enter_Address"
},
"transferType":"Type_of_Transfer",
"por": "/XX//Select_POR"
}
]
}
]
}
}'
Request description:
JSON Tag | Description | Data type |
---|---|---|
clientId Mandatory | Client ID | String |
clientCode Mandatory | Client Code | String |
signature Mandatory | Signature | String |
sid Mandatory | Session ID | String |
Authorization: Bearer Mandatory | Authorization Bearer Code i.e., Access Token | String |
osvPlatformPaymentRQ Mandatory | Process Payment Request Tag | Object |
userName Mandatory | Account Username | String |
"skipOTP Mandatory | True or False to enable or disable OTP verification option | Boolean |
otp Mandatory | One-Time Password for Payment Verification | String |
payToken Mandatory | Payment Token for Authorization | String |
transactionType Mandatory | Type of transactions | String |
osvPlatformBanks Mandatory | Array of Banks | Array |
isBulk Mandatory | Bulk processing status to be true for bulk payments processing | Boolean |
bankCode Mandatory | Bank Code as per Bank Name | String |
bankAccessToken Optional | Bank access token | String |
comments Mandatory | Comments about the payment | String |
osvPlatformPayments Mandatory | Array of Payment to process | Array |
companyCode Mandatory | Company Code | String |
currency Mandatory | Currency of the payment | String |
amount Mandatory | Amount to be paid | String |
debitAccount Mandatory | Debit account details | Object |
accountHolderName Mandatory | Name of the account holder | String |
accountNumber Mandatory | Account Number | String |
bic Mandatory | BIC Code of the bank | String |
address Mandatory | Address | String |
creditAccount Mandatory | Crediting account details | Object |
transferType Mandatory | Type of transfer | String |
por Mandatory | Purpose of remittance | String |
Sample responses
Valid/Successful response
✔️ If Valid information in the header and body of a request is processed successfully
{
"osvPlatformPaymentRS": {
"status": "SUCCESS",
"osvPlatformBanks": [
{
"bankCode": "Bank_Code",
"transactionReferenceNumber": "Transaction_Reference_Number",
"osvPlatformPayments": [
{
"status": "Status_of_Process",
"statusDetail": "Status_Details",
"companyCode": "Company_Code",
"sequenceNum": "Sequence_Number",
"statusCode": "Status_Code",
"ackReference": "Acknowledge_Reference",
"transactionDate": "Transaction_Date",
"transferType": "Transfer_Type",
"transferTypeReferenceNumber": "Transfer_Type_Reference_Number",
"bankReferenceNumber": "Bank_Reference_Number",
"debitCurrency": "Debit_Currency",
"debitAmount": 00.00,
"amountCredited": 00.00,
"chargeAmount": 00.00,
"customerRate": "Customer_Rate",
"b2bUrn": "B2B_URN",
"b2bAggrId": "B2B_Aggregate_ID",
"b2bAggrName": "B2B_Aggregate_Name",
"b2bUserId": "B2B_User_ID"
},
{
"status": "Status_of_Process",
"statusDetail": "Status_Details",
"companyCode": "Company_Code",
"sequenceNum": "Sequence_Number",
"statusCode": "Status_Code",
"ackReference": "Acknowledge_Reference",
"transactionDate": "Transaction_Date",
"transferType": "Transfer_Type",
"transferTypeReferenceNumber": "Transfer_Type_Reference_Number",
"bankReferenceNumber": "Bank_Reference_Number",
"debitCurrency": "Debit_Currency",
"debitAmount": 00.00,
"amountCredited": 00.00,
"chargeAmount": 00.00,
"customerRate": "Customer_Rate",
"b2bUrn": "B2B_URN",
"b2bAggrId": "B2B_Aggregate_ID",
"b2bAggrName": "B2B_Aggregate_Name",
"b2bUserId": "B2B_User_ID"
}
]
},
{
"bankCode": "Bank_Code",
"transactionReferenceNumber": "Transaction_Reference_Number",
"osvPlatformPayments": [
{
"status": "Status_of_Process",
"statusDetail": "Status_Details",
"companyCode": "Company_Code",
"sequenceNum": "Sequence_Number",
"statusCode": "Status_Code",
"ackReference": "Acknowledge_Reference",
"transactionDate": "Transaction_Date",
"transferType": "Transfer_Type",
"transferTypeReferenceNumber": "Transfer_Type_Reference_Number",
"bankReferenceNumber": "Bank_Reference_Number",
"debitCurrency": "Debit_Currency",
"debitAmount": 00.00,
"amountCredited": 00.00,
"chargeAmount": 00.00,
"customerRate": "Customer_Rate",
"b2bUrn": "B2B_URN",
"b2bAggrId": "B2B_Aggregate_ID",
"b2bAggrName": "B2B_Aggregate_Name",
"b2bUserId": "B2B_User_ID"
}
]
}
]
}
}
Valid/Successful response description:
JSON Tag | Description | Data type |
---|---|---|
osvPlatformPaymentRS | Payment Response Tag | Object |
status | Status of the process | String |
transactionReferenceNumber | Transaction Reference Number by SV | String |
osvPlatformBanks | Array of Banks | Array |
bankCode | Bank Code | String |
bankReferenceNumber | Bank Reference Number | String |
osvPlatformPayments | Payment processed tag | String |
status | Status of the process | String |
companyCode | Company Code | String |
sequenceNum | Sequence Number | String |
statusCode | Code of the status | String |
statusDetail | Process Status Details | String |
ackReference | Acknowledgement reference number | String |
transactionDate | Date of transaction | String |
transferType | Type of transfer | String |
transferTypeReferenceNumber | Transfer Type Reference Number | String |
bankReferenceNumber | Bank Reference Number | String |
debitCurrency | Currency in which the amount has been debited | String |
debitAmount | Amount debited | String |
amountCredited | Amount credited to the account | String |
chargeAmount | Charged amount | String |
customerRate | Rate provided to the customer | String |
b2bUrn | B2B URN with respect to Bank | String |
b2bAggrId | B2B Aggregate ID with respect to Bank | String |
b2bAggrName | B2B Aggregate name with respect to Bank | String |
b2bUserId | B2B User ID with respect to Bank | String |
Invalid/Failed response
❌ If Invalid information in the header of a request is processed successfully
{
status: "FAILURE",
errorCode: "Failed_Code",
message: "Failed_Message"
}
Invalid/failed response description:
JSON Tag | Description | Data type |
---|---|---|
status | Status of the Process | String |
errorCode | Error Code | String |
message | Response Message | String |
Response in case of a Technical error is encountered
⚠️ When the process encounters a technical error
{
status: "TECHERROR",
errorCode: "Error_Code",
message: "Error_Message"
}
Error response description:
JSON Tag | Description | Data type |
---|---|---|
status | Status of the Process | String |
errorCode | Error Code | String |
message | Response Message | String |
Updated 5 months ago