Skip to main content
Open payment standard

Nevermined runs
x402 payments in production.

x402 is the open standard for paying over HTTP 402, the web's "Payment Required" status code. Nevermined ships it end to end: your agent gets a signed access token, your endpoint returns a 402, and we verify and settle the charge in crypto or on a card. No relayer, no gas wallet, no bespoke billing.

Both open in a new tab: the docs, and the Nevermined app.

x402 handshakeone round trip
GET
/v1/search
agent requests a paid endpoint
402
Payment Required
X-PAYMENT · scheme nvm:erc4337
GET
X-PAYMENT: <access-token>
agent retries with the signed token
200
OK · settled ✓
verified, charged, credits burned
The standard

One protocol that settles in crypto or on a card

x402 turns the dormant HTTP 402 status code into a real payment handshake. Nevermined implements it with two interchangeable schemes, so the same integration settles in crypto or on a card.

Pay in crypto

nvm:erc4337

ERC-4337 smart accounts (wallets controlled by code) settle on-chain in USDC, a dollar-backed stablecoin. Buyer-signed EIP-712 terms (a standard signed-message format) mean the settlement broker can broadcast the payment without ever holding a key.

Pay by card

nvm:card-delegation

A Stripe, Braintree, or Visa card, inside a spend mandate its owner set, pays without a human in the loop. Same 402 handshake, settled in ordinary money, on the card networks you already run.

Crypto settles each call on-chain; cards buy metered credits you burn down per call. Same 402 handshake - you choose the granularity.

npm i @nevermined-io/paymentsv1.13.0
pip install payments-pyv1.18.0
The flow

Go from request to settled payment in four calls.

Two on the buyer, two on the seller. Every call below is real and ships today in the Payments SDK, our TypeScript and Python library. Copy them straight into your agent and your endpoint.

1

Buyer · get token

payments.x402
.getX402AccessToken(
planId, agentId)

The agent mints a signed access token scoped to a plan and a spend limit.

2

Seller · 402

buildPaymentRequired(
planId, {
endpoint, scheme })

Your endpoint answers unpaid calls with a 402 carrying the price and scheme.

3

Seller · verify

payments.facilitator
.verifyPermissions(
{ maxAmount })

Confirm the token can cover the charge before you do the work. No burn yet.

4

Seller · settle

payments.facilitator
.settlePermissions(...)
→ charged · burned ✓

Card charged or crypto moved, credits burned, paid response returned - one call.

Get started

Start settling over x402.

Ship agent payments over x402 in an afternoon. Read the docs or talk to the team.