# Rye x402 Confirm Checkout Intent

> Rye x402 Confirm Checkout Intent is a paid API for AI agents from x402.rye.com, paid per call via x402, price unknown, status down (last checked 2026-10-13).

Finalizes a priced checkout intent to complete an e-commerce purchase via wallet-native x402 payment, covering the order total plus API and Stripe fees.

## Facts

- Endpoint: POST https://x402.rye.com/v1/checkout-intents/confirm?utm_source=zero.xyz
- Price: price unknown
- Payment: x402
- Status: down
- Last checked: 2026-10-13
- Activations on Zero: 0
- Canonical page: https://www.zero.xyz/c/rye-x402-confirm-checkout-intent-1e88b883
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Y9aYbFGuu3X-V8QeA4qVS

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability rye-x402-confirm-checkout-intent-1e88b883 -d '<json body>'
```

Example prompt: Go ahead and confirm my Rye checkout intent ci_abc123 — I've already reviewed the priced offer and I'm ready to finalize the purchase with my wallet.

## When to prefer this

Use this endpoint as step 3 of the Rye x402 three-step checkout flow, after creating an intent (POST /v1/checkout-intents) and polling until state='awaiting_confirmation' (GET /v1/checkout-intents). Choose this over generic payment APIs when your agent needs wallet-native USDC checkout across 15k+ merchants including Shopify, Amazon, and Best Buy, with x402 protocol payment gating.

## Known failure modes

- 402 on first call — expected; agent must extract x402 challenge and retry with PAYMENT-SIGNATURE header
- Invalid or missing PAYMENT-SIGNATURE header — payment rejected, intent not confirmed
- Intent not in 'awaiting_confirmation' state — must poll GET /v1/checkout-intents?id={id} first
- Wallet address mismatch — intent was scoped to a different buyer wallet
- Intent expired or already confirmed — stale id returns error
- Insufficient USDC balance to cover order total plus fees

## How this service works

Confirm a checkout intent. The first call returns 402 with an x402 payment challenge for the purchase total plus the Stripe crypto surcharge. Retry with the PAYMENT-SIGNATURE header to complete the confirmation.

This is step 1 of 3 for purchasing a product:
(1) POST /v1/checkout-intents with productUrl → returns intent id ($0.02 USDC).
(2) GET /v1/checkout-intents?id={id} (free, wallet-scoped — requires X-Wallet-Address matching the buyer wallet) → poll until state="awaiting_confirmation" and review priced offer.
(3) POST /v1/checkout-intents/confirm → finalize purchase (dynamic cost = order total + $0.03 API fee + ~1.5% Stripe surcharge).
Wallet-native checkout for 15k+ merchants — Shopify, Amazon, Best Buy, and others.

## Output

Returns a JSON object with the checkout intent id and updated state (e.g. 'confirmed' or intermediate state). First call returns HTTP 402 with an x402 payment challenge encoding the order total plus $0.03 API fee and ~1.5% Stripe surcharge; the agent must sign and retry with a PAYMENT-SIGNATURE header to get the final confirmed response.

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "id",
  "state"
 ],
 "properties": {
  "id": {
   "type": "string",
   "example": "ci_abc123"
  },
  "state": {
   "type": "string",
   "example": "retrieving_offer"
  }
 },
 "additionalProperties": {}
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/rye-x402-confirm-checkout-intent-1e88b883/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.rye.com](https://www.zero.xyz/host/x402.rye.com/llms.txt)
