Provision wallets, send USDC, enforce spending policies, and sweep treasury — all from one type-safe TypeScript package built for on-chain capital operations.
Four namespaces that cover the full settlement lifecycle of any on-chain capital operation.
Provision USDC wallets on Base or Solana in milliseconds. Each wallet is principal-scoped with its own address and balance.
Send USDC to any wallet address or email. ~8-second settlement, idempotent by default, full transaction history included.
Programmatic spending controls — per-transaction limits, daily caps, domain allowlists, and time-window restrictions.
Sweep balances to a primary wallet, earn yield on idle USDC float, and schedule automated top-ups when capital accounts run low.
Initialize the client once. Every method is async and fully typed.
import { Proco } from '@proco/sdk'; const proco = new Proco({ apiKey: process.env.PROCO_API_KEY, }); // Create a capital account const wallet = await proco.wallets.create({ name: 'research-agent-01', chain: 'base', }); console.log(wallet.address); // 0x8a3f...c41d
// Send USDC to any address const payment = await proco.payments.create({ from: wallet.id, to: 'vendor@example.com', amount: Proco.toUsdc(150), memo: 'logo deliverables', }); // ~8 second settlement console.log(payment.status); // 'settled' console.log(payment.txHash); // 0x1f9c...
// Programmatic spending controls await proco.policies.set({ walletId: wallet.id, dailyCap: Proco.toUsdc(25), perTxLimit: Proco.toUsdc(5), allowedDomains: [ 'marketdata.pro', 'findata.io', 'bloomberg.com', ], });
// Sweep all capital accounts to treasury await proco.treasury.sweep({ to: 'treasury-main', minBalance: Proco.toUsdc(1), }); // Paginate through all wallets for await (const w of proco.wallets.autoPaginate()) { console.log(w.name, w.balance); }
Full reference docs, API playground, and npm package.