Endpoints Overview
Retrieve the Fintech Wallet
GET /getfintechwallet
Returns your fintech’s Smart Wallet configuration and the complete list of registered External Wallets.
object
Response
Add an External Wallet
POST /addexternalwallet
Registers an external wallet address on your fintech account. External wallets cannot be used for escrow operations. The address must be valid for the specified blockchain before it is accepted.
This endpoint registers wallets at the fintech level. To nominate an external delivery destination for an individual end-user’s cNGN, use Set User Default Wallet instead.
string
required
The wallet address to register on the platform.
string
required
The blockchain network the wallet belongs to (e.g.
base, eth, bsc).string
required
The wallet custody type. One of
hot, cold, custodial, or other.string
A human-readable name for easy identification (e.g.
Cold Storage Wallet).string
The intended use of this wallet (e.g.
Daily operations and withdrawals).boolean
Whether to set this wallet as your fintech’s default external wallet. Defaults to
false. This does not affect end-user deliveries - see User Default Wallet.object
Additional custody information.
Response
Invalid address format
Wallet already registered
Update External Wallet Status
PUT /updateexternalwalletstatus
Activates or deactivates a registered external wallet. Inactive wallets cannot receive transfers from the platform.
string
required
The wallet address to update.
string
required
The new status for the wallet. Must be either
active or inactive.Response
Wallet not found
Invalid status value
Remove an External Wallet
DELETE /removeexternalwallet
Permanently removes an external wallet from your fintech account. This action cannot be undone.
string
required
The wallet address to remove from your fintech account.
Response
Wallet not found
Retrieve User Wallets
POST /listuserwallets
Returns all wallets provisioned for a specific end-user, including their current token balances. Each user has a primary EVM Smart Wallet on Base plus multi-chain wallets on Bantu and Solana.
string
required
The unique identifier (hash or UUID) of the end-user.
object
Response
User not found
Migrate User Wallets
POST /migrateuserwallets
Provisions default wallets for end-users who were created before automated wallet provisioning was enabled. Use this endpoint to bring legacy users up to the current wallet structure.
array
required
A list of user identifiers (hashes or UUIDs) to migrate. You can pass multiple user IDs in a single call.
boolean
When
true, the migration proceeds even if a user already has partial wallet data. Defaults to false.object
Response
Fintech System Wallet Balance
GET /balance/multi
Returns your fintech’s own Smart Wallet token balance across one or more EVM networks. Use the networks query parameter to limit the check to specific chains.
string
The token ticker to query (e.g.
CNGN, USDC, USDT). Defaults to CNGN.string
Comma-separated list of EVM network keys to check (e.g.
base,eth,bsc). Defaults to all supported EVM networks.object
Response
Balance for a Specific Address
POST /balance/address
Returns the token balance for any arbitrary EVM address across one or more networks. Useful for checking balances of addresses that are not necessarily your Smart Wallet.
string
required
The EVM wallet address to query.
string
The token ticker to query (e.g.
CNGN, USDC, USDT). Defaults to CNGN.array
Array of EVM network keys to check (e.g.
["base", "eth", "bsc"]). Defaults to all supported EVM networks.object
Response
End-User Balance
GET /balance/user/:userId
Returns the token balances across all wallets provisioned for a specific end-user. Balances are resolved from the user’s Smart Wallet and all additional network addresses associated with the user.
string
required
The unique identifier of the end-user whose balance you want to retrieve.
string
The token ticker to query (e.g.
CNGN, USDC, USDT). Defaults to CNGN.object
Response