Merchants
Sell coffee, merch, digital access, or API credits. Ax402 handles catalog, quotes, and USDC payment checks — then you fulfill.
The short version
- List what you sell SKU, price, and fulfillment mode — webhook for goods you ship, or metered access for API credits.
- Buyer pays in USDC Quote → order → HTTP 402 with payment details. They pay on Base. Ax402 verifies on-chain.
- You deliver Webhook fires for physical/digital goods, or a metered API key is issued. Inventory, shipping, and support stay yours.
Who does what
| Ax402 | You |
|---|---|
| Product list, prices, quotes | Decide SKUs and prices |
| USDC payment verification | Receive USDC in your payout wallet |
| API keys & usage metering (if you sell API access) | Build whatever your API does |
| Signed “order paid” webhook | Inventory, packing, shipping, customer support |
| Order record for support | Returns, address fixes, tracking numbers |
Example: a 1 kg coffee bag
Product setup
During onboarding we add your SKU to the catalog — for example
coffee-1kg at 18 USDC, kind physical, fulfillment webhook.
If the product requires a shipping address, Ax402 will refuse to complete
payment without one.
Buyer flow
GET /store/products— show coffeePOST /store/quoteswithproduct_idand quantityPOST /store/orders→ 402 with amount + payout address- Buyer sends USDC on Base
POST /store/ordersagain with the transaction hash, email, andship_to- Ax402 returns
201with fulfillment statusnotifiedwhen your webhook answers OK
Your webhook
Ax402 POSTs JSON when an order is paid:
- event:
order.paid - order id, SKU, quantity, price, email
- shipping address (when required)
- payment transaction hash
Verify the signature with your webhook secret, decrement stock in your system,
create a shipment, and reply with HTTP 200 quickly. If your server is down,
the paid order is still recorded as notify_failed so you can reconcile.
What you never get from Ax402
- Tracking numbers
- Carrier booking
- “Out of stock” enforcement inside Ax402
Those stay in your warehouse, Shopify, spreadsheet, or custom app.
Example: API credits
Same payment flow. After payment, the buyer gets an API key and a credit or monthly
quota balance. They call /v1/meter, /v1/balance, and
/v1/usage. You don’t ship anything — Ax402 handles metering.
Multi-merchant catalogs can filter with
GET /store/products?merchant_id=…. Merchants post fulfillment updates
(packed, shipped, delivered, and related statuses) through the merchant API —
details in the developer guide.
How to start
There is no self-serve portal yet. We onboard merchants directly — SKUs, payout wallet, and webhook URL — then you go live against api.archonia.org.