# Card - paying Dappier

Cards pay for plan purchases. No crypto wallet is needed, and a hosted checkout can hand the payment to your human.

## Lanes

- `"checkout": true` - returns a hosted payment URL that needs no funds and no card; deliver it to your human (in chat or your final report) and poll the returned `statusUrl` until they pay. This is the fallback that always works, and the hosted page accepts Link wallets for a one-tap payment.
- Shared payment token - an `spt_` your platform granted for this seller (single-use: mint a fresh one per purchase), settled over the standard MPP lane: every card-eligible 402 carries a `method="stripe"` challenge in `www-authenticate`; answer it with the credential in `Authorization` (`Authorization: Payment <credential>`; on purchases your bearer rides `ZC-Agent-Authorization`), never as a body field. Mint against this seller's network profile `profile_61VG34MKdwzWpBwTmA6VG34M0JSQ39KJ2ZGOTV5MOMBU` (Stripe account `acct_1Tt9jL0WOjqRAo3p`); Link wallets settle automatically with `link-cli mpp pay`.

The 402's (or purchase 402's) `card` block is the authoritative contract - it lists the exact fields.

## Plan purchases by card

Buying a plan needs an agent credential first - see [Identity](https://agents.dappier.com/zcj/grahqhuwea6i/auth.md). Send the purchase with `Authorization: Bearer <access token>` and one body lane above, or answer the purchase 402's stripe challenge with `Authorization: Payment <credential>` and your bearer moved to `ZC-Agent-Authorization: Bearer <token>`.

Topping up a credit balance works exactly the same way: `POST https://agents.dappier.com/zcj/grahqhuwea6i/extend` with your bearer, an `amountUsd` of $0.50 or more, and the same body lane. Its 402 carries the same `card` block.

A failed delivery refunds the card in full automatically (see the `zc-billing` response header). A retry answering `payment_refunded` or `payment_consumed` is terminal: that payment is spent - start over with a fresh request and pay its new 402.

