Single Payment

Make a single payment through Payouts API

SingleView Payouts API 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

🌐Domain details

Make a single payment

Endpoint details

Endpoint URLMethodAuthentication requirements
/api/v1/payment/fundtransfer?transferType=POST1/. clientid
2. clientsecret
3. Authroization: Bearer (Token)
4. SVReferenceID
5. CompanyId
6. Signature
transferTypeQuery Parameter1. Same Bank : interbank
2. Local Bank: sarie
3. International : swift

Sample request

curl --location 'https://sandboxapi.onesingleview.com/api/v1/payment/fundtransfer?transferType=interbank' \
--header 'clientsecret: Enter-Client-Secret' \
--header 'clientid: Enter-Client-Id' \
--header 'SVReferenceID: Enter-SV-Reference-Id' \
--header 'Device: Device-type' \
--header 'DateTimeStamp: YYYY-MM-DDTHH:MM:SS' \
--header 'CompanyId: Enter-Company-Id' \
--header 'BaseCurrency: SAR' \
--header 'Authorization: Bearer <Enter-Token>' \
--header 'Content-Type: application/json' \
--data '{
"Message": {
  "OSVPaymentMessageRequest": {
    "TransactionType": "Enter_Transaction_Type",
    "OSVPaymentTransactionRequest": [
      {
        "BankCode": "Enter_Bank_Code",
        "TransactionReferenceNumber": "Enter_Transaction_Reference_Number",
        "TransactionDescription": "Enter_Transaction_Description",
        "BulkToSingle": true,
        "TransactionData": [
          {
            "CompanyCode": "Enter_Company_Code",
            "SequenceNum": "Ente_Sequence_Number",
            "B2BAggrId": "Enter_B2B_Aggregator_ID",
            "B2BName": "Enter_B2B_Name",
            "B2BUserId": "Enter_B2B_User_ID",
            "B2BUrn": "Enter_B2B_URN",
            "B2BCRN": "Enter_B2B_CRN",
            "DateCurrencyAmount": {
              "Date": "Enter_Date",
              "Currency": "Enter_Currency_",
              "Amount": "Enter_Amount"
            },
            "OrderingCustomerNameAddress": {
              "OrderingCustomerName": "Enter_Ordering_Customer_Name",
              "OrderingCustomerAdd1": "Enter_Address_Line_1",
              "OrderingCustomerAdd2": "Enter_Address_Line_2",
              "OrderingCustomerAdd3": "Enter_Address_Line_3"
            },
            "OrderingInstitution": "Enter_Ordering_Institution_Code",
            "OrderingCustomerAccountNumber": "Ordering_Customer_Account_Number",
            "OrderingCustomerIBAN": "Ordering_Customer_IBAN",
            "OrderingCurrency": "Enter_Ordering_Currency",
            "BeneficiaryAccountWithInstitutionBIC": "Enter_Beneficiary_Account_With_Institution_BIC",
            "BeneficiaryAccountNumberNameAddress": {
              "BeneficiaryAccount": "Enter_Beneficiary_Account",
              "BeneficiaryName": "Enter_Beneficiary_Name",
              "BeneficiaryADD1": "Enter_Beneficiary_Address_Line1",
              "BeneficiaryADD2": "Enter_Beneficiary_Address_Line2",
              "BeneficiaryADD3": "Enter_Beneficiary_Address_Line3"
            },
            "PurposeOfRemittance": "Enter_Purporse_of_Remittance",
            "DetailsOfCharge": "Enter_Details_of_Charge",
            "AdditionalDetails": "Add_Additional_Details",
            "TransactionComment": "Enter_Transaction_Comment",
            "TransferType": "Enter_Transaction_Type"
          }
        ]
      }
    ]
  }
},
"Signature": "Enter_Signature_String"
}'

Request Description

JSON TagDescriptionData type
Message
Mandatory
Header information (client credentials)Object
OSVPaymentMessageRequest
Mandatory
Root node containing all the payment transaction messagesObject
TransactionType
Mandatory
Always it should be "MT100"Alphanumeric
OSVPaymentTransactionRequest
Mandatory
This tag contains multiple banks requestsObject
BankCode
Mandatory
Bank Code (Identifier)
Ex: “ALRAJHI”, “SABB”
Alphanumeric
TransactionReferenceNumber
Mandatory
It is a unique reference number generated by the customer for each transaction)
Maximum length : 16 numeric characters
Numeric
TransactionDescription
Mandatory
Payment Description
Maximum length : 35 characters
String
BulkToSingle
Mandatory
Boolean indication of payment type (Bulk/Single)Boolean (True/False)
TransactionData
Mandatory
This tag contains the payment detailsObject
CompanyCode
Mandatory
Sender company code/Identifier provided by the bankNumeric
SequenceNum
Mandatory
Unique number representing each transactionNumeric
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
B2BCRN
Conditional
Unique Identity for Client Will be provided by Al Rajhi Bank. Mandatory only for Al Rajhi Bank.String
DateCurrencyAmount
Mandatory
Element root containing details of Date, Currency and AmountObject
Date
Mandatory
Value date
(Transactions will be performed on this date.
Date must be expressed as YYMMDD <year, month, day>.)
Maximum length : 6 numeric characters
Numeric
Currency
Mandatory
This is the currency code used in the transaction.
Maximum length: 3 digit currency code
Numeric
Amount
Mandatory
This is the amount used in the transaction.
Maximum length : 15 digit amount
Numeric
OrderingCustomerNameAddress
Mandatory
Element root containing details of Ordering customerObject
OrderingCustomerName
Mandatory
Ordering Customer’s Name Alphabet
OrderingCustomerAdd1
Mandatory
Ordering Customer’s AddressString
OrderingCustomerAdd2
Mandatory
Ordering Customer’s AddressString
OrderingCustomerAdd3
Mandatory
Ordering Customer’s AddressString
OrderingInstitution
Mandatory
Ordering Institution
Ex: SABBSARI, RJHISARI
Alphanumeric
OrderingCustomerAccountNumber
Mandatory
Ordering Customer’s account number (Any one is mandate Account Number or IBAN Number)Alphanumeric
OrderingCustomerIBAN
Mandatory
Ordering Customer’s IBAN number (Any one is mandate Account Number or IBAN Number)Alphanumeric
OrderingCurrency
Mandatory
This is the currency code used in the transaction.
Maximum length : 3 digit currency code
Alphabet
BeneficiaryAccountWithInstitutionBIC
Mandatory
Beneficiary BIC Code
Ex: SABBSARI, RJHISARI
Maximum length: 8 or 11 characters
Alphanumeric
BeneficiaryAccountNumberNameAddress
Mandatory
Element root containing details of the beneficiary Object
BeneficiaryAccount
Mandatory
Beneficiary Customer’s NameString
BeneficiaryName
Mandatory
Beneficiary Name
Maximum 35 characters
Alpha-Numeric
BeneficiaryADD1
Mandatory
Beneficiary Address Line 1String
BeneficiaryADD2
Mandatory
Beneficiary Address Line 2String
BeneficiaryADD3
Mandatory
Beneficiary Address Line 3String
PurposeOfRemittance
Mandatory
Always should be “99”Numeric
DetailsOfCharge
Mandatory
Always should be “SHA”Alphabet
AdditionalDetails
Mandatory
Additional detailsString
TransactionComment
Mandatory
Additional comments for the payments
Min Length: 5 Characters, Max Length : 30 Chars
String
TransferType
Mandatory
Same Bank : Interbank,
Local Bank: sarie,
International : swift
Alphabet
Signature
Mandatory
Encrypted string obtained by processing request body with Private Key/Certificate through SHA-256 with RSA Algorithm (Crypto : JCE Sign)String

Sample response

✅ Successful response

{
  "OSVPaymentMessageResponse": {
    "OSVPaymentTransactionResponse": [
      {
        "BankCode": "ALRAJHI",
        "BankReferenceNumber": "",
        "TransactionReferenceNumber": "882537611",
        "TransactionData": [
          {
            "CompanyCode": "125001291",
            "SequenceNum": "8825376008111",
            "StatusCode": "OK",
            "StatusDetail": "Your Payment file has been accepted, Kindly attempt to do a Payment Inquiry in a few minutes to know the Final status."
          }
        ]
      }
    ]
  }
}

Response description

JSON TagDescriptionData type
OSVPaymentMessageResponseRoot nodeObject
OSVPaymentTransactionResponseElement root containing response of every bank transactionsObject/Array
BankCodeName of the bank.
Ex: “ALRAJHI”, “SABB”
String
BankReferenceNumberBankReferenceNumberString
TransactionReferenceNumberIt is a unique reference number generated by the customer by the time of transaction)
Maximum length : 16 numeric characters
String
TransactionDataThis tag contains the status of the paymentsString
CompanyCodeSender company Code/IdentifierString
SequenceNumValue of Sequence Number
Maximum Length :16 digits numeric
String
StatusCodeCode representing status of the requestString
StatusDetailDetails about the status of the requestString