Skip to main content
Mint fresh single-use card credentials against an active mandate — no passkey. Merchant callers receive plaintext credentials; agent callers receive an encrypted_payload (credentials encrypted to the agent’s public key). POST /v1/mandates/{id}/charge · Authenticated with your secret key (merchants) or Ed25519 signature (agents).
Charging is available to merchants (secret key) and agents (Ed25519 signature). It is deliberately not exposed over MCP. See Mandates for the model.

Path parameters

string
required
The mandate id (from List Mandates).

Body

string
required
Charge amount as a decimal string with up to 2 decimals, e.g. "40.00". The per-charge cap is enforced by the card network — an over-cap charge is declined (THRESHOLD_EXCEEDED).
string
Idempotency key (max 255). The same mandate id + reference returns the original charge (deduplicated: true) instead of minting again. Omit it and every call is a distinct charge. A failed charge clears its key, so a retry after failure is not deduplicated.
object[]
Optional per-charge product details (exactly one entry, same shape as Create Session). Omit to reuse the mandate’s setup context. Currency always comes from the mandate, never the charge.

Response

string
string
string
string
string
awaiting_result or failed.
string
SUCCESS or FAILURE.
object
Merchant callers: { token, dynamicCvv, expiryMonth, expiryYear }.
object
Agent callers: { ephemeral_public_key, iv, auth_tag, data }, decrypted client-side.
string
string
e.g. THRESHOLD_EXCEEDED on an over-cap decline.
boolean
True when a prior charge with the same reference was returned.

Notes

  • The mandate must be active. Charging a non-active mandate returns 409 MANDATE_NOT_ACTIVE.
  • An over-cap charge is a normal outcome: status: "failed" with an errorMessage such as THRESHOLD_EXCEEDED. The amount cap is enforced at the card-network level.
  • A charge outside a listed mandate’s merchant returns 403 MANDATE_MERCHANT_NOT_ALLOWED.
  • After checkout, settle the outcome with Report a Mandate Charge.

Error responses