Skip to content
>
Mode: standard

Wallets

Authenticated

Create, address, and manage merchant wallets.

The Wallets API gives your integration full programmatic control over multi-currency wallets — create them, generate as many deposit addresses as you need, and pair them with the Transactions API to move funds.

UI vs API Wallets

Often confused
Dashboard (UI) wallet

Created from the CoinPayments dashboard. Visible in the UI, but not accessible from the API.

API wallet

Created via POST /merchant/wallets and scoped to the integration that created it. Only this kind is addressable from the API.

Need to migrate UI → API? Use wallet consolidation to sweep funds between the two.

Temporary vs Permanent Addresses

Set via usePermanentAddresses
Temporary default

Account-based addresses that recycle back to the CoinPayments pool once their job is done or after a period of inactivity. Any residual balance is auto-credited to your account. Cheaper for short-lived attribution like a single invoice.

Permanent

Addresses that never expire — funds stay put until you consolidate them. One-time activation fee on the first sweep or spend; subsequent operations are cheaper. Best for per-customer addresses.

UTXO chains are always permanent. If a currency's capabilities array contains utxo (Bitcoin, Litecoin, Dogecoin, …), addresses on that chain cannot be temporary — UTXOs are inherently address-bound. The usePermanentAddresses flag only affects account-based chains.

Integration scope

Wallets are bound to the integration that created them. If you rotate integrations or work with multiple, you'll need a corresponding wallet on each — secrets are not shared. See Integration Options for the shapes this can take.

Where to next?

Pick the most useful next step.