FurlPay Docs
Open App
  • Services & Availability
  • Quickstart
  • For AI Agents
  • Monorepo
  • API Routes
  • Authenticationupdated
  • Webhook Eventsupdated
  • Error Codesupdated
  • Rate Limitsnew
  • Configuration & Setupnew
  • Merchant Paymentsnew
  • Payroll & Payoutsnew
  • Agentic Payments (x402)updated
  • Agent Trust & Mandates (TAP)updated
  • CCTP Cross-Chainupdated
  • LI.FI Swapsupdated
  • FurlPay Travels (Travel MCP)updated
  • Solana Actions & Blinks
  • Settlement Workspacenew
  • FURL Tokennew
  • Claude Connectorupdated
  • AI Assistants
  • Circlenew
  • Ramp Providersnew
  • Telegram Mini Appnew
  • Stripe Crypto
  • Persona KYC
  • Regulatory status
  • Screening & Casesnew
  • Security Postureupdated
  • Signing & WebAuthnupdated
  • Help Center
  • Getting Started
  • KYC Verification
  • Passkeys & Biometrics
  • Privacy & Data Protection
  • Transaction Statuses
  • Gasless Transfers
  • Deposits & Withdrawals
  • Managing Virtual Cards
  • Freezing & Unfreezing Cards
  • Declined Transactions
  • SDK & API Support
  • x402 Monetization Basics
  • Booking Travel
  • Travel Refunds & Cancellations

Resources

  • Changelog
  • System Status
  • OpenAPI Spec
  • Community
  • GitHub
Docs/Payments/Agentic Payments (x402)

Payments

Agentic Payments (x402)

FurlPay implements x402 and the Machine Payments Protocol (MPP) for HTTP "Payment Required" challenges. On 11 October 2026, the production x402 endpoint returned 503 controls_unavailable with reason plan_limit. x402 and MPP settlement are also not currently enabled for production payments.

Protocol support is not settlement availability

This guide describes protocol shapes and request formats. The FurlPay x402 endpoint is currently unavailable, and no sample exchange is evidence that an agent can pay for a resource in production. Check the live rail registry; if a settlement rail is not healthy or its status is unavailable, do not release a paid resource.

The flow

1 · Request
GET /api/x402/fxno payment yet
2 · Quote
402 Payment Requiredsigned requirements
3 · Pay & retry
X-PAYMENTsample EIP-3009 authorization
4 · Deliver
Settlement gatednot live in production
Protocol flow. Production settlement is currently gated, so the final paid response is not available as a live FurlPay service.

When a settlement rail is enabled, the intended sequence runs through the facilitator's verification guards before the resource is served. The diagram documents that flow; it is not evidence that production settlement is configured:

Rendering diagram…
Full x402 settlement sequence: quote binding, atomic nonce claim, EIP-3009 transfer on-chain, confirmation gate, receipt.

1. Request the resource

When operational controls are available, an unpaid request is intended to return 402 with a machine-readable payment quote. The production endpoint currently returns 503. Any quote fields below are illustrative; use values returned by a healthy endpoint and never hardcode a recipient or network:

bash
curl -i "https://furlpay.com/api/x402/fx?from=USD&to=EUR&amount=100"

HTTP/1.1 402 Payment Required
{
  "x402Version": 1,
  "accepts": [{
    "scheme": "exact",
    "network": "<network-from-current-challenge>",
    "maxAmountRequired": "10000",        // 0.01 USDC (6 decimals)
    "asset": "<asset-from-current-challenge>",
    "payTo": "<payTo-from-current-challenge>",
    "resource": "https://furlpay.com/api/x402/fx",
    "extra": { "quoteId": "…", "expiresAt": 1782943200, "binding": "…" }
  }]
}

2. Pay and retry

The protocol client signs an EIP-3009 transferWithAuthorization for the quoted amount and retries with the base64 payload in the X-PAYMENT header. A live paid response requires a configured settlement rail; do not treat the example below as a response that is available in production today.

bash
curl "https://furlpay.com/api/x402/fx?from=USD&to=EUR&amount=100" \
  -H "X-PAYMENT: $(base64_signed_payload)"

HTTP/1.1 200 OK
X-PAYMENT-RESPONSE: eyJzdWNjZXNzIjp0cnVl…
{ "paid": true, "payer": "0x1111…", "quote": { "rate": 0.917, "amountTo": 91.7 } }

Hardened verification

With agents, the payment is the authentication — so payment verification is the entire security boundary. Furlpay defends the four attack classes from 2026 x402 research (arXiv 2605.11781 / 2605.30998):

  • Authorization — amount, recipient, and network are re-checked server-side; the client's echoed requirements are never trusted.
  • Binding — each quote carries an HMAC over (resource, method, amount, expiry); a payment for one endpoint fails closed on every other.
  • Replay — quote IDs and nonces are single-use with a 300-second expiry.
  • Web-layer — the header is size-capped and strictly parsed; malformed input returns 400, never a free resource.

Related agent controls

Protocol settlement is separate from agent identity and spending policies. See Agent Trust & Mandates for the controls that apply before a payment action is prepared.
Did this page help?
Edit this page on GitHub

← Previous

Payroll & Payouts

Next →

Agent Trust & Mandates (TAP)