Bridge stablecoin-backed cards for commercial use integrate Stripe Issuing with Stripe Connect and Bridge’s stablecoin infrastructure. This lets you build a global commercial card program where each business customer gets their own Stripe connected account, and authorized users within that business can be issued cards that spend from a stablecoin wallet.
Entity model
Each business customer is represented across two systems:
| Object | System | Description |
|---|
| Customer | Bridge | Holds the business’s identity, KYC status, and cards endorsement. You create and manage this via the Bridge API. |
| Connected Account | Stripe | Created automatically by Bridge once the cards endorsement is approved. Represents the business within your Stripe Connect platform. |
The Bridge Customer and Stripe Connected Account are linked 1:1. Within each Connected Account, you create Cardholders and Cards via the Stripe API using the Stripe-Account header. All cardholders and cards for a business are scoped to that Connected Account and appear under it in the Stripe Dashboard.
How it differs from consumer issuing
| Consumer | Commercial |
|---|
| Customer type | Individual | Business |
| Stripe object created by Bridge | Cardholder | Connected Account |
| Who creates the Cardholder | Bridge | You, via Stripe API |
| Stripe setup | Stripe Issuing | Stripe Connect Platform |
| Real-time auth webhook | Not supported | Supported |
| Primary funding strategy | Noncustodial or Bridge Wallet | Bridge Wallet |
Technical integration APIs
| Step | API |
|---|
| Onboard business customers | Bridge API |
| Create cardholders | Stripe API |
| Create and manage cards | Stripe API |
| Card spend APIs and webhooks | Stripe API |
| Additional card features | Stripe API |
| KYC and cards endorsement management | Bridge Dashboard |
| Cards management | Stripe Dashboard |
Step 1: Set up Bridge developer and Stripe account
Work with Bridge to get a developer account set up on Bridge. Separately, set up a new Stripe account as a Connect Platform.
Bridge will send you a URL (Stripe App Install Link) to associate your Bridge developer account to the Stripe platform account and activate Stripe Issuing. This flow connects Bridge to your Stripe platform.
Step 2: Create customer
Each business you onboard is represented on Bridge as a business-typed Customer and on Stripe as a connected Account. Bridge manages creating the Stripe connected account within your platform—you only need to create the customer on the Bridge API or Dashboard and request the cards endorsement.
Once the cards endorsement is approved, Bridge creates the Stripe connected account automatically. The account ID is returned in the customer object:
{
"id": "edf01834-552b-41c9-8506-1bebc7a9741d",
"type": "business",
"status": "pending",
"stripe_account_id": "acct_...",
"endorsements": [
{
"name": "cards",
"status": "complete",
"requirements": {
"complete": [
"business_name",
"email_address",
"minimal_source_of_funds_data",
"proof_of_source_of_funds_document",
"adverse_media_screen",
"sanctions_screen",
"fincen_special_measures_screen",
"pre_onboarding_check"
],
"issues": []
}
}
]
}
Use the stripe_account_id as the Stripe-Account header in all subsequent Stripe API calls for this business.
Step 3: Create cardholder
Unlike consumer issuing, you create the Cardholder yourself via the Stripe API. Include the business’s stripe_account_id in the Stripe-Account header. For production, you must surface the authorized user terms, record the IP and date the user accepted them, and submit that in the request:
curl -X POST https://api.stripe.com/v1/issuing/cardholders \
-u sk_live_…: \
-H "Stripe-Account: acct_CONNECTED_ACCOUNT_ID" \
-d "name=Jenny Rosen" \
-d "email=jenny.rosen@example.com" \
-d "phone_number=+18008675309" \
-d "status=active" \
-d "type=individual" \
-d "individual[first_name]=Jenny" \
-d "individual[last_name]=Rosen" \
-d "individual[dob][day]=1" \
-d "individual[dob][month]=11" \
-d "individual[dob][year]=1981" \
-d "individual[user_terms_acceptance][lead][ip]=..." \
-d "individual[user_terms_acceptance][lead][date]=..." \
-d "billing[address][line1]=510 Townsend Street" \
-d "billing[address][city]=San Francisco" \
-d "billing[address][state]=CA" \
-d "billing[address][postal_code]=94111" \
-d "billing[address][country]=US"
Multiple cardholders within the same business can share the same Bridge Wallet.
Step 4: Create card
Use the cardholder ID from the previous step to create a card via the Stripe API. Include the Stripe-Account header and specify the wallet using the crypto_wallet parameter. Bridge Wallet is the primary funding strategy for commercial cards:
curl -X POST https://api.stripe.com/v1/issuing/cards \
-u sk_live_…: \
-H "Stripe-Account: acct_CONNECTED_ACCOUNT_ID" \
-d cardholder=ich_1234 \
-d currency=usd \
-d type=virtual \
-d status=active \
-d "crypto_wallet[chain]=solana" \
-d "crypto_wallet[currency]=usdb" \
-d "crypto_wallet[type]=bridge_wallet" \
-d "crypto_wallet[address]=8gN8ioFOObaraWxRcb5p9QHxBSQG8fgHhE95LoAGZXCK"
A card and its Bridge Wallet must belong to the same business. Multiple cards within the same business can share a single Bridge Wallet.
See Funding strategies for the full crypto_wallet parameter reference. Noncustodial wallets (type=standard) are also supported for commercial cards.
Step 5: Test card spend
Once your card is activated, you can begin testing card spend immediately. View card details in the Stripe Dashboard or embed a Stripe Issuing Element to expose them to cardholders without bringing your backend into PCI scope.
Real-time authorization
Commercial issuing supports the issuing_authorization.request webhook, which gives you control over individual authorization decisions. Configure the webhook endpoint in the Stripe Dashboard—your endpoint must respond within 2 seconds with an approval or denial.
Bridge may also independently reject an authorization even if your endpoint approves it—for example, due to insufficient wallet balance, onchain transaction screening, or velocity limits. Always rely on issuing_authorization.created and issuing_authorization.updated events for the final authorization outcome.
Webhooks
Use Stripe Issuing webhooks to receive notifications about authorizations and transactions. The lifecycle is the same as consumer issuing—see the Webhooks guide for the full event reference.
Additional card features
All Stripe Issuing features are available. See the additional card features guide for details on physical cards, mobile wallets, spending limits, disputes, and fraud management.
Cardholder support: Phone support is optional for commercial programs but recommended. Stripe’s support agents can handle this on your behalf in English or Spanish. Contact your account manager for details.
Fraud liability: As the platform developer, you are ultimately liable for fraud on your platform. Bridge recommends enabling 3DS and advanced fraud models for commercial programs.
Developer support
For support inquiries, use your dedicated Bridge Slack cards channel. A Bridge representative will help resolve issues across both the Stripe and Bridge APIs.