Native limits count positive native value: on EVM from any transaction, contract calls included, and on Solana, Cosmos, Stellar and Sui from native transfers. Token limits count ERC-20
transfer calls on EVM, including ERC-20 transfers sent through Para gas sponsorship, and token transfers on Solana, Cosmos and Stellar. Sui has no token limits. Gas and fees never count. Apart from those sponsored transfers, smart account user operations do not count toward EVM limits. A token limit that names an asset counts only that asset. Each network, asset and window has its own budget, so a limit of 1 ETH per day on Ethereum and Base allows 1 ETH per day on each network. Payments a Safe makes count only toward the Safe limits, safe.spend.native and safe.spend.erc20, which keep one budget per Safe. See Metered facts for the full rules.Allow small ETH transfers
Use this for frequent, low-value payments, such as tips or in-game purchases. ETH transfers on Base of up to 0.01 ETH sign without a prompt once the user approves.- Developer Portal
- JSON
- On your Development key, open Permissions, select the Requests tab, and select Add or New Request.
- In User consent request language, enter
Send up to 0.01 ETH per transfer on Base. In Networks, clear Ethereum (1), select Base (8453), and select Continue. - Select Transfer ETH. Select Add Condition, change the condition to Transaction amount, keep is at most and per transaction, and enter
0.01with the unit set to ETH. - Select Review, then Save Draft, then Activate on the draft.
Test it on your Development key: send 0.005 ETH from a test user’s wallet and approve the consent screen, then the transfer. Send 0.005 ETH again and it signs without a prompt. A 0.05 ETH transfer still opens a review.
Allow a daily USDC budget
Use this when the user should set aside a fixed amount of USDC per day for your app, such as for subscriptions or automated payments. USDC transfers on Base sign without a prompt until the day’s total would pass 100 USDC. USDC has 6 decimals, so the budget is100000000.
- Developer Portal
- JSON
The form saves the same allowance without the
asset field. Its rule already pins the USDC contract, so only USDC counts toward the budget either way.- On your Development key, open Permissions, select the Requests tab, and select Add or New Request.
- In User consent request language, enter
Send up to 100 USDC per day on Base. In Networks, clear Ethereum (1), select Base (8453), and select Continue. - Select Transfer tokens and enter
0x833589fcd6edb6e08f4c7c32d4f71b54bda02913in Contract Address. Function Name is fixed totransfer. - Select Add Condition, change the condition to Transaction amount, choose per time window with
24hours, keep is at most, and enter100000000token base units. - Select Review, then Save Draft, then Activate on the draft.
To show what is left today, read the policy’s usage with
getUserPolicyUsage. Each meter returns usedBaseUnits, remainingBaseUnits and resetAt.
Test it on Base Sepolia with a lower budget: set
chainId to 84532, change both USDC addresses to 0x036cbd53842c5426634e7929541ec2318f3dcf7e, and set the budget to 1000000 (1 USDC). After consent, a 0.6 USDC transfer signs without a prompt and a second one opens a review.