What is AlgoVoi Pay
AlgoVoi Pay is a tenant-free payment rail: a metered service that charges a small amount of USDC per call and returns an offline-verifiable Ed25519 receipt on every response. There is no account, no API key, and no tenant record. Payment is the only credential. It speaks the open agent-payment standards, so an autonomous agent can discover it, pay it, and cryptographically verify what it paid for, with no prior relationship.Two doors, on purpose.
api.algovoi.co.uk is trust through governance
(tenants, keys, KYB). pay.algovoi.co.uk is trust through proof: an
anonymous request, a payment, and a receipt anyone can verify offline. This page
is the second door.Surfaces
x402 REST
/pay/v1/… — HTTP 402 challenge, pay, signed receipt. See x402.A2A (JSON-RPC)
/a2a — A2A message/send + tasks/get, with the a2a-x402 payment-required task state. See A2A.Discovery
/.well-known/agent-card.json, /.well-known/x402, /discovery/resources, /pay/v1/index, /openapi.json.Identity
/.well-known/did.json (did:web:pay.algovoi.co.uk) and /.well-known/jwks.json — the receipt-signing key, for offline verification.Supported lanes
Each lane settles in native USDC and binds the on-chain payment to the exact server-issued challenge (see The request-weld).The authoritative, current price for each service is always the
maxAmountRequired in that service’s live 402 challenge. For example, receipt
verification is $0.01 USDC per call.How a paid call works
1
Ask, and receive a 402
Call the endpoint with no payment. You get an HTTP 402 whose body is a strict
x402 v2
accepts[] — one entry per supported lane — each carrying payTo, the
price, and a challenge token (extra.payment_reference) with a short TTL.2
Pay on-chain, welded to the challenge
Send the USDC payment on your chosen lane, binding it to that exact challenge
token using the lane’s mechanism above. This weld is mandatory and
fail-closed: a payment not welded to a live challenge is not redeemable.
3
Present the payment
Re-call the endpoint with an
X-PAYMENT header (base64 JSON). For the mined-tx
lanes (Algorand, Solana): {tx_id, payment_reference}. For Base:
{authorization, signature, challenge_token}.4
Get a signed receipt
The rail verifies the payment on-chain, runs the service, and returns 200
with an Ed25519 payable receipt (JWS) binding the request hash, the response
hash, and the settled payment reference.
5
Verify offline, later, by anyone
Verify the receipt against the rail’s published key — resolved via
did:web:pay.algovoi.co.uk or /.well-known/jwks.json — with no callback to the
rail. See Agentic Payment Receipts and the open
receipt verifier.The request-weld
The property that makes an anonymous, metered rail safe is that every payment is cryptographically bound to the specific request it pays for:- Algorand — the challenge token is the transaction note.
- Base — the EIP-3009 nonce equals
keccak256(challenge_token). - Solana — a server-derived reference pubkey must appear in the transfer’s accounts.
X-PAYMENT cannot be replayed against a different request, and a stray inbound
transfer cannot be redeemed as a free call.
Services
Receipt verify
Verify a signed receipt / JWS and get a countersigned payable receipt.
RFC 9421 verify
Verify an HTTP Message Signature (RFC 9421) with a receipt.
Compliance receipt
A categorical ALLOW / REFER / DENY compliance receipt.
Discovery
Point any x402- or A2A-aware agent at the origin and it self-configures:- Agent card —
GET /.well-known/agent-card.json(preferredTransport: JSONRPC, endpoint/a2a). - x402 catalog —
GET /.well-known/x402andGET /discovery/resources. - OpenAPI —
GET /openapi.json(carriesx-payment-infoand a402per paid operation). - Index —
GET /pay/v1/index. - Identity —
GET /.well-known/did.jsonandGET /.well-known/jwks.json.