One agent. One address.

One address.
Every chain.

Every agent gets one canonical address. Behind it, the protocol provisions native wallets on ten chains. Your code uses one identifier. We handle the rail.

Agent wallet · procurement-bot
Canonical address
oris.agent/procurement-bot
Primary
ERC-4337 (8 EVM chains)
0xab12…cd34
Native
Solana SPL
7nFsXxk2…rPq1
Native
Tron TRC20
TN8mUe…Zk
Native
Funded $6,550 across 10 chains
1
Canonical identity
10
Native wallets
ERC-4337
EVM accounts
Gasless
Account abstraction

One ID. Ten native wallets.

Oris mints one identifier when you register the agent. Native accounts spin up on first use. The resolver picks the right native address at send time.

01 / 04
01

One identifier

The Oris-issued canonical address represents the agent across every rail. It is durable, signed by the developer organization, and tied to the agent profile in the KYA registry.

02

Native accounts

The protocol provisions a native wallet on every supported chain. ERC-4337 smart accounts on the eight EVM chains. SPL token accounts on Solana. TRC20 accounts on Tron. Each backing wallet is bound to the same canonical identity.

03

Resolver

At send time, the resolver maps the canonical identifier to the chain-specific address based on the chain selected for the payment. The application code never assembles a chain-specific address by hand.

Smart accounts on every EVM rail.

Every EVM wallet is a smart account. Agents skip native gas tokens. The Oris paymaster covers gas for every authorized payment. Your bill arrives in one stablecoin.

02 / 04
EVM smart accounts
ERC-4337 status
Ethereum
Live
Base
Live
Arbitrum
Live
Optimism
Live
Polygon
Live
Avalanche
Live
BNB Chain
Live
Linea
Live
EVM chains 8 / 8 live

Smart accounts decouple the signer from the wallet. Recovery and rotation become policy-controlled rather than seed-phrase-bound. An agent that loses access to its signing key recovers through the operator policy without losing the wallet itself.

The paymaster pattern means the protocol can settle gas in USDC while still landing transactions on chains that require their native gas token. Application teams see a single stablecoin invoice and never need to procure ETH, MATIC, or BNB to fund agent operations.

Native on Solana and Tron.

Solana and Tron sit outside EVM. Oris handles each on its own terms while keeping the same canonical ID your code already uses.

03 / 04

On Solana the canonical identity is bound to a principal. SPL token accounts under that principal hold the agent balance and any token transfer respects the SPL associated-account convention. The application call is identical to an EVM call.

On Tron the canonical identity maps to a TRC20 account. Native energy and bandwidth are abstracted by the Oris paymaster, so the agent never needs to acquire TRX directly. Stablecoin transfers settle in seconds and the resource burn stays inside the Oris fee envelope.

Non-EVM wallets
Native protocol
SO
Solana SPL
7nFsXxk2…rPq1
SPL token account
TR
Tron TRC20
TN8mUe…Zk
TRC20 account
Same SDK call different protocol underneath

Send once. Land anywhere.

One SDK call takes the recipient and the target chain. The resolver picks the native address. The paymaster covers gas. Your code stays clean.

04 / 04

The recipient identifier is the same string across every chain. Switching the settlement rail is a single argument change. The protocol takes care of address derivation, gas sponsorship, and signature dispatch in the background.

The pattern works for both directions. A Base-native USDC payment to a canonical recipient resolves to a smart account address. A Solana USDC payment to the same canonical recipient resolves to that recipient SPL token account. The recipient never has to publish multiple addresses to the world.

cross_chain_send.py
agent.pay(
    to="oris.agent/data-buyer",  # canonical
    amount=25.00,
    chain="base",
)

agent.pay(
    to="oris.agent/data-buyer",  # same identifier
    amount=10.00,
    chain="solana",
)

One identity. Every rail.

Provision the agent once. Oris handles the wallet, the gas, and the routing. Your code only sees one address.