The Monnify Wallet Creation API facilitates the process of creating wallets for customers. This API provides the necessary functionality to generate wallets, allowing businesses to effortlessly create wallets for their customers through integration with the Monnify platform.
This endpoint is protected with a Basic Authentication. To access this endpoint, include the Authorization header in your HTTP requests. The header should start with the word "Basic" followed by a space and a base64-encoded string representing your apiKey and clientSecret as "apiKey:clientSecret".
Endpoint URL: {{base_url}}/api/v1/disbursements/wallet
HTTP Method: POST
The {{base_url}} for test is https://sandbox.monnify.com
but when you go live, it changes to the live url
The API would require the following information: customer's wallet reference number, wallet name, customer name, BVN details, and customer email address. Once these details are sent through the endpoint, the API will return a Moniepoint account number along with the wallet details. The associated account name will match the customer name provided in the request.
See sample request and responses below:
Create Wallet Request
{ "walletReference":"ref1684248425966", "walletName":"Staging Wallet - ref1684248425966", "customerName": "John Doe", "bvnDetails": { "bvn": "22222222226", "bvnDateOfBirth": "1993-10-03" }, "customerEmail": "smekiliuwa@moniepoint.com" }
Create Wallet Response
{ "requestSuccessful": true, "responseMessage": "success", "responseCode": "0", "responseBody": { "walletName": "Staging Wallet - ref1684331663572", "walletReference": "ref1684331663572", "customerName": "John Doe", "customerEmail": "smekiliuwa@moniepoint.com", "bvnDetails": { "bvn": "22222222226", "bvnDateOfBirth": "1993-10-03" }, "accountNumber": "6000000352", "accountName": "John Doe", "topUpAccountDetails": { "accountNumber": "8000195479", "accountName": "John Doe", "bankCode": "50515", "bankName": "Moniepoint MFB" } } }
Field Reference
(M) indicates fields that are mandatory in the request body. (m) Indicates fields that are mandatory only if the parent object is not empty.
Field | Description |
---|---|
walletReference (M) | A uniquely generated reference that identifies the wallet |
walletName (M) | A descriptive name for the generated wallet |
customerName (M) | This is name of the customer whom the wallet is assigned to. |
bvn (M) | The valid bvn of the customer |
bvnDateOfBirth (M) | The date of birth linked to the bvn in the format yyyy-mm-dd |
customerEmail (M) | Email address of the customer. |
accountNumber | The internal wallet account id for disbursement purpose. |
topUpAccountDetails | An object containing the top up details of the customer. |
topUpAccountDetails.accountNumber | The customer’s top up account number. |
topUpAccountDetails.bankCode | The top up bank code. |
topUpAccountDetails.bankName | The top up bank name. |
topUpAccountDetails.accountName | The top up account name that displays during name enquiry. |