Preview
Flow
1
User connects wallet
The buyer authenticates and links a USDC-funded wallet to the storefront.
2
Selects credit amount
The buyer chooses how many credits to purchase from the available tiers.
3
Pays in USDC on Arc
The storefront initiates a USDC transfer to the merchant’s
developer-controlled wallet on Arc.
4
Webhook delivers Transfer event
A webhook delivers a
contracts.eventLog event. The server verifies the
HMAC signature before crediting the buyer.5
Server credits user balance
After verification, the server records the purchase in Supabase and updates
the user’s credit balance.
Tech stack
- Next.js App Router for the storefront and admin dashboard
- Supabase for user accounts, sessions, and transaction history
- Circle developer-controlled wallets for the merchant USDC wallet and webhook-driven settlement
- ngrok for local webhook tunneling during development
- USDC on Arc testnet
(
ARC-TESTNET)