Agents pay.
You stay
in control.
Every agent transaction screened, limited, and signed before it moves. So finance trusts you, legal trusts you, and you ship next week instead of next quarter.
Every payment passes five checks.
One fails, the payment stops. Automatic. No 3am surprises. No regulator phone calls.
Who is the agent
Every agent resolves to a registered principal, human, treasury, or organisation, and the legal entity that backs every dollar it spends.
What was bought
Counterparty, amount, asset, chain, and category, bound into a one-time signature. No swap, no rewrite, no replay across networks.
Under what rules
A per-tenant ruleset, caps, allowlists, approval thresholds, version-signed by the tenant's MPC issuer and embedded into the bundle.
Was the world okay
Live sanctions verdict, risk tier, drift score and AML flags, re-evaluated in milliseconds and signed by a registered MPC ring.
Who is liable
A regulator-encrypted disclosure that names every responsible party. Unsealable only with a threshold of regulator key and Oris MPC.
One call.
One safe payment.
The agent asks to pay
Before any rail is touched, the Oris SDK assembles the agent's intent and requests a compliance proof for the upcoming transaction.
Oris signs the bundle
Identity, policy, real-time compliance state, and a sealed liability chain are signed into a single 1.5 KB cryptographic bundle.
The rail verifies, settles
Stripe, Solana, Base or Visa verifies the bundle inline, then, and only then, moves the funds. If the bundle fails, settlement is denied.
The safety layer
every agent needs.
One standardized payload. Universally verifiable across EVM, Solana, and HTTP-based settlement layers. ~1.5 KB off-chain, 96-byte pointer on-chain, identical schema everywhere.
{ "version": "v2", "agent_did": "did:ethr:8453:0xababab…ab", "tenant_node": "0x9af3c1…b21c", "policy_root": "0x7d2e08…41ac", "veris_attestation": { "sanctions_clean": true, "risk_tier": "low", "drift_score_bp": 128, "signer_pubkey": "Tsgh1UPq…0B", "signature": "BLS::4ec8…2d3b" }, "tx_intent": { "counterparty": "0xc1a4f3…", "amount_usd_e6": 148200000, "stablecoin": "USDC", "chain_id": 8453, "nonce": "0xba27…3e91" }, "proof_type": "0x03", // Halo2 ZK "proof": "halo2::pi…", "sealed_envelope": "enc(audit_log, regulator_pubkey)", "bundle_id_evm": "0x4ec821…d01", // keccak256 "bundle_id_circuit": "0x9f0a32…7e" // Poseidon }
Every rail.
One line of code.
Stripe. Visa. Base. Solana. One SDK covers them all. No rewrites. No special cases.
Whoever is shipping
the next agent.
For rails
Add an Oris verifier and accept agent transactions without rewriting your risk engine. We carry the regulator on our balance sheet, not yours.
- Drop-in verifier · 200 lines of code
- Native EVM and SVM contracts
- HTTP service for card and bank rails
For issuers
Issue agent-tier credit, debit, and stablecoin balances knowing every transaction arrives pre-signed with sanctions clearance and a liability chain.
- 3DS frictionless via bundle hash
- Real-time revocation stream
- Shared liability framework
For agent teams
Ship an agent that can pay anywhere without negotiating compliance separately with every rail. One SDK call returns five signed answers.
- Python, TypeScript and Rust SDKs
- AgentCore middleware
- x402 native
Plug in once.
Cover every rail.
Stripe, Base and Solana carry the money. Oris carries the proof. Every cube that passes under the seal emerges cryptographically signed and accountable.
What Chainalysis became for on-chain forensics, Oris is becoming for agentic payments, a neutral, queryable source of truth the largest rails depend on without having to build it themselves.
Stop a bad payment
before it happens.
If you are an agent team, a rail, or an issuer, talk to us first. Ten minutes saves you a regulator call.