Money Transfer (Payout)

With our money transfer service, you can make the transfer (Otherwise called Payout) to any bank account or wallet in Nigeria.

You can also make this transfer using our portal, you can make a one-time payment or do a bulk upload for multiple payments at once.

Money transfer process happens in 2 simple steps

  • Get the details of the recipient account - Account Number and Bank Name
  • Make the money transfer

👍

Demo

Let’s demo how-to-make the transfer (Payout) from Paga to any bank account or wallet in Nigeria.

Step 1: Get Destination Details

Before you can initiate a money transfer you need to know the DestinationAccountNumber and UUID (UUID is the bank name identifier for the receiving bank you can get the UUID from our GetBank endpoint) for the customer, once you have the data, populate the respective parameter below accordingly to initiate the Money Transfer transaction

Step 2: Initiate Money Transfer

referenceNumber: A unique reference number provided by the business, identifying the transaction. - HashIndex-1
Amount - The amount due on the service you're purchasing - Hashindex-2
currency - NGN for Nigeria-based merchants
destinationBankUUID: The destination bank UUID fetched from the Get bank endpoint - Hashindex-3
destinationBankAccountNumber: This should contain the account number of the recepient, it is a 10-digit number - Hashindex-4
remarks: This is optional field that contain any additional information to share with receipint

POST /paga-webservices/business-rest/secured/depositToBank HTTP/1.1
Host: beta.mypaga.com
Content-Type: application/json
principal: 93A5E317-738220032-94DE-50BA4B653EE5
credentials: fS4*tfgyhjklokk+QvTq%WE
hash:  69cdcaaee22e0491d83602e8ab15ebb2a70c3657803af0bd7e786cf529c5f9a210f1a5bfdefa2d3bbcbc786b1b65a5b29a65acfdea8b062fc91f3f689db41640
Content-Length: 272

{
    "referenceNumber": "234534998574985825646",
    "amount": "10000000",
    "currency": "NGN",
    "destinationBankUUID": "40090E2F-7446-4217-9345-7BBAB7043C4C",
    "destinationBankAccountNumber": "0000000000",
    "remarks": "Show this at Bank"
}

Sample Response

{
    "responseCode": 0,
    "responseCategoryCode": null,
    "message": "Successfully deposited N50.00 to bank account ******1998. Transaction Id: LSQCX.",
    "referenceNumber": "234534998574985825646",
    "transactionId": "LSQCX",
    "currency": "NGN",
    "exchangeRate": null,
    "fee": 53.75,
    "sessionId": "100002220430071206000484273656",
    "vat": 3.75,
    "destinationAccountHolderNameAtBank": "BELLO, RAMON ADENIYI"
}

That’s it, you’ve successfully transferred money to a bank account.

Get Bank UUID

For this process, you’ll need to getBank Endpoint to fetch the list of banks and obtain their UUID.

ParameterTypeDescriptionRequired
referenceNumberStringA unique reference number provided by the business, identifying the transaction. This reference number will be preserved on the Paga platform to reconcile the operation across systems and will be returned in the responseM
localeStringThe language/locale to be used in messaging. If provided, this must conform to the IETF language tag standardO
POST /banks HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: "Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="
Hash: 8210b03dc46d1dccc7ed2b1fd6abe59b5e4952ba3f4a335e8b6684c5d85979df0867064d8e146039019cf4cb8d0036ef02daceacbc610544fae159e53f7df286

{
  "referenceNumber" : "615388801037"
}
{
  "referenceNumber" : "615388801037"
}

Sample Response

Obtain the list of available banks on the Paga platform, parameterising the list returned for use in subsequent money transfer operations.

{
    "referenceNumber": "005345987543914345300021",
    "statusCode": "0",
    "statusMessage": "success",
    "banks": [
        {
            "name": "Access Bank",
            "uuid": "40090E2F-7446-4217-9345-7BBAB7043C4C",
            "interInstitutionCode": "000014",
            "sortCode": "044",
            "ussdCode": "901"
        },
        {
            "name": "FCMB",
            "uuid": "757E1F82-C5C1-4883-B891-C888293F2F00",
            "interInstitutionCode": "000003",
            "sortCode": "214",
            "ussdCode": "329"
        },
        {
            "name": "United Bank for Africa",
            "uuid": "C5A55AC4-86F8-4EAA-A979-56B47989BD0F",
            "interInstitutionCode": "000004",
            "sortCode": "033",
            "ussdCode": "919"
        },
        {
            "name": "First Bank of Nigeria",
            "uuid": "8B9CCA8B-F092-4704-82FD-B82D2B9A1993",
            "interInstitutionCode": "000016",
            "sortCode": "011",
            "ussdCode": "894"
        },
        {
            "name": "GT Bank",
            "uuid": "3E94C4BC-6F9A-442F-8F1A-8214478D5D86",
            "interInstitutionCode": "000013",
            "sortCode": "058",
            "ussdCode": "737"
        },
        {
            "name": "Zenith Bank",
            "uuid": "6B8787D1-1EA9-49EC-9673-BDCA6354BF9D",
            "interInstitutionCode": "000015",
            "sortCode": "057",
            "ussdCode": "966"
        },
         …,
          {
            "name": "Paga",
            "uuid": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA",
            "interInstitutionCode": null,
            "sortCode": "327",
            "ussdCode": null
        }
    ]
}

Validate Bank Account Details

To transfer to any bank account in Nigeria, you’ll need the account number and Bank Name. for example, you want to make a salary payment to your employee's bank account, you’ll need to ask them for their Account Number and Bank Name then use the Validate Deposit to Bank Endpoint to validate the details provided. Below is a sample request on how to achieve that

Get the bank details - The validation will check the validity of the account number and Bank name provided, likewise, it will check your available balance if it’s enough to support the operation you’re about to perform.

Required
referenceNumberstringA unique reference number provided by the business, identifying the transaction. This reference number will be preserved on the Paga platform to reconcile the operation across systems and will be returned in the responseM
amountstringThe amount of money to deposit to the destination bank and bank account provided. Your Paga account must contain sufficient funds to cover this amount plus any fees.M
currencystringThe currency of the operation, if being executed in a foreign currency. The currency must be one of the currencies supported by the platform. For supported currencies, check with Paga integration operations support.O
destinationBankUUIDstringThe Paga bank UUID identifying the bank to which the deposit will be made. In order to get the list of supported banks and bank UUIDs, execute the getBanks operation defined in this document. Bank UUID will not change but additional banks may be added to the list in the future.M
destinationBankAccountNumberstringThe ten digit NUBAN bank account number for the account to which the deposit will be made. This number should be a valid account number for the destination bank as specified by the destinationBankCode parameter above. Executing operation will validate this number and if valid, return the account holder name as stored at the bank for this account.M
{
    "referenceNumber": "{{referenceNumber}}",
    "amount": "{{amount}}",
    "currency": "NGN",
    "destinationBankUUID": "40090E2F-7446-4217-9345-7BBAB7043C4C",
    "destinationBankAccountNumber": "0000000000"
}
{
    "responseCode": 0,
    "responseCategoryCode": null,
    "message": null,
    "referenceNumber": "444167617074",
    "fee": 53.75,
    "vat": 3.75,
    "destinationAccountHolderNameAtBank": "Elizabeth James Patterson"
}

What’s Next