Skip to main content
POST
/
v1
/
cards
curl --request POST \
  --url https://api.havn.finance/v1/cards \
  --header 'Authorization: Bearer havn_live_abc123def456' \
  --header 'Content-Type: application/json' \
  --data '{
    "network": "solana",
    "asset": "SOL",
    "cardType": "visa",
    "fundingAmount": 500.00
  }'
{
  "cardId": "crd_8f7b2c9a1e3d4f5b",
  "depositAddress": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
  "requiredAmount": 3.42910,
  "status": "awaiting_deposit",
  "expiresAt": "2026-03-01T14:30:00Z"
}

Authorization

Authorization
string
required
Bearer token. Format: Bearer <token>

Body Parameters

network
string
required
The source blockchain network name.Options: solana, ethereum, polygon, base, optimism
asset
string
required
The ticker of the asset you intend to fund with.Options: SOL, ETH, USDC, USDT, BTC
cardType
string
default:"visa"
The desired virtual card network credential.Options: visa, mastercard
fundingAmount
number
required
The USD value you wish to load onto the card. Our Oracle will generate the exact crypto equivalent required. Minimum: 10.00.

Response

cardId
string
Unique internal identifier for the card provisioning request. Format: crd_<16 chars>
depositAddress
string
The single-use deterministic smart contract address where you must send the crypto assets.
requiredAmount
number
The exact amount of the specified crypto asset required (calculated by the Oracle).
status
string
Current provisioning status. Values: awaiting_deposit, converting, provisioned, failed
expiresAt
string
ISO 8601 timestamp indicating when this quote/deposit address expires (usually 15-30 minutes).
curl --request POST \
  --url https://api.havn.finance/v1/cards \
  --header 'Authorization: Bearer havn_live_abc123def456' \
  --header 'Content-Type: application/json' \
  --data '{
    "network": "solana",
    "asset": "SOL",
    "cardType": "visa",
    "fundingAmount": 500.00
  }'
{
  "cardId": "crd_8f7b2c9a1e3d4f5b",
  "depositAddress": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
  "requiredAmount": 3.42910,
  "status": "awaiting_deposit",
  "expiresAt": "2026-03-01T14:30:00Z"
}