docs
Get startedTroubleshootingPaymentsWebhooksAgent paymentsSwop MCPOviIdentity (swop.id)SwivyRPC (preview)API reference

Crypto vs. card

The two ways a buyer can pay, who can accept each one, and when card is offered.

Swop has two payment rails. A rail is the network the money travels on. Your integration code is the same for both; what differs is who can accept them and when they're offered.

At a glance

Crypto (USDC)Card
What the buyer usesAny wallet holding USDC. AI agents pay automatically.Credit or debit card, through Stripe
Who can acceptEvery Swop account, immediatelyAccounts that have completed merchant verification
Identity checksNever. Crypto is not gated on KYC.Merchant verification in the Swop app
How you turn it onIt's the defaultSend paymentRail: "buyer_choice" when you create the checkout
What you receiveUSDC in your Swop walletUSDC in your Swop wallet
Fee0.5% (minimum 0.015 USDC), from your proceedsShown separately on each checkout

How a crypto payment works

  1. Swop creates a payment request for the exact amount, tied to that checkout.
  2. The buyer's wallet sends USDC. On Solana this usually confirms in seconds.
  3. Swop watches the blockchain, matches the transfer to the checkout, and marks it paid.

No one has to press "confirm". The blockchain transfer is the confirmation, and once it's final it can't be reversed by the buyer the way a card chargeback can.

How a card payment works

  1. Your page asks Swop for a card payment (card-payment-intents) and gets a Stripe clientSecret.
  2. Stripe's Payment Element collects the card. Card numbers go from the buyer's browser to Stripe only.
  3. When Stripe confirms the charge, Swop records the order. Your payout arrives as USDC.

When is card offered?

cardOffered is true only when all of these hold:

  • You asked for it with paymentRail: "buyer_choice".
  • Your account is currently verified for card.
  • Every item in the cart is a physical product.
  • Any royalties on the cart can be paid on card.

Otherwise Swop quietly falls back to crypto only and cardOffered is false. The checkout still works.

Is my key card-enabled?

Call GET /me. cardEnabled tells you whether card is available to this key right now. A key can have the commerce.card scope ticked and still show cardEnabled: false until verification completes. Nothing breaks in the meantime.

On this page