Payments settle directly to your business wallet without Access0x1 taking custody.
Onboard once, share one link, and payments settle straight to your wallet in USDC — no processor in the middle, no code to write, no gas to manage. The same open rail also proves identity and lets agents pay within limits you set.
Access0x1 provides payment routing and settlement software. Asset issuers, wallet providers, and networks may apply their own controls.
Verified ETHGlobal Hacker Pack holderPowered by — and live on
- Chainlink
- World
- Arc
- Base
- Unichain
- Ethereum
- Optimism
- Avalanche Fuji
- Robinhood
- Arbitrum
- Celo
- zkSync
One CREATE3 mirror address across ten testnets.
Not a roadmap — the mirror count is checked against each chain’s own RPC, and every deploy record is in this repository. Open either before you trust a word above.
Access0x1Router — the same proxy on every mirrored chain
0xe92244e3368561faf21648146511DeDE3a475EB5One center, the whole commerce stack
A full suite of open-source contracts behind a single link. Turn on only what you need — every piece shares the same no-custody settlement spine.
- PaymentsGet paid in USDC with one link. A Chainlink-interface price feed quotes the USD price inside the pay transaction; funds settle merchant-to-payout with zero custody.Access0x1Router.sol
Access0x1Router.solOne `payToken` call prices USD→token through a Chainlink feed INSIDE the settlement transaction, then pulls, splits and pushes in the same tx. The router holds nothing between them — a fuzz invariant enforces a zero residual balance.
Caveat: A stale or negative feed reverts the payment closed rather than settling on a bad price. Refunds carry no oracle dependency at all, so a dead feed can never block one.
- SubscriptionsRecurring on-chain billing that renews itself — a permissionless Chainlink Automation keeper charges due plans, never holding a balance.Access0x1Subscriptions.sol + AutomationGateway.sol
Access0x1Subscriptions.sol + AutomationGateway.solRenewal spends against an on-chain SessionGrant budget before it charges: `sessionGrant.spend()` → `router.quote()` → `router.payToken()`. A permissionless keeper drives it, so nobody has to be online.
Caveat: The plan price is read LIVE at charge time, so the SessionGrant cap — not the plan — is the real ceiling on what can be pulled.
- BookingsTake reservations and paid appointments on-chain, with the deposit collected through the same no-custody settlement path.Access0x1Bookings.sol
Access0x1Bookings.solA USD-priced deposit escrowed with the cancellation policy SNAPSHOTTED at reserve time, so a merchant cannot change the terms after you have booked.
Caveat: The resolution-fee leg tolerates an oracle fault on purpose: if the feed is dead the fee is zero and the full escrow refunds, rather than the booking bricking.
- InvoicesIssue and settle invoices in USDC — track receivables on-chain and let a customer pay a request with a single link.Access0x1Invoices.sol + Receivables.sol
Access0x1Invoices.sol + Receivables.solAn open invoice can mint a transferable ERC-721 — whoever HOLDS it is the on-chain creditor and receives the settled net. That is factoring, without a factor.
Caveat: The fee is snapshotted at mint, so a merchant cannot raise it after the receivable has changed hands.
- Gift cardsMint, redeem, and reload stored-value gift cards as on-chain balances your customers can spend across your storefront.Access0x1GiftCards.sol
Access0x1GiftCards.solStored value as an on-chain balance, redeemed against a one-shot redemption id so a replay cannot double-spend a card.
Caveat: The redemption ledger is global rather than per-card — a known gap, written up in the commit history, not yet closed.
- Agents · SessionGrantDelegate scoped, time-boxed spending to an agent or session key — a signed grant lets software pay on your behalf within limits you set.SessionGrant.sol
SessionGrant.solA signed, time-boxed, budget-capped mandate. The delegate spends against it; the owner can revoke at any moment, permanently. A symbolic proof covers spend-never-exceeds-budget.
Caveat: Exactly one contract can spend a grant today — Access0x1Subscriptions. An agent cannot yet buy an asset under a mandate; that needs one more function.
- ENS identityRegister your payout with an ENS name and it is resolved on-chain before it is stored. Checkout then shows that name only when ENS proves it resolves back to the exact payout address — otherwise the buyer sees the raw address.ENS resolution (ENSIP-19)
ENS resolution (ENSIP-19)A name is shown only when ENS proves it resolves BACK to the exact payout address — forward and reverse must agree. Registration resolves on-chain and throws rather than storing a wrong payout.
Caveat: The checkout badge is off the money path by design: if the lookup fails you see the raw address, and the payment is unaffected.
- Own your nameBuy a real .eth name without leaving the app — commit, wait the mandatory 60 seconds, register. Both transactions signed by your own wallet; we never touch a key.lib/ens/registrar.ts + ownName.ts
lib/ens/registrar.ts + ownName.tsThe full ENS commit → 60s → register flow runs in-app, both transactions signed by the CONNECTED wallet — no server key, zero custody. The commitment secret survives a page refresh, and a doomed transaction (early register, expired commitment, switched wallet) is refused before it costs gas.
Caveat: Registration runs on the testnet registrar the app is configured for; the step is hidden entirely until the controller address is configured.
- Verification ladderSigned-in → verified human with World ID → verified name, as one chip with one next-step button. Trust that gates identity and writes — never a payment.World ID + Dynamic + ENS (the ladder)
World ID + Dynamic + ENS (the ladder)One trust ladder — signed-in, verified human (World ID), verified name — surfaced as a single chip with one next-rung button. Merchants gate writes on it; buyers see it on the checkout.
Caveat: Each rung is off the money path: an unverified buyer can still pay; verification gates identity claims and merchant writes, never settlement.
- AI on your termsEvery AI feature can run on Anthropic or on 0G Compute decentralized inference — one setting, and answers say which one served them.lib/ai/inference.ts (Anthropic | 0G Compute)
lib/ai/inference.ts (Anthropic | 0G Compute)One env var flips every AI feature between Anthropic and 0G Compute decentralized inference — key mode or a funded broker wallet minting signed per-request billing headers. Answers carry a visible "Computed on 0G Compute" badge when 0G served them.
Caveat: The badge is claimed only when 0G actually served the request — a fallback answer never wears it.
- Receive in any coinSettle in USDC, keep it or swap it through Uniswap or 1inch at zero added fee — after settlement, so a swap can never break a payment.lib/payout-swap (Uniswap · 1inch rails)
lib/payout-swap (Uniswap · 1inch rails)Merchants receive in any coin: settled USDC swaps through Uniswap (Trading API / classic / v4 hook) or 1inch, zero added fee, entirely AFTER settlement. The v4 SwapReceiptHook writes an on-chain receipt per swap.
Caveat: Strictly off the money path — a rail failure degrades to "you keep USDC", it can never block or alter the payment itself.
- Proof of Payment"Did it land?" answered from the chain itself: the last settlement with the transaction hash anyone can verify — no dashboard trust required.lib/proof/lastPayment.ts
lib/proof/lastPayment.tsOne call answers "did it land?": the last settlement read straight from PaymentReceived logs — amount, buyer, order id, and the tx hash anyone can verify independently. No indexer, no extra gas stored on-chain.
Caveat: It never reports a payment it cannot back with a real transaction hash — an unprovable log is refused, not rendered as paid.
Judges — don't take our word for it
This page is claims; the assistant is receipts. It answers from the repo's own docs corpus — contracts, invariants, deployments — and says "not in the docs" rather than invent.
Get onchain in under two minutes
No code, no contract to deploy, no gas to manage. Set your name, share your link, get paid in USDC.