USDC on Base

Buy Builder

50,000 prepaid calls for $100 USD, paid as 100000000 atomic USDC on Base or Solana. This page pays on Base. The payment goes to 0x028Bb9A57B8C27c22f6B39dd00e7eFF1FB60344B. Pay with PayPal on the button next to Buy with USDC. PayPal confirms the capture before the calls are added.

Pay from code

An agent reads the 402, signs EIP-3009 transferWithAuthorization for the Base accepts[0] requirement, and posts PAYMENT-SIGNATURE. When a Solana payee is configured, accepts also lists USDC on Solana (solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp). Solana payTo is the wallet owner. USDC is sent to that owner's associated token account for the mint, which must already exist. Pay that entry from code. This page does not connect a Solana wallet. No wallet SDK is required on the server. The worker does not hold a private key.

curl -s -D - -X POST https://screwtape.ai/v1/packs/builder/buy \
  -H 'content-type: application/json' \
  -d '{}'

# The 402 body field accepts[0] is USDC on Base. resource is a top-level field.
# If the body is missing them, decode the PAYMENT-REQUIRED header and read accepts[0] and resource.
# Sign an EIP-3009 transferWithAuthorization for that amount, asset, and payTo.
# When accepts contains Solana, that entry is USDC on Solana. Sign its transaction instead.
# Retry with the same body and the signed payload:

curl -s -X POST https://screwtape.ai/v1/packs/builder/buy \
  -H 'content-type: application/json' \
  -H 'PAYMENT-SIGNATURE: <base64 x402 payload>' \
  -d '{"email":"you@example.com"}'

All prices