Skip to content

Spending limits

A robot with a spending account can pay for what it needs with its own key, up to a daily limit. The limit is enforced by a contract on Robinhood Chain, so it holds even if the robot’s key is stolen.

The spending account is a contract called RobotWallet. It holds the robot’s USDG and knows two addresses:

  • The owner, your wallet. It sets the rules.
  • The robot, the address of the robot’s key. It can pay.

When the robot pays, the contract checks three things:

  1. The payment comes from the robot’s key.
  2. Spending isn’t paused.
  3. Today’s total, including this payment, is within the daily limit.

If any check fails, the payment is refused and no money moves.

  • The limit is an amount of USDG per day.
  • A day is a UTC day. The total resets at midnight UTC.
  • The robot can pay any address. The limit is the only rule.
Action Effect
Change the limit Takes effect at once. If you lower it below what’s already spent today, the robot can’t spend more until tomorrow.
Pause The robot can’t pay at all until you resume.
Withdraw Move USDG out of the account to any address.
Replace the robot’s key The old key stops working immediately.

The robot’s key can’t do any of these.

  • The mova-robot tool, set up with its key. See Pay from the robot.
  • A little ETH at the key’s address, for transaction fees.

The RobotWallet contract is new and has not been audited. It is small and tested, but keep the amounts in it small for now. See Status and limits.