How it fits together
Your wallet, ready to go. Sign in with a passkey and your wallet is provisioned — no seed phrases, no browser extensions, no key management on your end. Privy handles the wallet infrastructure end to end; Tally has no access to your funds. Agents spend within limits you approve. When you want to give an agent spending power, you set a policy: per-transaction max, optional daily cap, optional recipient allowlist, optional expiry. You approve it with your passkey, and Tally generates a dedicated signing key for the agent bounded by that policy. The rules are enforced inside Privy’s secure enclave, not by Tally’s server. Payments are SDK calls. Your agent callstally.payments.create() when it needs to spend. Tally checks the policy, signs with the agent’s key, broadcasts to Base, and emits webhook events as the payment lands. Per-agent attribution, audit trail, and key rotation are first-class.
The architectural upshot: even a fully compromised Tally couldn’t sign a payment outside the policies you approved. Privy holds the wallet infrastructure; Tally is just the rails and the enforcement layer in between.
Where to start
Quickstart
Send your agent’s first payment in ten minutes.
How Tally works
End-to-end tour of the model — accounts, wallets, agents, permissions, payments.
Set up your account
Sign in, fund a test wallet, generate API keys.
Concepts
Deep dives on each primitive — start with Wallets.
Tally is live on Base mainnet — real USDC moves through real wallets today. Test mode (Base Sepolia, no monetary value) is the recommended starting point while you wire up your integration. Same SDK, same dashboard, same APIs across both modes. See Test mode and live mode for what differs between them.
Need help?
- Email support@tallyforagents.com — fastest for account questions, bug reports, and integration help.
- File an issue on GitHub for reproducible SDK or docs bugs.