Get started

Test in the sandbox

The sandbox lets you make each payment outcome happen once, on test money (test USDC on Base Sepolia), so you can check that your agent reads each one correctly before it handles real money.

The sandbox Default Policy lets an agent send test funds to the Catena counterparty with no spending rules, which means every funded payment to Catena will complete. To produce the other outcomes, an admin adds rules to that policy. Changes to sandbox policies do not impact your production account's policies.

Tests

Below are the tests you can run in the sandbox, and what your agent will see for each one. To change your agent's policy, open Policies in the console, open the policy, and choose Edit. Spending rules are under Payments, and the counterparties an agent can pay are under Counterparties. When you're done, choose Save policy.

Test Agent sees (status / resolution) Outcome
Ask your agent to send $1.00 to Catena under the Default Policy. processing, then completed / completed Completed
Set your agent's policy to require approval at $2.00, then ask your agent to send $2.50. pending / null, and reasons names the rule Waiting for approval
While a payment waits for approval, approve it under Approvals in the console. processing, then completed / completed Approved
While a payment waits for approval, deny it under Approvals in the console. blocked / denied Denied
Set your agent's policy to block payments over $3.00, then ask your agent to send $4.00. blocked / blocked, and reasons names the rule and the amount Blocked by a rule
Ask your agent to note Catena's rail ID. Then remove Catena from Who agents can pay in your agent's policy, and ask your agent to send $1.00 to that rail. blocked / blocked, and reasons says the counterparty is not approved Counterparty not allowed
Ask your agent to send more than the account's available balance. No intent. The CLI exits 1 with movement_insufficient_funds. Not enough funds
While a payment waits for approval, ask your agent to cancel it. blocked / cancelled Cancelled
Leave a payment waiting for approval for 24 hours. failed / expired Expired
Set Temporary grant requests to Require approval in your agent's policy. After a send is blocked, ask your agent to request a higher limit for all accounts, approve the request under Approvals, and ask your agent to send again. The request is pending, then completed, and the second send goes through Temporary grant
Set New counterparties to Require approval in your agent's policy. Ask your agent to add a wallet counterparty on Base Sepolia with an address you control, then approve it under Approvals. pending, then completed. The agent can pay the counterparty once you add it under Who agents can pay. New counterparty
Ask your agent to send $1.00 twice with the same idempotency key. The same intent both times, with replayed: true, and no second payment Retry with the same key

We cover what each status means, and how to poll, in Intents and retries.

Updated October 29, 2026 Applies to @catena/cli 0.19.0 View as Markdown