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
  • Ensure that Date tag in YYMMDD format should have an upcoming date. Transaction with a past date gets failed.
  • 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.
  • Beneficiary information should not contain special characters such as #, &, *, %, =, ^, _, \, {, |, }, ~, ", ;, @, [, ], `
📘

Mandatory information

  • The user must provide the valid credentials in the header
  • Encrypted and valid Signature and an active "Access Token" , >, <, and ```.
🌐

Domain details

EnvironmentDomainRate/Limit
Sandboxsandboxapi.onesingleview.com10 Calls per Minute
Production/LIVETo be provided upon onboardingBased on contract

Make a single payment

Endpoint details

Endpoint URLMethodAuthentication 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
  2. Local Bank: sarie
  3. International : swift

Sample request

curl --location 'https://sandboxapi.onesingleview.com/api/v1/payment/fundtransfer?transferType=interbank' \
--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": "2222222",
                    "BulkToSingle": true,
                    "BankCode": "ALRAJHI",
                    "TransactionData": [
                        {
                            "AdditionalDetails": "",
                            "OrderingCustomerIBAN": "SA358000204000010006085128008",
                            "BeneficiaryAccountWithInstitutionBIC": "RJHISARI",
                            "PurposeOfRemittance": "01",
                            "TransferType": "sarie",
                            "SequenceNum": "77858297",
                            "BeneficiaryAccountNumberNameAddress": {
                                "BeneficiaryADD2": "Al Rabie Dist Riyadh Saudi Arabia",
                                "BeneficiaryADD3": "Riyadh Saudi Arabia",
                                "BeneficiaryADD1": "Trade Finance Center",
                                "BeneficiaryName": "Abdul",
                                "BeneficiaryAccount": "204000010006085127014"
                            },
                            "B2BCRN": "2020050501",
                            "OrderingCustomerNameAddress": {
                                "OrderingCustomerAdd3": "Saudi Arabia",
                                "OrderingCustomerAdd1": "Head Off P.O Box 66674",
                                "OrderingCustomerAdd2": " Riyadh",
                                "OrderingCustomerName": "Mohammed"
                            },
                            "OrderingCurrency": "SAR",
                            "TransactionComment": "2222",
                            "DateCurrencyAmount": {
                                "Currency": "SAR",
                                "Amount": "12",
                                "Date": "250116"
                            },
                            "OrderingCustomerAccountNumber": "204000010006085128008",
                            "OrderingInstitution": "RJHISARI",
                            "CompanyCode": "125001234",
                            "DetailsOfCharge": "SHA"
                        }
                    ],
                    "TransactionReferenceNumber": "797687499"
                }
            ]
        }
    },
    "Signature": "efJYWXExtuqCNHtQ8iaZPBL9j7DGpwuyl38UFTomsuz6M4M1ERSE0MpW4dmMXCTLPbk3uhEOnBPfyOJ04jcjeNK9k4bpdYrk+8gGHOg9IrO+eCaA0XOXVxNzOJXLv2nUwyPV8rHYTSpI3XFo98cvVcCNjOb3cwwDN3vH6ml9TEJqN3/xQKm6+jzAo26zkD2Ui3RX1fl4UcACchPuZhPfKTj4JirhGL3Gi4IqqaDCHvH2xKjKXEuCO4BZ0P24kl1RCUzZ3nOwc6rxT/xEb2ouwUNUVI5/l45g3bd1Eo1X/f9KWZvDWeBlaV+cYCBAKvUVfvJZXCNHgmhKBOpJkCBgUA=="
}'

Request Description

JSON TagRequirementDescriptionData type
MessageMandatoryHeader information (client credentials)Object
OSVPaymentMessageRequestMandatoryRoot node containing all the payment transaction messagesObject
TransactionTypeMandatoryTo be always mentioned as MT100Alphanumeric
OSVPaymentTransactionRequestMandatoryThis tag contains multiple banks requestsObject
BankCodeMandatoryUnique bank identification code Ex:ALRAJHI, SABB, BSF, ANB, NCB, ALINMA, GIB, RIYADH, ALBI, BJAZAlphanumeric
TransactionReferenceNumberMandatoryIt is a unique reference number generated by the customer for each transaction) Maximum length : 16 numeric charactersNumeric
TransactionDescriptionMandatoryPayment Description Maximum length : 35 charactersString
BulkToSingleOptionalBoolean indication of payment type (Bulk/Single)Boolean (True/False)
TransactionDataMandatoryThis tag contains the payment detailsArray
CompanyCodeMandatorySender company code/Identifier provided by the bankAlphanumeric
SequenceNumMandatoryUnique number representing each transaction generated by the client Length of input: 16 charactersNumeric
B2BAggrIdConditionalUnique B2B aggregator identification details. Mandatory only for ICICI BankAlphanumeric
B2BNameConditionalUnique B2B name Mandatory only for ICICI BankAlphabet
B2BUserIdConditionalUnique B2B user identification details Mandatory only for ICICI BankAlphanumeric
B2BUrnConditionalUnique B2B URN Mandatory only for ICICI BankString
B2BCRNConditionalUnique Identity for Client Will be provided by Al Rajhi Bank Mandatory only for Al Rajhi BankString
DateCurrencyAmountMandatoryElement root containing details of Date, Currency and AmountObject
DateMandatoryValue date Transactions will be performed on this date. Date must be expressed as YYMMDD Maximum length : 6 numeric charactersDate
CurrencyMandatoryThis is the currency code used in the transaction. Length of input: 3 charactersAlphabetic
AmountMandatoryThis is the amount used in the transactionNumeric
OrderingCustomerNameAddressMandatoryElement root containing details of Ordering customerObject
OrderingCustomerNameMandatoryOrdering Customer’s Name Input size: Min - 3 Characters Max - 35 CharactersAlphabet
OrderingCustomerAdd1MandatoryOrdering Customer’s Address Line 1 Input size: Min - 3 Characters Max - 35 CharactersString
OrderingCustomerAdd2MandatoryOrdering Customer’s Address Line 2 ( city to be mentioned) Input size: Min - 3 Characters Max - 35 CharactersString
OrderingCustomerAdd3MandatoryOrdering Customer’s Address Line 3 Input size: Min - 3 Characters Max - 35 CharactersString
OrderingInstitutionMandatoryOrdering Institution Ex: SABBSARI, RJHISARI Maximum length: 8 or 11 charactersAlphanumeric
OrderingCustomerAccountNumberConditional Mandatory for NCBOrdering Customer’s account number (Any one is mandatory Account Number or IBAN Number) Input size: Min - 11 Characters Max - 24 CharactersAlphanumeric
OrderingCustomerIBANConditionalOrdering Customer’s IBAN number (Any one is mandatory Account Number or IBAN Number)Alphanumeric
OrderingCurrencyMandatoryThis is the currency code used in the transaction. Maximum length : 3 digit currency codeAlphabet
BeneficiaryAccountWithInstitutionBICMandatoryBeneficiary BIC Code Ex: SABBSARI, RJHISARI Maximum length: 8 or 11 charactersAlphanumeric
BeneficiaryAccountNumberNameAddressMandatoryElement root containing details of the beneficiaryObject
BeneficiaryAccountMandatoryBeneficiary Customer’s account number Input size: Min - 11 Characters Max - 24 CharactersString
BeneficiaryNameMandatoryBeneficiary Name Input size: Min - 3 Characters Max - 35 CharactersAlphabetic
BeneficiaryADD1MandatoryBeneficiary Address Line 1 Input size: Min - 3 Characters Max - 35 CharactersString
BeneficiaryADD2MandatoryBeneficiary Address Line 2 ( city to be mentioned) Input size: Min - 3 Characters Max - 35 CharactersString
BeneficiaryADD3MandatoryBeneficiary Address Line 3 Input size: Min - 3 Characters Max - 35 CharactersString
PurposeOfRemittanceMandatory

Code representing the purpose of remittance

View all POR codes

Numeric
DetailsOfChargeMandatoryAlways should be SHAAlphabet
AdditionalDetailsOptionalAdditional details Max size of input: 35 CharactersString
TransactionCommentMandatoryAdditional comments for the payments Max size of input: 35 CharactersString
TransferTypeMandatorySame Bank : interbank Local Bank: sarie International : swiftAlphabet
SignatureMandatoryEncrypted string generated using a Private Key/CA-Signed Certificate with SHA-256 and RSA (JCE Signature)String

Sample response

✅ Successful response

{
  "OSVPaymentMessageResponse": {
    "OSVPaymentTransactionResponse": [
      {
        "BankCode": "ALRAJHI",
        "BankReferenceNumber": "",
        "TransactionReferenceNumber": "797687499",
        "TransactionData": [
          {
            "CompanyCode": "125001234",
            "SequenceNum": "77858297",
            "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
BankCodeUnique bank identification code Ex:ALRAJHI, SABB, BSF, ANB, NCB, ALINMA, GIB, RIYADH, ALBI, BJAZString
BankReferenceNumberBank Reference NumberString
TransactionReferenceNumberIt is a unique reference number generated by the customer by the time of transaction)String
TransactionDataThis tag contains the status of the paymentsString
CompanyCodeSender company Code/IdentifierString
SequenceNumUnique sequence number of the transaction generated by the clientString
StatusCodeCode representing status of the request OK FAILED ONHOLDAlphabet
StatusDetailDetails about the status of the request 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 Error ONHOLD - Response timeout! In such case, Perform a payment enquiry. If payment enquiry cannot be performed, contact customer supportString