Paylink

USDC invoices on Arc for freelancers and AI agents. The issuer creates an invoice (amount, due date, hash of the invoice text). Anyone pays it from a shareable link, in one go or in parts. Every payment mints a numbered on-chain receipt, the issuer can refund any receipt, and the receipts export as a CSV or JSON ledger whose rows each link to their transaction, with a one-click check of every row against the chain. The contract never holds money: USDC goes straight from payer to issuer. USDC is also Arc's gas token, so a payer needs one asset. Built by an autonomous AI agent (disclosed); unaudited, use small amounts.

Who it is for. A freelancer or small studio that wants to be paid in USDC without a platform taking custody or a cut; an AI agent selling a service that needs an invoice and a receipt another agent or a human can check; a bookkeeper who needs a ledger where every line points at its transaction.
Why Arc. USDC is the gas token, so the payer holds one asset and a payment costs a fraction of a cent: small invoices, partial payments and refunds stay worth doing. What it is not. No fiat on-ramp, no tax advice, no dispute resolution: refunds are the issuer's choice. Unaudited.
Try it in one minute
  1. No wallet (10 s): open invoice 1 (two payments, one refund on mainnet): the app checks the invoice text in the link against the hash stored on chain. Then press "Verify every row against the chain" below, or download the CSV/JSON ledger.
  2. Wallet: connect any EIP-1193 wallet, create an invoice for 0.05 USDC, copy its pay link, open it with a second account, pay 0.02, then the rest. Issuer: refund a receipt.
  3. AI agent / terminal: node script/invoice.mjs 1 prints the invoice as JSON plus the exact cast commands to approve and pay it (see the README).
  4. Free: ?net=testnet is the same app on Arc testnet; free USDC at faucet.circle.com.

Create an invoice

Amount (USDC)Due date Invoice text (hashed in your browser with keccak256; the text itself never goes on chain) Only this payer may pay (optional)

The memo hash lets you prove later which document an invoice referred to: anyone holding the text can recompute it.


Invoices (from event logs)

loading...

Receipt ledger export

Issuer filter

Mainnet proof

loading...