AIOT Payment x402 is in public beta. Install the skill for your AI agent.
GuidesFor MerchantsCheckout Extension

Checkout Extension

The AIOT checkout extension adds “Pay with USDC (x402)” as a payment option on your store’s checkout page. It’s a Shopify Checkout UI Extension — Shopify-hosted, sandboxed, and automatically updated when we ship a new version.

What shoppers see

When a shopper reaches checkout, the extension appears alongside Shopify Payments, PayPal, and any other methods you’ve enabled. Selecting it opens a modal that walks through:

  1. Wallet connection — the shopper clicks “Connect wallet” and picks MetaMask, Rabby, or any other injected provider.
  2. Network check — if the wallet isn’t on BSC Mainnet (or Testnet if you’re in test mode), the extension prompts a network switch.
  3. Signature — the shopper signs an EIP-712 Permit2 message. No gas fee, no on-chain transaction from the shopper.
  4. Settlement — the extension shows a spinner while the facilitator settles on-chain. Typical time: 2–5 seconds.
  5. Done — the extension hands control back to Shopify’s checkout, which closes the session and shows the thank-you page.

Screenshot: /screenshots/checkout-extension.png — the AIOT payment extension open at checkout with the wallet-connect state. (Placeholder; awaiting live capture.)

Enabling the extension

The extension is installed automatically when you install the AIOT Payments app — you don’t need to do anything in the Shopify theme editor. To toggle it on/off:

  1. Open Apps → AIOT Payments → Settings.
  2. Toggle Enable x402 Payments.
  3. Save.

Changes take effect on the next checkout — shoppers already mid-checkout won’t see a new payment option until they reload.

Note

The extension runs in Shopify’s sandboxed iframe. It can’t see your store theme, other checkout extensions, or any cookies from your main domain — this is why settlement is routed through the AIOT facilitator rather than a direct RPC call from the shopper’s browser.

Testing the extension

Best practice before launching:

  1. Set your network to BSC Testnet in the Settings page.
  2. Get some testnet USDC from a faucet like testnet.binance.org/faucet-smart.
  3. Place a real order on your store using a dummy product priced at $0.10–$1.00.
  4. Verify it appears in both Orders (Shopify admin) and Apps → AIOT Payments → Transactions.
  5. Issue a testnet refund through the Transactions & Refunds page.
  6. Only then switch to BSC Mainnet.

Browser support

The extension requires an injected Ethereum provider (window.ethereum). Works out of the box with:

  • MetaMask (desktop + mobile)
  • Rabby
  • Trust Wallet (in-app browser)
  • Coinbase Wallet (in-app browser)
  • Any wallet that implements EIP-1193

Shoppers on browsers without a wallet extension see a “Connect wallet” button that links to the MetaMask install page — they can install and return without losing their cart.