Why this exists
Card-network rails expect an account to draw from. For a crypto-funded card that account is an on-chain wallet, but partners need a stable Sumvin handle on it: which wallet backs which card, what’s in it, how to top it up, where to look at recent activity. The funding wallet binding gives partners that handle without forcing them to track the relationship between an issued card and its on-chain backing themselves.How it works
Every card record has alinked_wallet_id pointing at the user’s funding wallet. That wallet is a Safe (the user’s smart-contract wallet) on the same chain as the card. Sumvin returns the Safe’s address on every card response as linked_wallet_address, and exposes a dedicated funding endpoint for richer detail and updates.
Launch chain
Sei (chain ID1329) is the launch chain for cards. The Safe that backs a card is deployed on Sei, and balances surface in the card’s funding response from there. Multi-chain card backing is not exposed today — a card has exactly one funding wallet on one chain.
Funding the wallet
A partner funds a card by sending value to the funding wallet’s address. The wallet is a normal Safe — anything that can transfer to a Safe address (an on-ramp, a DEX, a transfer from another wallet) can fund the card. There is no Sumvin-side “deposit” call. Once value lands on-chain at the Safe address, it’s available as funding. The Atomic Money ramps product is the supported on-ramp path for converting fiat into the funding wallet’s chain assets.Endpoints
Two endpoints expose the funding binding directly. Both use standard Juno JWT auth (x-juno-jwt).
Get card funding
GET /v0/card/{card_id}/funding
Returns the funding configuration for a card — currently the linked wallet’s address and a configured flag indicating whether the card has a funding wallet linked at all.
200 OK
string
External card ID.
string | null
Address of the Safe backing the card.
null if no wallet is linked.boolean
Whether a funding wallet is currently linked to the card.
string | null
Funding source type. Reserved — not yet populated by the read endpoint.
string | null
Linked fiat account ID. Reserved for future fiat funding sources.
_links block is the canonical entry point for everything you’d want to do with the funding wallet — read its assets, list its transactions, or pull recent card transactions filtered to it.
Update card funding
PUT /v0/card/{card_id}/funding
Accepts a funding source declaration. Changing a card’s funding source is in private preview: the endpoint accepts and validates a funding-source declaration and returns configured: false with message: "Funding configuration coming soon" until funding-source switching is available.
The accepted request shape:
string
required
One of
wallet or fiat.string
Required when
source_type is wallet. The address of an existing user wallet to use as the funding source.integer
Required when
source_type is wallet. Must match the chain of the wallet at wallet_address.string
Reserved for
source_type=fiat.Reading balance and activity
The funding response surfaces HAL links into the wallets and transactions APIs. The two most useful flows: Current balance?wallet_id={wallet_id} to filter by the funding wallet directly.
Errors
Funding endpoints reuse the card error codes. See Card management API → Errors for the full list. The two you’ll see at this surface:Related
- Card issuing overview
- Card management API
- Wallets guide — Safe creation, chain selection, balances
- Safes and identity — why a Safe and not an EOA
- Atomic Money ramps — supported on-ramp into the funding wallet
- Funding wallet (glossary)
- Issue a card quickstart
- Crypto wallet card use case