UfitPay Fund Transfer API is designed for developers to easily integrate instant bank transfer functionality on any application using any software programing technology or development platform
Access to this API is available to all registered UfitPay customers and agents (wallet accounts). You will likely need access to a web developer or programmer (if you’re not one) to get the most use out of UfitPay API.
In order to interact with UfitPay Fund Transfer APIs, you need to enable API access on your account as well as Banking API access. To do this, go to Account Settings on the UfitPay Mobile App then click the Generate API Keys link. We will generate and send new API credentials to your registered email address;
Once generated, you will be able to retrieve your API credentials at any time by the View API keys link.
For added security, we recommend you restrict access to your API credentials to only white-listed IP addresses. You can do this by clicking the Restrict API Access link under Account Settings on UfitPay Mobile App.
All requests to this API require HTTP Header Authentication over TLS (HTTPS).
To authenticate your request, you need to pass the following parameters as part of your HTTP request headers;
Api-Key: Your wallet API key
API-Token: Your wallet API token
The following API Credentials can be used for development and test purpose only. Transactions done using these credentials are not treated as live
Test Wallet API Key: TSVLWCB5TO5RfJFCNkwSX8z0F8ZwD91
Test Wallet API Token: TS66uEwtekJEcWiwzC1gDdiDzKcJFk1
Below is a typical implementation of UfitPay Fund Transfer API
This API allows you to fetch available banks for a given country This endpoint is accessed by making an HTTP GET request to
Request Body Parameters | |
country (string) | (optional) This is the Country Code you want to fetch available bank for. Default value is NG |
Sample success response (json)
{
"resource": "banks",
"status":"success",
"data": [{
"bank_code": "057",
"bank_name": "Zenith Bank"
},
{
"bank_code": "058",
"bank_name": "Guaranty Trust Bank"
}]
}
Response parameters | |
bank_code (string) | This is the unique NUBAN bank code for the bank |
bank_name (string) | This is the bank name |
This API allows you to verify the account name of a bank account number. This endpoint is accessed by making an HTTP POST request to
Request Body Parameters | |
account_number (string) | (required) This is the bank account number to validate |
bank_code (string) | (required) This is NUBAN bank code of the bank you want to validate the account information for |
Sample success response (json)
{
"resource": "bank_validate",
"status":"success",
"data":{
"account_name": "John Doe",
"account_number": "0000000000",
"bank": "Zenith Bank"
}
}
Response parameters | |
account_name (string) | This is the owner's account name returned by the bank |
account_number (string) | This is the account number you validated |
bank (string) | This is the name of the bank validated |
This API allows you to securely transfer funds from your UfitPay wallet to any local bank account. This endpoint is accessed by making an HTTP POST request to
Request Body Parameters | |
account_number (string) | (required) This is the recipient's bank account number |
bank_code (string) | (required) This is bank code of the recipient's bank (Refer to Bank List API) |
amount (int) | (required) This is the exact amount you wish to transfer to the recipient (in Naira). Minimum value is 1000 naira |
narration (string) | (required) This is the transaction narration or description you want appeared in the recipient's bank statement for the transfer |
request_ref (string) | (optional) This is Your Own Unique transaction reference. If supplied, this can also be used to query status of this transfer. |
Sample success response (json)
{
"resource": "bank_transfer",
"status":"success",
"data":{
"transaction_status": "processing",
"reference": "5638GDKGF9GDKGE769O",
"amount": "1000",
"bank": "Zenith Bank",
"account_number": "0000000001",
"account_name": "John Doe"
}
}
Response parameters | |
transaction_status (string) | This is the current status the transaction, which can be either processing, waiting-approval or completed. (Please do not confuse this with the API request status) |
reference (string) | This is the UfitPay unique reference for the transaction |
amount (string) | This is the amount transfered |
bank (string) | This is the name of the recipient's bank |
account_number (string) | This is the recipient's account number |
account_name (string) | This is the name on the recipient's account |
Please note that if your wallet is a Mult-signatory account, all signatories need to approve your transfer before it is processed. The returned transaction_status will be "waiting-approval" in this case.
Best Practice:
Always call the Transaction Query API after a few minutes, using the transaction reference to get the updated status of the transaction.
Copyright @2024 Ynet Technology Ltd. All Rights Reserved