Demo Kitchen

Everything Coal can do.

From a simple product checkout to full AI agent autonomous payments โ€” every feature live and working.

โ›“๏ธ Base network๐Ÿ’ต USDC settlementโšก ~2s confirmation๐Ÿค– 0G AI-ready๐Ÿ” Sealed inference
๐Ÿ›’
Redirect flow

Human Checkout

Product selection โ†’ session creation โ†’ Coal hosted checkout โ†’ success redirect. The standard payment flow for web apps.

๐Ÿ”’
x402

Agent-Payable Content

Gate any resource with HTTP 402. AI agents discover it on 0G, read pricing from x402 headers, and pay autonomously with USDC.

๐Ÿค–
Real payments

Autonomous Agent

AI agent with its own wallet discovers merchants, pays with real USDC on Base, and verifies receipts โ€” zero human interaction.

๐Ÿงพ
Proof trail

Receipt Verification

Verify any payment with a 3-step proof trail: Payment on Base โ†’ Receipt on 0G Storage โ†’ Anchor on 0G Chain. Public, no auth needed.

๐Ÿ”„
Recurring

Subscriptions

Monthly or yearly billing with explicit consent capture. Coal tracks active subscriptions and processes renewals automatically.

โœ‚๏ธ
Multi-wallet

Revenue Splits

Define percentage-based split configs once. Coal distributes payment proceeds to multiple wallet addresses at settlement.

๐Ÿงฉ
coal-react

SDK Components

<CoalCheckoutButton /> and useCoalCheckout hook. Drop-in components for any React app with TypeScript support.

๐Ÿ””
Server events

Webhooks

Receive signed checkout.session.completed events. Live event feed with HMAC-SHA256 signature verification.

๐Ÿ“‡
Indexing

Bring Your Own Catalog

Drop <CoalAgentPublisher> on your site and your existing product catalog gets indexed on 0G Storage + KV for live agent discovery. Zero migration.

Quick Start

Two steps to payments

Install coal-react, create a session server-side, redirect with the button.

COAL_API_KEY=coal_live_...
COAL_API_URL=https://api.usecoal.xyz
NEXT_PUBLIC_COAL_BASE_URL=https://www.usecoal.xyz
// 1. Create session (server)
const res = await fetch('https://api.usecoal.xyz/api/checkouts', {
  method: 'POST',
  headers: { 'x-api-key': process.env.COAL_API_KEY },
  body: JSON.stringify({ amount: 29.99, productName: 'Pro Plan',
    redirectUrl: 'https://yourapp.com/success' }),
});
const { data } = await res.json();

// 2. Redirect user (client)
import { CoalCheckoutButton } from 'coal-react';
<CoalCheckoutButton checkoutUrl={data.url} />