Skip to main content
The Bridge Cards API provides the ability to issue cards against a variety of different funding strategies. A card’s funding strategy sets the source of funds that will be spent when the card is used. There are 3 supported funding strategies:
  1. Bridge Wallet: Funds are pulled from a Bridge-custodied wallet created through the Bridge Wallets API. This requires setting up and funding a Bridge wallet through the Wallets API, and subsequently providing the wallet address to the Cards API.
  2. Non-Custodial: Funds are pulled from a non-custodial wallet each time a card is swiped. The wallet must approve or allow Bridge’s cards smart contract to spend an amount of the specified token from that wallet before the card account can be used. This wallet can be custodied by you or by the end customer.
  3. Card Wallet: The Cards API will automatically create a wallet for each card, as well as any number of deposit addresses on various chains with which funds can be transferred to the card. The balance is reserved exclusively for card spend until you withdraw it.
Bridge Wallet

Comparing Funding Strategies

There’s a simple decision tree to choose the right funding strategy. If the funds should be spent just-in-time out of a wallet that is not directly controlled by Bridge, choose non-custodial. Of the others, Card wallet is more simple to build on, with comprehensive balance change webhooks. Bridge wallet is more powerful and integrates seamlessly with everything Bridge offers, but requires a little more effort on your part to connect the dots between the card account and the Bridge wallet. Below is a table that compares the functional tradeoffs of each funding strategy.
Funds InFunds OutWebhooks
Bridge WalletYou fund the Bridge wallet directly using any available funding method available in the Wallets API. Funds will be debited from the Bridge wallet upon use.Excess funds will be returned automatically to the Bridge wallet, and can be transferred out using any withdrawal method provided in the Wallets API.Card account webhooks are not published when a Bridge wallet’s balance changes.
Non-CustodialYour wallet signs an approval or allowance to let Bridge’s smart contract spend from it. Bridge pulls funds from your external wallet at the time of card authorization.Excess funds will be returned automatically to the external wallet.Bridge does not automatically keep track of the balance of a non-custodial wallet. Card account webhook events are published when excess funds are recorded or returned to the non-custodial wallet.
Card WalletYou fund the card by sending stablecoins to the deposit address provided in the funding_instructions field of the card account.Funds are held within the card wallet until you physically move it out using the withdrawal endpoint.Webhook events are published whenever the balance changes in the top-up balance.

Examples

Below are example card account creation requests for each type of funding strategy:
{
    "chain": "solana",
    "currency": "usdc",
    "crypto_account": {
        "type": "standard",
        "address": "8VFm4KAaqeC5AS9XMuTyATqFbm8gqEemTR6mqBewQpEZ"
    }
}
Below are example card account response objects for each type of funding strategy:
{
    "id": "c70b30e1-2293-5555-bf51-30f447c7bf33",
    "customer_id": "163c4ef1-3330-5555-934b-02f4f3cb47ad",
    "client_reference_id": null,
    "cardholder_name": {
        "first_name": "Elvin",
        "last_name": "Yung"
    },
    "status": "active",
    "freezes": [],
    "created_at": "2025-09-13T01:35:33Z",
    "card_details": {
        "last_4": "4244",
        "expiry": "07/30",
        "bin": "443252801"
    },
    "balances": {
        "available": {
            "amount": "0.22",  // Reflects excess funds only, not onchain balance
            "currency": "usdc"
        },
        "hold": {
            "amount": "0.0",
            "currency": "usdc"
        }
    },
    "crypto_account": {
        "account_type": "non_custodial",
        "chain": "solana",
        "address": "BDkZQv1DqS7FOOBARjVEP8FbN9Xvpf5b67kpi3765rQb"
    }
}