🔒 New · Stage 1 Privacy

Private x402
Payment Rail

Standard x402 payments are public. The Private Rail changes that. On-chain observers see only a hash commitment and a one-time address. No payer. No payee. No amount.

Commit-Reveal Stealth Addresses AES-256 Encrypted Storage EIP-191 Dispute Resolution ● Live on Base L2

Standard x402

  • Payer wallet visible on-chain
  • Payee wallet visible on-chain
  • Amount visible on-chain
  • Usage patterns analyzable

Private Rail

  • Only a hash commitment on-chain
  • One-time stealth address per session
  • Amount encrypted, never exposed
  • Sessions fully unlinked

How it works

1

Create a private session

POST payer, payee, and amount to /private/commit. Receive a commitment hash and one-time stealth address for this session only.

2

Send USDC to the stealth address

Pay the stealth address on Base L2. On-chain observers see a USDC transfer to an unlinkable address. Nothing else.

3

Confirm and settle

POST your session_id to /private/pay. We verify funds received, decrypt payee internally, and settle. No on-chain link between payer and payee.

4

Dispute resolution

Either party can call /private/reveal with a wallet signature to prove participation. Details only revealed to parties involved.

API Reference

POST https://x402-agent-pay.com/private/commit
{
  "payer": "0xYourWallet",
  "payee": "0xAgentWallet",
  "amount_usdc": 0.22
}

Response:
{
  "session_id": "prv_d168458ef8f868e1c9dbd2f4",
  "commitment": "0x5292...772c",
  "stealth_address": "0x6941...520ca",
  "expires_in": "300s"
}

POST https://x402-agent-pay.com/private/pay
{ "session_id": "prv_...", "tx_hash": "0x..." }

GET  https://x402-agent-pay.com/private/session/{id}
POST https://x402-agent-pay.com/private/reveal
GET  https://x402-agent-pay.com/private/info

Privacy level

Follows Fhenix Privacy Stages. AgentPay Private Rail is Stage 1 — standard x402 is Stage 0. Upgrade path to Stage 2 (FHE) planned when Fhenix402 reaches mainnet.

Get API Key → Facilitator Docs