Wallet account numbers
Every wallet is identified by a unique 10-digit account number. This number works like a conventional Nigerian bank account number — other parties can send funds directly to it via NIP (bank transfer). You can look up any wallet by its account number usingGET /wallet/info.
Wallet states
A wallet can be in one of three states:Closing a wallet
To permanently close a wallet, callPOST /wallet/close. This action is irreversible.
Blocking and unblocking a wallet
Temporarily block a wallet withPOST /wallet/close (passing a reason) or re-enable it with POST /wallet/enable.
Creating a wallet
Create a wallet for a customer by callingPOST /wallet. You must supply the customer’s personal details, date of birth, phone number, and at least one KYC identifier (BVN or NIN).
You must provide either a
bvn or nin (or both). Wallets cannot be created without at least one KYC identifier.Bulk wallet creation
To create wallets for multiple customers in one request, upload a CSV file toPOST /wallet/bulk-create-customers. The CSV must contain one row per customer with the same fields as the single-wallet endpoint.
Wallet balances
A wallet has two balance figures:
For day-to-day operations, use
availableBalance to determine how much a customer can spend.
Post-no-credit mode
Post-no-credit mode allows a wallet to be debited but not credited. Use this to enforce collection-only behaviour on specific wallets — for example, loan repayment accounts that should never receive inbound transfers. Enable or disable post-no-credit mode per wallet. Only main merchants and admins can toggle this setting.Crediting and debiting wallets
Use the wallet endpoints to directly credit or debit a customer’s wallet from your merchant account.Credit a wallet
Debit a wallet
The
reference field must be at least 10 characters. Use a unique value for every transaction to allow safe retries and prevent duplicates.Batch operations
To credit or debit multiple wallets in a single request, use the batch endpoints:
Each batch request takes a
batchReference (minimum 10 characters) and an array of transactions:
Wallet-to-wallet vs bank transfers
TagPay supports two types of outbound transfers from a customer wallet:
Both transfer types require the customer to be authenticated and, where a PIN is set, to supply their transaction PIN.
Listing wallets
Retrieve all wallets under your merchant account:accountNumber, phoneNumber, or a search term. Up to 500 account numbers can be looked up in a single bulk request via GET /wallet/customer/accounts.
Related pages
Wallet management guide
Step-by-step guide to creating and managing wallets
Funds transfer
Send funds to banks and between wallets
Customers
Understand customer accounts and KYC tiers
Transactions
Understand transaction states, types, and reversals
