Skip to main content

Cards

A Web3Card is a Visa card under your project's brand, issued by a partner institution and backed by an on-chain vault. Cards come in two forms and share the same lifecycle and API.

API v1 · Legacy

This page is part of the reference of the first version of the Web3Card API, kept here for reference. API v1 does not take new integrations: API v2 replaces it, and the platform today works as described in the rest of this manual.

Virtual cards​

Virtual cards are created instantly through the API. Card credentials (PAN, expiry, CVV) are delivered to the cardholder through a secure element embedded in your app or site, so sensitive data never touches your servers and your PCI DSS scope stays minimal.

Virtual cards support Apple Pay and Google Pay provisioning out of the box.

Physical cards​

Physical cards are produced with your program's artwork and shipped to cardholders worldwide. A physical card starts its life as an order (see Order physical cards), and must be activated by the cardholder before first use.

Card statuses​

StatusMeaning
pendingCreated, waiting for activation (physical) or provisioning (virtual)
activeReady to transact
frozenTemporarily blocked by the cardholder or your program
lostReported lost; permanently blocked
stolenReported stolen; permanently blocked
voidedVirtual card cancelled

Status transitions are available through the Cards API. frozen is reversible; lost, stolen, and voided are terminal, and a replacement card can be created against the same vault.

Spending controls​

Each card has a daily spending limit enforced at authorization time. Limits can be read and changed through the API, with changes taking effect immediately:

  • GET /cards/{id}/limits
  • PUT /cards/{id}/limits

One card, one vault​

Every card settles against its own individual multisig vault. This one-to-one relationship is what keeps programs non-custodial: freezing a card never locks the user's funds, and the user can withdraw from their vault at any time. See Vaults.