#Users wallet


User wallet is to enhance customer satisfaction. Note that this is a transactional wallet and can only be debited by an authorized merchant.




#Create a user wallet

This endpoint is to create a new user wallet. Creating a wallet is a crucial step that enables access to diversify transactions within our system.

 NameType Description
 firstname  String  First name of the intended wallet owner required
 surname  String  Surname of the intended wallet owner required
 account_name  String  The name that should reflect on the accont. optional
 Phone  Number  Phone number of the intended wallet owner required
 gender  String  Intended owner's given gender required
 dob  Number Intended Owner's date of birth required
 bvn  Number  BVN of intended wallet owner required

   curl -X POST \
     ' {{base-url}}/{{ merchant_id }}/wallet'
Payload :
    {
    "firstname": "Test",
    "surname": "Testing",
    "account_name": "Test Test",
    "phone": "2348078569419",
    "gender": "male",
    "dob": "5/9/1959",
    "bvn": "22769527394"
}

 


 

#Debit a user wallet

This is to debit a users wallet by an authorized merchant.

 NameType Description
 Phone  Number  Phone number of the wallet owner  
 account_number  String  Users account number  Required
 amount  Number Amount to be debited Required
 payment_gateway_code  Number  The gateway code for the wallet option Required

   curl -X POST \
     '{{base-url}}/{{ merchant_id }}/wallet/debit'
Payload :
{
    "phone": "2348078699345",
    "account_number": "11000893295",
    "amount": "100",
    "payment_gateway_code": "122"
}
Example :

 


 

#Credit a user wallet

This endpoint is used to credit a user's wallet by an authorized merchant. On call of this endpoint, money is moved from the merchant wallet to the assigned user wallet.

 NameType Description
 Phone  Number  Phone number of the wallet owner  
 account_number  String  Users account number  Required
 amount  Number Amount to be debited Required

   curl -X POST \
     '{{base-url}}/{{ merchant_id }}/wallet/credit'
Payload :
{
    "phone": "2348078699345",
    "account_number": "11000893295",
    "amount": "1000",
}
Example :



 

#Generate random BVN

This endpoint provides you with random BVN which you can use in our test environment. This can be run in your browser. All you need to do is to click here or copy the endpoint to your browser, then click on the generate button. Yes, your BVN is ready.

   curl -X GET \
     'https://topinfo.ng/bvn-generator/'
Example :





#Get a wallet Infomation

Send a request to this endpoint to retrieve information about an active wallet.

   curl -X POST \
     '{{base-url}}/transactional/wallet/'

Example :





#Get a wallet Histoty

To fetch a history of a wallet transaction.

   curl -X GET \
     '{{base-url}}/transactional/wallet/'

Example :