SKIP TO CONTENT
AI AGENTS6 minStandards That Ship / Ep. 4 · Stage 4-1

Know Your Agent: Checking an AI Bot’s Permission to Trade

An investor passes every identity check, then lets an AI agent trade her fund tokens. Who checks that the agent was allowed to?

XIN

IN 30 SECONDS

An agent mandate is a limited permission an investor gives an AI agent: which token, which actions, how much and until when. ERC-3643 checks who may hold a security token, not whether the bot trading for them was authorized. This stage shows how the ERC-8226 Draft can check a mandate on each trade.

KEY TAKEAWAYS · 3

  • In ERC-3643, the Agent is an operator the issuer appoints. Software acting for an investor is a different role and should not get those powers.
  • On the token-gate path of the ERC-8226 Draft, the mandate check runs in the same transaction as the token’s own checks, so any failure undoes the whole trade.
  • In the draft, the principal’s eligibility is checked when a mandate is granted or extended, not on each trade.
On this page

The problem: an eligible investor, an unchecked bot

IN SHORT One agent trade raises three questions: may the receiver hold the token, may this spender move it, and may this bot decide for the investor?

WORDS TO KNOW

Security token
A token that stands for a financial security, such as a fund share, whose transfers can be limited to approved holders.
AI agent
Software that uses an AI model to decide and act on its own, here trading tokens for an investor.
Mandate
A permission an investor grants, directly or by signature, that says what one agent may do on one asset, how much, until when.
Principal
The investor who grants the mandate and on whose behalf the agent acts.
Allowance
The ERC-20 permission that lets another address, the spender, move up to a set amount of your tokens.

Picture a fund that issues its shares as a Security token A token that stands for a financial security, such as a fund share, whose transfers can be limited to approved holders. See the glossary on ERC-3643, an Ethereum token standard. An investor passes the identity checks. Then she lets an AI agent Software that uses an AI model to decide and act on its own, here trading tokens for an investor. See the glossary rebalance her holdings.

WHAT GETS CHECKED

What ERC-3643 checks on a transferFrom

  • Is the receiver a verified investor?
  • Does the transfer follow the token’s rules?
  • Does the spender have an allowance?

What it doesn’t ask

  • Did the investor allow this agent?
  • For which action, and how much?
  • Is that permission still valid?
Illustrative. transferFrom is the ERC-20 function that moves someone else’s tokens under an allowance. Left: the transfer checks in ERC-3643 (Final). Right: what an agent mandate, such as the ERC-8226 Draft, adds.

The left column covers the first two questions. An integration has to keep all three.

ADAM says: A mandate works like a limited power of attorney. The image breaks twice. A clerk reads the whole paper, but the contract checks only the mandate’s fields, and the ERC-8226 draft has none for the recipient. Nor does the mandate settle who legally owns the tokens.

My work on ERC-3643 at Tokeny shapes this analysis. The diagrams show integration choices and review points, not a production report.

WATCH OUT

Correction, 6 September 2026: an earlier version said the ERC-8226 draft’s published pattern could only target ERC-7943. That was too broad. The current draft explicitly documents transferFrom gates and account or executor alternatives.

Coming up next: So who is the “Agent” that ERC-3643 already knows?

Two different meanings of “agent”

IN SHORT In ERC-3643, the Agent is an admin role the issuer appoints. It is not the investor’s AI agent.

ERC-3643 Agent
Issuer operations: mint (create), burn (destroy), freeze, forced transfer.
Investor software
A specific delegation, token authorization, limits and expiry.

So don’t give investor software the issuer’s Agent role, even if both run as code. It would get a different, and possibly much wider, set of powers.

IN PLAIN WORDS

The issuer’s Agent acts on the token itself. An investor’s mandate defines a scope: one agent, one asset, permitted actions, cap settings, an expiry and a way to revoke it.

Coming up next: So how does a token check the bot’s mandate on a trade?

How one agent trade gets checked, step by step

IN SHORT On the token-gate path, the mandate check runs in the same transaction as the token’s own checks, so any failure undoes the whole trade.

STEP BY STEP

Sequence diagram: 5 participants: Investor, AI agent, Token, Mandate registry, ComplianceSequence diagram: 5 participants: Investor, AI agent, Token, Mandate registry, Compliance. Step 1: Investor to Mandate registry, Grant a mandate: actions, caps, expiry. Step 2: AI agent to Token, Move the investor’s tokens. Step 3: Token to Mandate registry, Does this agent hold a valid mandate?. Step 4: Token to Compliance, Does this transfer follow the rules?. Step 5: Token to Mandate registry, Record the execution against the caps.INVESTOR > MANDATE REGISTRYGrant a mandate: actions,caps, expiryAI AGENT > TOKENMove the investor’s tokensTOKEN > MANDATE REGISTRYDoes this agent hold a validmandate?TOKEN > COMPLIANCEDoes this transfer follow therules?Sees the token as caller, notthe agent.TOKEN > MANDATE REGISTRYRecord the execution againstthe caps

Step 1. Grant. The investor grants a mandate for one agent and one token, directly or by signature: which actions, how much per trade and in total, until when.

Pick a step to see it move
  1. Grant The investor grants a mandate for one agent and one token, directly or by signature: which actions, how much per trade and in total, until when.
  2. Request The agent asks the token to move the investor’s tokens (transferFrom). The caller is the agent, not the investor.
  3. Mandate check The token asks the registry: does this agent hold a valid mandate for this action and amount?
  4. Token rules The usual ERC-3643 checks still run: the allowance, the receiver’s identity and the compliance rules.
  5. Record The trade is counted against the mandate’s caps. If any step failed, the whole transaction reverts: it is cancelled and its changes are undone.
The strict token-gate example in the ERC-8226 Draft, on a token that can still be changed: any caller that isn’t the holder needs a mandate. A token may instead check only callers that hold one.

Each check answers its own question, and passing one never replaces another.

ERC-8226 gives the Mandate A permission an investor grants, directly or by signature, that says what one agent may do on one asset, how much, until when. See the glossary a full life cycle. It is granted, it expires, it can be revoked or frozen, and each use is counted. A compliance provider vouches that the Principal The investor who grants the mandate and on whose behalf the agent acts. See the glossary, the investor who grants it, is eligible.

In the draft, eligibility is checked when a mandate is granted or extended, not on each trade. So read the real rules for checks and sync. A signed grant alone does not keep the agent authorized.

ITEM GET

Two permissions, both required

On this path, the agent needs both the mandate and the Allowance The ERC-20 permission that lets another address, the spender, move up to a set amount of your tokens. See the glossary. A mandate alone neither grants ownership nor approves a transfer, and the token’s own rules still decide.

Sources: ERC-3643, ERC-8226 (Draft).

STAGE CLEAR

What you now know

  • Why the issuer’s ERC-3643 Agent role is the wrong tool for an investor’s trading bot.
  • How a token-gate check makes the mandate, the allowance and the token’s rules all pass in one transaction, or none.

Check yourself

Tap or click a question to see the answer.

An agent holds a valid mandate and an allowance, but the receiver has no valid identity in the registry. Does the transfer go through?

No. The mandate only authorizes the agent. ERC-3643’s own identity check still runs and blocks a receiver who isn’t verified.

Next stage:What do the compliance check and the mandate leave unchecked, and who decides where the tokens go?6 min
Adam Boudjemaa
Adam Boudjemaa

Web3 x AI engineer, former CTO of Integra. Named author (1 of 5) of ERC-3643, first author of ERC-6960, co-author of ERC-7410, and co-author of ERC-8203, which is still a draft.

Have a project to ship or a role to fill?

Discuss your project or role

My work at the web3 x AI intersectionOpen-source tools I build

Follow the engineering notes

Get new articles on production AI and smart contracts by email.