{"contractVersion":1,"product":"virtual_card","name":"x402card virtual card","description":"Wallet-owned virtual Mastercard issued after an exact native Base USDC x402 payment.","discovery":"https://api.x402card.org/api/card/discovery","directPurchase":{"method":"POST","url":"https://api.x402card.org/api/card/purchase","authentication":"x402_payment_payer","input":{"idempotencyKey":"required before submitting PAYMENT-SIGNATURE; reuse after ambiguous responses"},"payerBecomesOwner":true,"paymentSubmissionsMaxPerAttempt":1,"issuanceAsynchronous":true},"economics":{"walletPaymentUsdCents":2500,"platformIssueFeeUsdCents":1000,"expectedAvailableAfterIssueUsdCents":1500},"payment":{"protocol":"x402","version":2,"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","challengeHeader":"PAYMENT-REQUIRED","paymentHeader":"PAYMENT-SIGNATURE","settlementHeader":"PAYMENT-RESPONSE"},"continuation":{"authenticateOwner":"POST /api/auth/challenge, then POST /api/auth/verify with the payer wallet","listCards":"GET /api/cards","cardBalance":"GET /api/cards/:id/balance","revealCredentials":"POST /api/cards/:id/reveal with a fresh owner signature","credentialsPolicy":"owner-only, private, no-store, never returned by the purchase endpoint or remote MCP"},"availability":{"publicIssueEnabled":true,"allowlistEnabled":false},"safety":["Never provide a seed phrase or private key","Verify the exact 402 amount, Base network, native USDC asset, payee, and resource before signing","After an ambiguous payment response, repeat the same request with the same idempotency key and do not create a new payment","Treat issuance as pending until the provider reports the card active","Reveal card credentials only through a fresh owner-authenticated private channel"]}