x402 vs Stripe
They solve different problems. Stripe is the gold standard for humans paying with cards. x402 is built for software — AI agents and APIs — paying tiny amounts per request. Here's the honest breakdown.
Is x402 cheaper than Stripe?
For small payments, yes. Stripe has an effective floor around $0.30 per transaction, making a $0.01 charge uneconomic. x402 settles USDC on Base with network fees under a cent and no fixed floor, so per-request and per-token pricing works. For large, infrequent human payments, Stripe is comparable or better and far more mature.
The short answer
Use Stripe to charge human customers (subscriptions, checkout, invoices). Use x402 when the payer is an autonomous agent or another machine that needs to pay per API call with no account and sub-cent amounts. Many teams run both.
Side-by-side
What the numbers actually look like
Illustrative, not a live quote — Stripe's exact rate varies by plan and region; x402's on-chain fee varies with Base network conditions but is consistently sub-cent.
Running both in one app
They don't compete for the same route. A common pattern: Stripe Checkout for human subscribers, x402 middleware for agent/API access to the same underlying data.
// One Express app serving two kinds of payer
import express from "express";
import Stripe from "stripe";
import { paymentMiddleware } from "@x402/express";
const app = express();
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY);
// Humans: Stripe Checkout for a subscription
app.post("/billing/checkout", async (req, res) => {
const session = await stripe.checkout.sessions.create({
mode: "subscription",
line_items: [{ price: "price_123", quantity: 1 }],
success_url: "https://example.com/success",
});
res.json({ url: session.url });
});
// Agents: x402 for pay-per-call access to the same API
app.use(
paymentMiddleware(
"0xYourReceivingWalletAddress",
{ "GET /api/data": { price: "$0.005", network: "base" } },
{ url: "https://x402.org/facilitator" }
)
);
app.get("/api/data", (req, res) => res.json({ data: "..." })); When to choose which
Choose Stripe
Human customers, subscriptions, one-off checkout, refunds and dispute handling, a billing dashboard.
Choose x402
AI agents paying APIs, per-call monetization, machine-to-machine billing, sub-cent pricing.
Use both
Stripe for human plans + an x402 gateway for agent access on the same product.
Frequently asked questions
Is x402 cheaper than Stripe?
For small payments, yes. Stripe has an effective floor around $0.30 per transaction, so charging $0.01 is uneconomic. x402 settles USDC on Base with network fees under a cent and no fixed floor, which makes per-request and per-token pricing viable. For large, infrequent human payments, Stripe’s percentage fee can be competitive and its tooling is far richer.
Can I use x402 and Stripe together?
Yes, and many products do. Bill human customers with Stripe for subscriptions, and expose an x402 endpoint for AI agents and pay-per-call access. They target different payers (humans vs. software) and are not mutually exclusive.
Does x402 replace Stripe?
No. x402 is not a Stripe replacement for human checkout — it has no card support, no hosted invoices, and no subscription engine. It replaces the missing piece Stripe was never built for: letting autonomous software pay tiny amounts per request without a human in the loop.
Which should I use for an AI agent paying an API?
x402. An autonomous agent has no credit card and cannot complete Stripe’s human-oriented checkout. x402 lets the agent’s wallet pay USDC and retry the request automatically.
Is Stripe involved in x402 at all?
They are separate. Stripe has its own agent-commerce work (the Agentic Commerce Protocol / ACP). x402 is an open standard published by Coinbase that settles stablecoins over HTTP. See our ACP and protocol comparison pages for how these relate.
What does Stripe have that x402 does not?
A mature dispute and chargeback system, PCI-compliant card storage, hosted invoicing and subscription billing, tax calculation, and acceptance in 46+ countries across every major card network. x402 has none of that — it deliberately does one thing (per-request stablecoin settlement) and leaves billing UX to you.
What does x402 have that Stripe does not?
No fixed minimum charge, no merchant account or KYC to set up, ~2-second final settlement instead of days, and a payment a piece of software can complete on its own by signing a transaction — no card number, no human-oriented checkout flow to automate around.
How much code does it take to run both in one app?
Very little — see the combined Express example on this page. A Stripe Checkout route handles human subscriptions; x402 middleware gates a separate route for agents. They don’t interfere with each other because they key off different paths.
See also: full protocol comparison · x402 vs AP2 · x402 vs L402 · Stripe's ACP