Architecture

Account Mode Architecture

Two ways to integrate UR. Pick the custody model that fits your product.

Recommended

Managed Custody Mode

The lowest-effort path. Users never interact with a wallet for fiat actions.

Integration
Standard REST APIs. No Web3 wallet handling.
Fiat account
Your backend orchestrates the user’s fiat account via the UR API.
User crypto
Held in that same UR-managed account, or a separate non-UR wallet your backend manages directly.
Partner Platform
UR
Settlement
Partner Backend
UR API
User Fiat Account
UR-managed
Tokenized deposits · IBAN · Card
Onchain Settlement
User Crypto
UR-managed account or
separate non-UR wallet
API calls(partner signs)
Direct management
only if crypto is in a non-UR wallet
Always present Conditional path UR Partner Settlement
Self-custody

External Wallet Access Mode

For platforms where users bring their own wallet and hold their own keys.

Wallet
Users connect MetaMask, Rabby, or any external wallet. UR does not provision a new one.
Custody
Full self-custody. Keys never leave the user’s wallet.
Balances
The user’s identity and fiat balances (tokenized deposits) live directly in their external wallet.
User
UR Smart Contracts
UR Backend
Partner Platform
User
External Wallet
Token / Deposit /
Router Contracts
Fiat Balance / Assets
Event Listener /
Webhooks
Partner API
Compliance / Risk
& Quote Service
Partner Frontend / DApp
Partner Backend
Controls
6Sign & Submit Tx
5Request Signature
Connects to
1Request Action
4Pass Data
2Get Quote / Params
3Return Tx Data
7Notify Status
Synchronous call Async / event-driven UR Partner User