Open sourcePython SDK

A payment stack your agents can trust

Let agents pay for APIs per call — with spending limits you set, USDC settled on Arc, and optional post-payment Assurance via GenLayer when service delivery fails.

bash

The infrastructure standard

Built onArcArcPowered byCircleCircleSettled inUSDCUSDCSLA adjudication onGenLayerGenLayer

AgentPay orchestrates the x402 lifecycle and, when Assurance is enabled, binds bounded evidence to a GenLayer SLA verdict and a provider-funded refund on Arc. Explore Assurance

One agent run, end to end

research: “USDC payments on Arc”
budget 0.10 USDC
  • POST /research

    no API key sent

    402 Payment Required
  • sign transfer · 0.005 USDC

    EIP-3009, off-chain

    signed
  • retry with X-PAYMENT

    settles on Arc Testnet

    200 OK
Payment settled on-chaintx 0x9f2c…a41b

x402 Protocol · EIP-3009 · testnet funds

One client, explicit policy

Autonomous payments, without hiding the controls.

One client handles the 402 handshake. Your policy and journal keep every authorization bounded, durable, and inspectable.

payment_client.py
from arc_agent_pay import PaymentClient, PaymentPolicy, SqlitePaymentStore

policy = PaymentPolicy(
    max_payment_usdc="0.05",
    daily_cap_usdc="2.00",
)

async with PaymentClient(
    account=account,
    policy=policy,
    payment_store=SqlitePaymentStore("payments.db"),
) as client:
    response = await client.get(url)
01

Settlement

Automatic x402 negotiation and EIP-3009 USDC settlement with explorer-verifiable receipts.

02

Identity

ERC-8004 agent identity, reputation checks, and evidence-bound validation attestations.

03

Workflow

Durable policy and payment journals, validation escrow, and an ERC-8183 client profile.

New · AgentPay Assurance

Payment succeeded. What if the service didn't?

Agents can pay instantly over x402. Assurance captures what was promised and delivered, lets GenLayer judge semantic SLA violations, and can refund the buyer from a provider-funded bond on Arc.

Explore Assurance Agent Tank · Testnet demo

Arc

Settles payment + refund

GenLayer

Judges the SLA

AgentPay

Binds evidence, verdict + settlement

Original payment stays final. Refund = a new USDC transfer from WarrantyBond.

Built into the SDK

The hard parts are already handled.

Budgets, discovery, retries, and receipts ship in the box — so the only thing you write is your agent.

spent0.064 / 0.100
0.050 USDCblocked
01

Budgets that actually hold.

Every run gets a hard cap. Quote-aware policy adds maximum-price, rolling spend, velocity, provider, network, asset, recipient, and kill-switch controls before any signature.

02

Agents find the right API on their own.

A built-in registry ranks services by name, tags, and description. Your agent searches for what it needs — 'crypto prices' — and gets back live, payable endpoints.

request402
pay + retryauto
response200
03

Your agent code never changes.

PaymentClient is a drop-in HTTP client. When a server answers 402, the payment is signed, attached, and retried behind the scenes — your application logic stays exactly as it was.

Payment receipt
amount
0.005 USDC
network
Arc Testnet
tx
0x9f2c…a41b
04

Every payment on the record.

A durable SQLite journal records quoted terms and pending, authorized, settled, failed, or ambiguous outcomes. Settlements link to Arc Explorer; assured calls can also bind them to evidence and a finalized GenLayer SLA verdict.

The handshake

An agent pays. The protocol settles.

Five steps, a few seconds, every payment verifiable on-chain.

01

Request

The agent calls a paid API — no auth header, no API key.

02

402

The server answers with a price: 0.005 USDC, payable on Arc.

03

Sign

The agent signs an EIP-3009 authorization off-chain. No gas.

04

Retry

The signed payment rides along in the X-PAYMENT header.

05

Settle

The server settles on Arc Testnet and returns 200 with the tx hash.

Optional Assurance continues after settlement: evidence → GenLayer judgment → bond-funded refund. See how Assurance works

Public playground

Hosted playground activity.

Every run and payment made by this public sandbox.

—
Agent runs
completed in the playground
—
Payments settled
on Arc Testnet
—
USDC moved
in per-call nanopayments
—
Topics researched
by autonomous agents

Questions

Frequently asked.

An open-source Python SDK that lets AI agents pay for APIs as they use them. Servers price each call over the x402 protocol, and the agent settles in USDC on Arc Testnet — no accounts, no API keys.

Give your agents a wallet of their own.

Run one in your browser and watch it find an API, pay for the call, and settle in seconds. Nothing to install.