Canton Agent
Wallet

A settlement account your agent controls.

FTP Tech LLC provides a self-custody Canton Coin account that an AI agent owns and controls, used to pay for x402-gated APIs on Canton. The agent holds its own key; the facilitator submits and pays gas but cannot move the funds.

What it provides

Four properties define the account. It is self-custody, it pays any x402 API, it verifies the relay-prepared transaction before signing, and it backs up and restores from a single key.

Self-custody01

An account the agent owns

The agent generates and holds its own Ed25519 key on its machine. The validator only hosts the party; it cannot spend the balance. Only the agent's signature authorizes a transfer.

x40202

Pay any x402 API

The wallet settles an x402 402 challenge from the agent's own balance. On a gated request it builds the transfer, signs it locally, has the relay submit it, and retries with on-ledger proof.

Verify-first03

Verify before sign

The relay is treated as untrusted. Before signing a transfer that moves funds, the wallet checks the relay-prepared transaction against its own intent and binds the signed hash to those exact bytes.

Portable04

Backup and restore

The key lives in a single wallet file the agent reuses. Export prints the private key for backup; import restores it on another machine. The file is the funds, so it is kept under tight permissions.

How it works

Funding once is the only human step. The agent creates a self-custody party, the owner funds it, the agent claims the incoming Canton Coin, and from then on it pays x402 APIs from its own balance.

01

Create

The agent generates an Ed25519 key locally. The relay onboards the party as a CIP-0103 external party; the agent signs the onboarding hash itself.

02

Fund

The owner sends Canton Coin to the agent's party id. A one-time faucet seed is available for a first end-to-end test.

03

Claim

Incoming Canton Coin arrives as a pending transfer. The agent accepts it with claim; accepting funds in needs no signing guard, because nothing leaves.

04

Pay

On a 402, the wallet builds and signs the transfer locally, the relay submits it and pays gas, and the request retries with the settlement proof.

Self-custody follows CIP-0103: the agent generates and holds the key, and the relay bridges onboarding and submission to a Canton participant using the validator's auth, so the agent needs no Canton account. For the full flow, see the live demo or the package.

The building blocks

The wallet is a local key the agent holds, a facilitator relay that submits and pays gas without custody, and a paying fetch that settles x402 challenges from the agent's balance.

Key01

Local Ed25519 key

The agent holds its own key in a single wallet file under restrictive permissions. The validator hosts the party but never controls the funds, and the agent reuses the same wallet rather than creating a second one.

~/.canton-agent/wallet.json
Relay02

Facilitator relay

A facilitator the agent talks to over HTTPS. It onboards the party and submits the agent's signed transactions, and it pays gas, but it never signs and never holds the balance, so it has no custody.

facilitator.ftptech.xyz
Library03

Paying fetch

A drop-in fetch that pays x402 challenges from the agent's wallet. It detects a 402, resolves the transfer, signs the prepared-transaction hash locally, has the relay submit, and retries with the on-ledger proof.

makePayingFetch()
Install
# Install the CLI
npm i -g @ftptech/canton-agent-wallet

# Or run it without installing
npx @ftptech/canton-agent-wallet <command>

Bin: canton-agent-wallet. Pass --relay-url to point at the facilitator.

CLI commandscanton-agent-wallet
  • createGenerate and onboard a self-custody wallet (idempotent).
  • addressPrint the party id to fund.
  • claimAccept incoming transfers, including the initial funding.
  • pay <url>Fetch a URL, auto-paying any x402 402 challenge.
  • withdrawSend Canton Coin back out, in full or by amount.
  • export · importPrint the private key for backup; restore it elsewhere.

Published as @ftptech/canton-agent-wallet under Apache-2.0.

Who it is for

The same account serves the builder shipping one agent, the long-running service that settles its own calls, and the institution that wants agents with a bounded account they control.

AI-agent builders

Give an autonomous agent a Canton Coin account it controls, so it can pay for a gated API and retry without a custodian in the path.

Autonomous services

A long-running service holds its own key and settles each call from its own party, reusing one wallet across its lifetime.

Institutions

Deploy agents with a bounded settlement account they control, settled on Canton MainNet with on-ledger finality and no custodial relay.

Giving your agents a settlement account

FTP Tech LLC runs the facilitator the wallet talks to and supports integrations on Canton MainNet. Reach out to discuss a deployment.

Talk to us
Self-custody by design

The key never leaves the agent’s machine, and only the agent’s signature can spend. The relay submits the transaction and pays gas, but it cannot move the funds, so it holds no custody.

Before signing a value-moving transfer, the wallet verifies the relay-prepared transaction against its own intent and binds the signed hash to those exact bytes, so a tampered preparation is rejected. The wallet is open source under Apache-2.0.

Let’s build something
that stays online

Launching a network, need a battle-tested validator, or want a community that actually shows up? Talk to us.