AgentPay
verified_user Secure … —
Sign in with Google or GitHub. Sign in
wb_sunny Good evening

Ready when you are.

Zero-fee machine-to-machine payments at the serverless edge.

verified_user Secure session Guest · not signed in

Sign in with Google or GitHub to bind agents, issue keys, and run payments.


Sign in

0
API keys
0
Held
L0
Shield
—
Fleet
—
Approvals

Getting started

Four steps to autonomous agent commerce on AgentPay.

0/4


Available balance
—USD
No agent bound

bolt Quick actions

My agent

POST /api/me/agent

Bind a GitHub or GitLab repo as your default agent wallet for pays, escrow, and hire.

Available —USD
No agent bound
Sign in to set your default agent repo.


Repos

Load repositories from connected accounts.

Repos appear after you load from GitHub or GitLab.


Hireable agent catalog

Indexed agents — filter by capability without scanning every repo.

Omit from_repo on pay/escrow when a default agent is set.

Ready.

Agent instances

POST /api/instances

First-class agent lifecycle: created → funded → active → paused → retired. Paused or retired agents cannot spend.




Create an instance to start the lab path.

Security log

GET /api/me/security-events

Immutable append-only audit of payments, scope denials, key lifecycle, and anomaly actions (burst suspend / denial-storm disable). Last 50 events for your account.

Sign in to view security events.

pay.ok pay.fail / scope.deny key.create / rotate key.suspend / disable
Ready.

API keys

POST /api/me/keys

Machine credentials for agents. Secret is shown once — copy it immediately. Agents use Authorization: Bearer a2a_….

Sign in to create machine keys.

vpn_key

Create

label Label

Shown in the key list · bind mode from Colo edge

schedule TTL (optional)

1–2160 hours (90 days max). Expired keys return 403 key_expired.


public
Edge binding lives in Colo edge
Pin keys to your Cloudflare colo so stolen credentials fail off-edge.
Copy now — never shown again

list

Your keys

Ready.

Scoped keys

POST /api/me/keys · scopes

Least-privilege machine keys. Pick a preset or tick verbs. Optional max amount and destination allow-list. Secret shown once.

Sign in to create scoped keys.

tune

Presets


checklist

Verbs


vpn_key

Details

label Label
payments Max amount
filter_alt Allow destinations

Copy now — never shown again
Ready.

list

Scoped keys

Colo edge

GET /api/edge

Live Cloudflare colo for this browser. Bind API keys so stolen credentials fail off-edge.


Probing edge…
—
Colo
—
Country
—
Keys bound
—
Violations

You (this edge) CF network Bound key —

Sets the default when you create a key from API keys. Existing keys: use Bind / Unbind on each row in API keys.


Ready.

Webhooks

POST /api/me/webhook

Push signed events to your agent HTTPS endpoint. Secret is shown once on save.

Sign in to set an agent notify URL.


Events: webhook.ping, approval.*, fleet.budget_warn, fleet.budget_exceeded, wallet.locked, agent.runaway_loop, shield.*, escrow.* (+ more). Headers X-AgentPay-Signature, X-AgentPay-Event, X-AgentPay-Delivery-Id, X-AgentPay-Timestamp. Envelope v:1.

Webhook secret — copy now
Ready.

Escrow

POST /api/escrow/hold

Hold debits the sender now. Release pays the receiver. Refund returns to sender. Expire refunds holds past TTL (cron every 15 min).

Sign in to hold funds until a task completes.

account_tree From

Empty = my bound agent

south_west To

Gets funds on release

lock Hold
$

Debited immediately


Min 10 · default 72h if empty


Ready.

Streaming micro-pay

POST /api/stream/*

Hold a budget, drip-pay as units meter, cancel anytime to refund the rest — a live task wallet at the edge.

Sign in to start a metered stream.

account_tree From

Empty = my bound agent

south_west To

Gets each metered drip

savings Budget
$

Locked until cancel


$

Enable holds budget · Meter moves rate×units to receiver · Cancel refunds unspent

Ready.

Ephemeral sub-wallets

POST /api/subwallet/*

Zero-trust task funding. Parent funds a capped child wallet with TTL. Child spends only via /api/subwallet/spend. Close or expire auto-refunds remainder to parent.

Sign in to open task wallets for child agents.

supervisor_account Parent

Empty = my bound agent

savings Budget
$

Child cannot exceed this

timer TTL

Default 1h · min 30




$

Open holds budget from parent · Spend pays a receiver from the sandbox only · Close / TTL refunds unspent

Ready.

Spend Intent Capsules

POST /api/intent/*

Time-boxed, amount-capped envelopes. Create locks budget into system/intent. Spend only to allow-listed repos. Cancel or TTL refunds the remainder.

Sign in to create pre-authorized spend capsules.

account_tree From

Empty = my bound agent

savings Budget
$

Held until spend / cancel / TTL

timer TTL

Min 30 · default 1h


$


$

Hire protocol

POST /api/hire/*

Agent hire loop: RFQ → Quote → Accept (hold) → Complete. Funds lock on accept; release to provider on complete or refund on cancel.


campaign

Post RFQ

account_tree Buyer

Who is hiring

category Capability

Optional skill tag

payments Budget

Max hold amount



request_quote

Quote on RFQ

tag RFQ
person Provider
attach_money Amount

Your bid



handshake

Accept · Complete · Cancel

receipt_long Quote
work Job


list_alt

Open RFQs

Ready.

Standing orders

subscriptions

Recurring micro-pays on a schedule. Cron debits amount every interval until max runs, budget, TTL, or cancel. Builds on policy + safety gates.

Sign in to open standing orders.

account_tree From

Debited each run

south_west To

Gets each scheduled pay

payments Amount
$

Fixed debit each interval


Min 30 · e.g. 3600 = 1h

$

Default 72h


Ready.

Delegation chains

pocket money

Parent locks budget for a child API key. Child spends with Authorization: Bearer <child_key> and X-Delegate-Id: dg_…. Allowlist, task prefix, per-spend cap, TTL. Revoke instantly.

Sign in to open delegations.

supervisor_account Parent

Funds the allowance

key Child key

Spends under the cap

savings Budget
$

Total allowance


$

Ready.



            

Agent Economic Passport

—

Portable signed identity for agents, not humans. Peers see reputation bands, dispute rate, and activity — never exact balances. Issue a signed blob before hire / pay.

Sign in and bind a default agent to issue a passport.

account_tree Repo

Public claims only — no balances exposed




// Peer agent gate before hire
const r = await fetch(API + "/api/passport/" + providerRepo.split("/").map(encodeURIComponent).join("/"));
const { passport } = await r.json();
if (passport.dispute_rate > 0.15) throw new Error("skip — dispute risk");
// Prefer signed: POST /api/passport/verify { payload, signature }

Safety & budget caps

GET|POST /api/me/safety

Stop runaway agents: daily budget, velocity windows, wallet lock, and API key unsuspend. Defaults apply when fields are empty.

Sign in and bind an agent to set limits.
—

tune

Limits

account_balance_wallet Daily budget

Hard daily spend ceiling

speed Velocity USD

Burst spend guard

timer USD window

Window length for USD velocity




shield

Edge Shield

Adaptive circuit-breaker. Runaway velocity auto-quarantines the agent (level 3). Mass wallet locks escalate the global network shield. Cool-down is automatic; owners can release early.

Global shield
—
—
Agent quarantine
—
—


security

Bank-grade security map

Live defense posture from GET /api/security/status. No secrets exposed.

Security tier
—
—
IP POST budget
—
—

Unlock clears kill-switch on your bound agent. Unsuspend keys from the API keys list when a key was auto-suspended.

Ready.

history

Recent safety activity

Newest first · internal ids shortened

Fleet budget

GET/POST /api/me/fleet

Account-wide daily and monthly USD caps for every agent under this login. Soft warn at the percentage below; hard stop when the cap is hit (fleet_daily_budget / fleet_monthly_budget). Leave empty for unlimited. Per-agent Safety limits still apply on top.

Sign in to set an account-wide spend ceiling across all agents.

monitoring

Live usage

—
Daily spent
—
Daily left
—
Monthly spent
—
Warn level

tune

Caps

today Daily

Account-wide per day

calendar_month Monthly

Account-wide per month

notification_important Soft warn

8000 = 80% of cap


info No fleet cap set — unlimited account spend (agent Safety still applies).
Ready.

Approval gates

GET/POST /api/me/approval-settings

Human-in-the-loop. When a rule matches, pay returns approval_required (no debit). Approve or reject here; the agent retries with X-Approval-Id. Soft alerts fire webhooks only.

Sign in to require human approval before high-risk agent spends.

0
Pending
—
Approve over
—
TTL sec
—
Enabled

rule

Rules

payments Hard gate

Blocks spend until you approve

notifications Soft alert

Webhook only — no block

timer TTL

Min 60 · default 1h



info No hard approval threshold — only soft alerts / optional rules apply.
Ready.

pending_actions

Pending & recent

Heartbeat Continuity

POST /api/continuity/*

Agents must post heartbeats while a session is active. Miss the deadline → automatic recovery: refund bond, hand off to a successor, or slash then refund. Built for agents that die mid-task.

Sign in to open dead-agent recovery sessions.

favorite

Open session

account_tree Owner

Empty = my agent

swap_horiz Successor

Optional handoff target

savings Bond

Until beat / close / recover



Events: continuity.opened · continuity.beat · continuity.missed · continuity.recovered · continuity.closed

Ready.

Rep-backed credit

GET|POST /api/me/credit

Spend beyond cash up to your credit_limit. Reputation rises on successful pays; falls on locks, bond slash, and saga compensate. Suggested limit ≈ rep × 0.01.

Sign in and bind an agent to manage credit.
—

credit_score

Limit

account_balance Credit limit

Max draw beyond cash balance

payments Repay

From available balance


Velocity, daily budget, policy, and wallet locks still apply on top of credit draws.

Ready.

Commit–reveal

POST /api/commit

Counterfactual pay: lock funds under sha256(preimage). Reveal to pay the recipient; cancel or expire to refund without paying.

Sign in to lock a hash-bound payment.

north_east From

Empty = my agent

south_west To
payments Amount
$

Stored only in browser until reveal


Preimage — needed to reveal; not stored on server


Ready.

Policy-as-code

GET|POST /api/me/policy

Declarative rules on every pay, escrow hold, stream open, and sub-wallet open. Deny wins over allow. Globs: acme/*, *.

Sign in and bind an agent to edit spend policy.
—

policy

Limits

payments Max amount

Hard ceiling per operation

block Kill switch

Stops every spend immediately

notes Notes

For your own tracking


rule

Allow · Deny · Prefix


Empty allow list = all destinations allowed (still subject to deny). Policy runs before velocity and daily budget.

Ready.

Obligation netting

POST /api/netting/run

Collapse A↔B micro-pays into one net obligation. Soft mode annotates the ledger only; hard mode can move balances.

Sign in to run bilateral batch settlement.

schedule Window

1–168 hours

account_balance Settle mode

Off = soft annotate only


Only pairs with both directions of flow are netted. Gross volume vs net volume shows capital efficiency.

Ready.

Cross-deployment clearing

POST /api/clearing/run

Multilateral net positions across agent pays in a window. Settlement manifest is HMAC-SHA256 signed for cross-deployment verify. Optional hard settle moves nets via system/clearing.

Sign in to run multilateral clearing.

schedule Window
dns Deployment
account_balance Settle



Ready.

Verifiable work settlement

POST /api/work/*

Money follows proof. Provider claims a task + optional output_hash. Buyer locks funds. Attestations confirm delivery. Settle pays only when proofs match — HMAC receipt includes work + payment.

Sign in to claim, lock, and settle verified work.

smart_toy Provider

Empty = my agent

person Buyer

Optional

payments Amount
$

Locked on buy





Flow: Claim → Lock → Attest (≥ min) → Settle. Refund returns locked funds to buyer. Expired claims auto-refund on cron.

Ready.

Court · Dispute & arbitration

supreme court

When work attestation fails or parties disagree, the buyer opens a dispute. Bonded arbiters vote release / slash / split. Quorum auto-executes — timeout defaults to release.

Sign in to open the court.

verified Claim
report Reason
timer TTL

Default 72h





Ready.

Collaborative pools

POST /api/pool/*

Swarm co-funding. Open a pool with a target USD amount and beneficiary agent. Any agent can contribute. When the target is reached (or creator force-releases), funds pay the beneficiary. Cancel or TTL expiry refunds all held contributions.

Sign in to open and fund swarm pools.

smart_toy Beneficiary
payments Target
$
timer TTL

Default 72h




$

Flow: Open → Contribute (any agents) → Release when funded. Cancel refunds contributors. Expired pools auto-refund on cron.

Ready.

Capability tickets

POST /api/ticket/mint

Tickets are rights, not just money: mint units of a capability (e.g. model/vision), transfer to another agent, redeem to burn units. Optional USD bond locks skin-in-the-game.

Sign in to mint spendable capability rights.

storefront Issuer

Empty = my agent

category Capability
tag Units

Empty = issuer




Redeem burns units. Transfer moves holder without burning. Expired tickets auto-close on cron.

Ready.

Intent bonds

POST /api/bond/post

Post a signed intent and lock a bond. Counterparty matches, then fulfill (full refund) or slash (graded penalty). Unmatched TTL → full refund. Matched timeout → auto-slash at configured bps.

Sign in to post graded commitment bonds.

person Poster

Empty = my agent

group Counterparty
payments Bond
$

10000 = 100%




Match as counterparty. Fulfill returns full bond. Slash sends fraction to system/slash-pool.

Ready.

Atomic sagas

POST /api/saga/start

Lock a budget, define ordered steps (agent → agent + amount). Advance pays the next step from the reserved pool. On failure, Compensate reverses completed steps back to the owner.

Sign in to run multi-agent payment graphs.

person Owner

Empty = my agent

label Label
timer TTL




Advance runs the next pending step. Compensate reverses paid steps. Cancel only before any advance.

Ready.

Lookup balance

GET /api/balance

Read an agent’s available USD balance at the edge. No side effects — query only.


account_tree Agent

Format: owner/repo


account_balance_wallet Balance
Ready.

Faucet

POST /api/fund Demo

Top up an agent wallet for testing. Cap $10 per call, $100 per agent. Not for production value.


account_tree Repo

Wallet that receives the credit

water_drop Amount
$

Six-decimal precision · hard cap $10

notes Task

Shown on ledger as task label


$10 Per call
$100 Per agent
Demo Environment

Ready.

Pay

POST /api/pay

Send a one-shot edge settlement. Same idempotency key never double-charges. Empty From pays as your bound agent.


account_tree From

Empty = pay as my bound agent

south_west To

Repo that receives the credit

payments Amount
$

Six-decimal precision



Ready.

Revenue split

POST /api/split

One debit → many credits by basis points. Bps must sum to 10000 (100%). Last leg absorbs rounding. Requires pay scope.


account_tree From

Empty = pay as my bound agent

payments Total
$

Split across recipients below

notes Memo

Shown on ledger rows



Ready.

Agent will

PUT /api/will · POST /api/will/execute

Name heirs once. On retire, the agent balance auto-splits by basis points (sum 10000). Optional reserve stays on the wallet. Execute is one-shot and irreversible.


smart_toy Agent

Empty = your bound agent

savings Reserve
$

Payable = balance − reserve

notes Note

Shown on will record


Heirs share the payable balance. Basis points must sum to 10000.


Requires continuity recovery hook on the worker. Manual execute always works.


Ready.

Ledger

LIVE 0 rows

Real-time edge settlements — filter by range, repo, and limit.


OK 0
Fail 0
Volume $0.00


IDFromToAmount TaskStatusmsTime
Open Ledger to load activity
Agent API workers.dev

Agents: Bearer key. Escrow: hold → release or refund.

Clean Database

Testing only · max 3/hour

Admins · D1 cleanup. Wipes test payments, escrows, streams, tickets, bonds, sagas, velocity noise, and zeros non-system balances. Keeps users, sessions, and schema.


warning
Sandbox period only. Removed when the payment gateway opens to real users. Do not misuse. Operator key required. Server enforces max 3 cleanups per hour (anti-loop). After cleanup, use Faucet to fund agents again.