Staying in control

How to audit what an AI agent spent

What an agent payment log should record, from requests and policy decisions to approvals, settlements and permission changes, and how to review it.

Keep a log of every payment request with the agent that made it, the amount, recipient and reason, the policy decision and why, who approved it, and the on-chain or processor reference once it settled. Log every change to limits and permissions too.

Why is this harder than it sounds?

A bank or wallet statement tells you what left the account, not which agent asked, what it said it was for, or whether a rule allowed it. When an agent misbehaves you need the whole chain: the request, the decision, the approval or lack of one, and the settlement. You also need the events nobody asked for directly, such as an approval expiring or a payment reconciled later. And the riskiest entries are not payments at all but the changes that widened what an agent may do.

How do you do it?

  1. Log the request. Agent, amount, asset, recipient, the agent's stated reason, and the idempotency key.
  2. Log the decision and the rule. Approved automatically, held for approval or blocked, with the specific limit or rule that decided it.
  3. Log the outcome. Who approved or rejected, when it settled, and a verifiable reference such as a transaction hash.
  4. Log permission changes. New allowances, edited limits with before and after values, and rotated credentials. These are the events to review first.
  5. Review on a schedule. Look at blocked attempts and unfamiliar recipients weekly while an agent is new.
  6. Export what you need to keep. Retention in a tool is not the same as your own records. Export what your bookkeeping needs.

What it does not mean

  • A wallet's transaction history is not an audit log. It has no agent, no reason, and no record of what was blocked.
  • An agent's own account of what it paid is not a record. Check it against the log.
  • Logging only successful payments misses the attempts that tell you something is wrong.

Common questions

Can the agent read the log?

It can read its own payments with list_payments and get_payment. The full audit log, including policy changes, is in the owner's dashboard.

Is this accounting or tax advice?

No. It describes what to record; how you account for payments is a question for your accountant.

Where does Veyra fit?

Veyra records every policy decision, settlement, approval and permission change, readable at Dashboard → Audit log, including system events such as an approval lapsing (payment.approval_expired) or a receipt reconciled after the fact. The changes worth watching are source.allowance_granted, agent.policy_updated (which records limits before and after) and agent.credential_rotated. Confirmed payments carry tx_ref and a Basescan link. History is kept for 7 days on Free, 90 on Pro and a year on Team, and Team can export the window as CSV.

Sources

Terms on this page

This page explains how agent payments and the related technology work. It is not financial, investment, legal or tax advice. Protocols and provider features change; check the linked official sources before relying on a detail.