x402 facilitator | Polygon mainnetMAINNET
Polygon

Polygon Network

Full x402 v2 support for Polygon mainnet. Settle payments with ultra-low fees and fast confirmations.

Indexed settlementsIndexed
Last indexed settlement No indexed settlements yet

Indexed stats provide historical context even without live streaming.

7d stats7d
0Settlements
$0.00Volume
0Active sellers

Stats indexed via x402scan. Indexed data may lag live settlements.

How it works on Polygon

Buyers pay on Polygon. Dexter verifies the x402 payment, signs the receipt, and settles to the seller on Polygon.

PolygonBuyer

Pay on Polygon

DexterDexter

Verify + settle

PolygonSeller

Receive on Polygon

Capabilities

Everything you need to accept x402 payments on Polygon.

x402 v2 on Polygon

Full v2 support on Polygon mainnet with chain-native receipts.

Ultra-low fees

Polygon offers some of the lowest transaction fees in the ecosystem.

Public facilitator URL

One endpoint shared across every supported chain.

Gas-free for buyers

Dexter sponsors POL fees, buyers only need USDC.

Integration & resources

Use the same facilitator endpoint everywhere.

Facilitator URL

One endpoint for every chain. Point your x402 client here.

https://x402.dexter.cash
Use this same URL for all supported chains: Solana, Base, Polygon, Avalanche, and more.

Documentation

Follow the integration guide and migration notes for x402 v2.

Open Docs

Facilitator dashboard

Live status, settlement metrics, and chain coverage in one view.

Open Dashboard

Polygon quickstart

Drop this into your stack and start collecting payments.

Install
npm i @dexterai/x402
Example
import { createX402Server } from '@dexterai/x402/server';

const server = createX402Server({
  payTo: 'YourPolygonAddress',
  network: 'eip155:137',
  facilitatorUrl: 'https://x402.dexter.cash',
});

const requirements = await server.buildRequirements({
  amountAtomic: '30000',
  resourceUrl: '/api/paid-endpoint',
});

res.setHeader('PAYMENT-REQUIRED', server.encodeRequirements(requirements));
res.status(402).end();