RadiantPay Developer Platform
Not authenticated
● API Documentation

Build powerful payment experiences.

Integrate RadiantPay Disbursement APIs to securely initiate batch payments, verify beneficiary accounts, retrieve transaction status and access Nigerian bank data.

Base URL https://app.radiantsgroup.com/

Authentication

Authenticate once and use the returned JWT token for subsequent API requests.

Get your access token

Sign in using your developer credentials to obtain a JWT access token.

POST /api/Auth/login

JWT Access Token

Your JWT is automatically stored for API requests during this browser session.

No access token available.
Send the JWT with your protected API requests using:

Authorization: Bearer <your-access-token>

Request Headers

API requests require the appropriate authentication and integration headers.

Header Description Required
Authorization JWT token returned from /api/Auth/login Yes
RequestReference Unique reference per transaction. Yes
AuthorizationKey Base64 encoded authorization value. Yes
PublicKey Base64 encoded public value. Yes
HashKey SHA512 hash generated according to the endpoint parameter ordering. Yes
MerchantCode Your assigned merchant code. Yes
Content-Type Use application/json for POST requests. POST only
Security: Your Private Key must never be exposed in client-side HTML or JavaScript. Generate HashKey values securely within your backend infrastructure.

Batch Payment

Initiate multiple beneficiary payments from a single source account.

POST /BatchPayment

Request Parameters

Parameter Type Description
sourceAccountNo string Account number to debit.
debitAccountBankCode string Bank code of the debit account.
batchReference string Unique reference for the batch.
narration string Description of the payment. Maximum 18 characters.
totalPaymentItem number Total number of beneficiaries.
totalAmount number Total amount for all beneficiaries.
beneficiaries array List of beneficiary payment instructions.
Request Body
{
  "sourceAccountNo": "0114922798",
  "debitAccountBankCode": "058",
  "batchReference": "489348934983468",
  "narration": "Testing",
  "totalPaymentItem": 2,
  "totalAmount": 300,
  "beneficiaries": [
    {
      "beneficiaryAccountNumber": "0114922798",
      "beneficiaryName": "Testing Testing Testing",
      "beneficiaryBankCode": "058",
      "amount": 120,
      "transactionReference": "4534899833434",
      "narration": "Testing"
    },
    {
      "beneficiaryAccountNumber": "0114922798",
      "beneficiaryName": "Testing Testing Testing",
      "beneficiaryBankCode": "058",
      "amount": 180,
      "transactionReference": "453489983345354",
      "narration": "Testing"
    }
  ]
}
HashKey Combination

SHA512( Base64(AuthorizationValue) + Base64(PublicKey) + PrivateKey + PrivateKey.Substring(0, N) + MerchantCode + SourceAccountNo + BatchReference + TotalAmount)
SUCCESSFUL RESPONSE
{
  "responseCode": "00",
  "responseMessage":
    "Batch Transaction Successfully acknowledged"
}
FAILED RESPONSE
{
  "responseCode": "02",
  "responseMessage":
    "Duplicate Batch Reference Number."
}

Batch Transaction Status

Retrieve the current status of a batch transaction using its BatchReference.

GET /GetBatchTransactionStatus/{BatchReference}
HashKey Combination

SHA512( Base64(AuthorizationValue) + Base64(PublicKey) + PrivateKey + PrivateKey.Substring(0, N) + MerchantCode + BatchReference)
SUCCESSFUL RESPONSE
{
  "transactionReference": "6102258516612502252110",
  "responseCode": "00",
  "responseMessage": "Processing Batch Transaction"
}

Beneficiary Transaction Status

Retrieve the status of an individual beneficiary transaction using the TransactionReference.

GET /GetTransactionStatus/{TransactionReference}
HashKey Combination

SHA512( Base64(AuthorizationValue) + Base64(PublicKey) + PrivateKey + PrivateKey.Substring(0, N) + MerchantCode + TransactionReference)
SUCCESSFUL RESPONSE
{
  "transactionReference": "453489983345354",
  "responseCode": "00",
  "responseMessage": "Successful"
}
PROCESSING RESPONSE
{
  "transactionReference": "453489983345354",
  "responseCode": "09",
  "responseMessage":
    "Request processing in progress"
}

Name Enquiry

Verify a beneficiary account and retrieve the associated account holder information before initiating payment.

POST /NameEnquiry
Request Body
{
  "accountNumber": "0114922798",
  "bankcode": "058",
  "transactionReference": "34983498349834",
  "accountName": "Testing Testing Testing"
}
HashKey Combination

SHA512( Base64(AuthorizationValue) + Base64(PublicKey) + PrivateKey + PrivateKey.Substring(0, N) + AccountNumber + BankCode + TransactionReference)
SUCCESSFUL RESPONSE
{
  "responseCode": "00",
  "transactionReference": "34983498349834",
  "accountNumber": "0114922798",
  "accountName": "Testing Testing Testing",
  "responseMessage": "Successful",
  "bankVerificationNumber": "22000000076",
  "nameEnquiryRef": "110011250226112551459116196589",
  "kycLevel": "2"
}

Get Banks

Retrieve the list of supported banks and their CBN bank codes.

GET /GetBanks
HashKey Combination

SHA512( Base64(AuthorizationValue) + Base64(PublicKey) + PrivateKey + PrivateKey.Substring(0, N) + 2)
SUCCESSFUL RESPONSE
{
  "responseCode": "00",
  "responseMessage": "Successful",
  "bankModels": [
    {
      "cbnBankCode": "070",
      "bankName": "Fidelity Bank Plc"
    },
    {
      "cbnBankCode": "011",
      "bankName": "First Bank of Nigeria Plc"
    }
  ]
}

HashKey Generation

Every API request requires a HashKey generated using the exact parameter order specified for that endpoint.

Important: Parameter ordering is strict. Changing the order of values when generating the SHA512 hash will produce a different HashKey and your request may be rejected.

Your Private Key must only exist in a secure backend environment and should never be exposed to a browser, mobile application or public source code.

Response Codes

Code Description
00 Request completed successfully.
01 Authorization failed.
02 Request failed. Review the response message for the specific reason.
09 Request processing is currently in progress.