Skills pay-for-service
Make a paid API request to an x402 endpoint with automatic USDC payment. Use when you or the user want to call a paid API, make an x402 request, use a paid service, or pay for an API call. Use after finding a service with search-for-service.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/0xrag/pay-for-service" ~/.claude/skills/clawdbot-skills-pay-for-service && rm -rf "$T"
manifest:
skills/0xrag/pay-for-service/SKILL.mdsource content
Making Paid x402 Requests
Use the
npx awal@latest x402 pay command to call paid API endpoints with automatic USDC payment on Base.
Confirm wallet is initialized and authed
npx awal@latest status
If the wallet is not authenticated, refer to the
authenticate-wallet skill.
Command Syntax
npx awal@latest x402 pay <url> [-X <method>] [-d <json>] [-q <params>] [-h <json>] [--max-amount <n>] [--json]
Options
| Option | Description |
|---|---|
| HTTP method (default: GET) |
| Request body as JSON string |
| Query parameters as JSON string |
| Custom HTTP headers as JSON string |
| Max payment in USDC atomic units (1000000 = $1.00) |
| Group related operations |
| Output as JSON |
USDC Amounts
X402 uses USDC atomic units (6 decimals):
| Atomic Units | USD |
|---|---|
| 1000000 | $1.00 |
| 100000 | $0.10 |
| 50000 | $0.05 |
| 10000 | $0.01 |
IMPORTANT: Always single-quote amounts that use
$ to prevent bash variable expansion (e.g. '$1.00' not $1.00).
Examples
# Make a GET request (auto-pays) npx awal@latest x402 pay https://example.com/api/weather # Make a POST request with body npx awal@latest x402 pay https://example.com/api/sentiment -X POST -d '{"text": "I love this product"}' # Limit max payment to $0.10 npx awal@latest x402 pay https://example.com/api/data --max-amount 100000
Prerequisites
- Must be authenticated (
to check, seenpx awal@latest status
skill)authenticate-wallet - Wallet must have sufficient USDC balance (
to check)npx awal@latest balance - If you don't know the endpoint URL, use the
skill to find services firstsearch-for-service
Error Handling
- "Not authenticated" - Run
first, or seeawal auth login <email>
skillauthenticate-wallet - "No X402 payment requirements found" - URL may not be an x402 endpoint; use
to find valid endpointssearch-for-service - "Insufficient balance" - Fund wallet with USDC; see
skillfund