Install
openclaw skills install payspawnAdd spending controls to any AI agent that makes API payments. Supports x402 auto-pay, daily limits, per-transaction limits, address allowlists, and fleet provisioning. Use when your agent calls paid APIs or sends payments autonomously. Works on Base with USDC.
openclaw skills install payspawnSet spending limits for AI agents that make payments autonomously. Limits are enforced at the smart contract level on Base — not in software, not on a server. The contract cannot be overridden.
npm install @payspawn/sdk
Before the agent can make payments, the wallet owner must create a credential:
PAYSPAWN_CREDENTIAL in your environmentThe credential is not a private key. Your wallet key never leaves your control. The agent can only spend within the limits you set — the contract enforces this and cannot be bypassed.
import { PaySpawn } from "@payspawn/sdk";
const ps = new PaySpawn(process.env.PAYSPAWN_CREDENTIAL);
// Auto-pay x402 APIs within your set limits
const res = await ps.fetch("https://api.example.com/endpoint");
// Send a payment
await ps.pay("0xRecipientAddress", 1.00);
// Check balance and remaining daily allowance
const { balance, remaining } = await ps.check();
// Pause all payments instantly (on-chain, immediate effect)
await ps.agent.pause();
// Resume payments
await ps.agent.unpause();
Provision multiple agent credentials from one shared pool. One wallet funds the pool; each agent gets its own credential with its own daily limit.
// Create a shared budget pool
const pool = await ps.pool.create({ totalBudget: 100, agentDailyLimit: 10 });
// Fund the pool: send USDC to pool.address from your wallet
// Provision credentials for each agent
const fleet = await ps.fleet.provision({ poolAddress: pool.address, count: 10 });
// fleet[0], fleet[1], ... → credential strings, one per agent
Every payment is checked by the PaySpawn V5 contract on Base before any USDC moves:
No API override. No config flag. Math runs first, every time.
Contract address (Base Mainnet): 0xaa8e6815b0E8a3006DEe0c3171Cf9CA165fd862e
USDC (Base): 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913