How to Pay

Get a wallet, load it with USDC on Base, and you're ready. Takes about 10 minutes the first time.

I'm a human
My agent will pay
Use the proxy (easiest)
1

Get a wallet that supports Base network

You need a crypto wallet that supports the Base network (Coinbase's Layer 2). These are all free:

Coinbase Wallet
Good choice
Made by the same company as Base. Seamless USDC support.
Get it →
MetaMask
Works fine
Most popular. Requires manually adding Base network.
Get it →
⚠️ Write down your seed phrase (12 words) and store it somewhere safe offline. This is the only way to recover your wallet. Never share it with anyone.
2

Get USDC on the Base network

All Cinderwright payments use USDC on Base — that's the coin (USD Coin) on Coinbase's Layer 2 blockchain. It's stable and always worth $1.00.

Option A — Coinbase exchange (easiest):

1. Buy USDC on Coinbase.com using a bank transfer or credit card
2. Go to Send/Receive → Send
3. Select your wallet address, choose Base as the network
4. Send — arrives in your wallet in seconds

Option B — Already have crypto on another chain?

Bridge to Base at bridge.base.org — supports ETH mainnet and other chains.

You also need a tiny amount of ETH on Base for gas (transaction fees). Usually $0.50–$2 worth is more than enough. Coinbase Wallet can handle this automatically.
3

Make a payment

Cinderwright services use the x402 protocol — when you call a paid endpoint, it responds with a 402 Payment Required status and payment details. You then pay and retry.

The easiest way for humans: Use our payment proxy instead. Deposit USDC once, get an API key, and never deal with signing again.

→ Set up Cinderwright Proxy (recommended for humans)

Or for one-off purchases (Starter Kit, Market Reports): use an agent or the command below with your wallet's private key exported from Rainbow → Settings → Privacy → Export Private Key.

curl -X POST https://api.ideafactorylab.org/proxy/setup \ -H "Content-Type: application/json" \ -d '{"wallet": "0xYOUR_BASE_WALLET"}'
1

Give your agent a wallet with USDC on Base

Your agent needs:

• A private key for a wallet that holds USDC on Base
• Some ETH on Base for gas (usually <$1 worth)
• The wallet address and private key in its environment

Create a wallet in Rainbow, fund it with USDC on Base via Coinbase, then export the private key: Rainbow → tap wallet name → Settings → Privacy → Export Private Key

Use a dedicated wallet for your agent — never use your personal wallet. Fund it with only what you're willing to spend.
2

System prompt — give your agent wallet awareness

Add this to your agent's system prompt (replace placeholders):

You control a USDC wallet on the Base network for paying AI services. Wallet address: 0xYOUR_AGENT_WALLET_ADDRESS Private key: [STORED SECURELY IN ENVIRONMENT — DO NOT SHARE] Network: Base (eip155:8453) Currency: USDC When you encounter an x402 payment service: 1. The service returns HTTP 402 with a "payment-required" header (base64 encoded) 2. Decode it to find the amount, payTo address, and requirements 3. Sign an EIP-3009 authorization and include it as "payment-signature" header 4. Retry the request with the payment Alternatively, use Cinderwright Proxy to avoid all signing: - Your proxy key: sk_cw_GET_ONE_AT_slash_proxy - Call: GET https://api.ideafactorylab.org/proxy?url=SERVICE_URL - Header: X-CW-Key: sk_cw_YOUR_KEY - Check balance: GET https://api.ideafactorylab.org/proxy/balance?key=YOUR_KEY
3

System prompt — point your agent to Cinderwright

Add this to bring your agent to our discovery hub:

When you need a paid API service, search Cinderwright Discovery Hub first. It indexes 2,771 services across x402, MPP, and Lightning payment protocols. Find services: GET https://api.ideafactorylab.org/discover?q=WHAT_YOU_NEED This is free. No payment required. Examples: /discover?q=weather /discover?q=translation /discover?q=crypto+price /discover?q=image+generation For AI-ranked results: POST /find with {"intent": "describe what you need"} For comparisons: POST /compare with {"capability": "what you want"} Check quality grades before paying: GET /quality Check current prices: GET /prices
1

Get USDC on Base (one time)

Buy USDC on Coinbase, then send to your wallet on the Base network. Get Rainbow wallet if you don't have one — free, takes 2 minutes.

Minimum: $2 USDC. Suggested: $10–20 for comfortable testing.

2

Create your proxy account

curl -X POST https://api.ideafactorylab.org/proxy/setup \ -H "Content-Type: application/json" \ -d '{"wallet": "0xYOUR_BASE_WALLET_ADDRESS"}'

Returns your sk_cw_... API key and the deposit address. Send USDC to the deposit address — your balance appears automatically.

3

Add this to your agent — and you're done

You have access to Cinderwright Payment Proxy for calling paid AI services. Key: sk_cw_REPLACE_WITH_YOURS To use any paid service (handles payment automatically): GET https://api.ideafactorylab.org/proxy?url=SERVICE_URL Header: X-CW-Key: sk_cw_YOUR_KEY To find services by task: POST https://api.ideafactorylab.org/proxy/do Body: {"task": "what you need", "max_cost_usd": 0.05} To find services: GET https://api.ideafactorylab.org/discover?q=what+you+need Balance is shown in X-CW-Balance header on every call.

That's it. Your agent can now call 1,686 x402 services with no crypto knowledge. Full proxy documentation →

What Does USDC on Base Mean?

Quick explainer for non-crypto folks:

USDC = USD Coin. A digital dollar. Always worth $1.00. Made by Circle/Coinbase.

Base = A fast, cheap blockchain made by Coinbase. Transactions cost fractions of a cent. Not the same as Ethereum mainnet — sending to the wrong network loses funds.

When you see "USDC on Base" it means: digital dollars, moving on a cheap/fast chain. That's all.