What It Does
Stablecoin OFT enables an organization to deploy or extend tokens that operate natively across multiple EVM blockchains. A user on Ethereum can send tokens to Arbitrum, Base, or any supported chain in a single transaction. Stablecoin OFT handles the cross-chain messaging, token accounting, and security enforcement. Unlike standard bridge solutions, Stablecoin OFT gives token issuers direct control over:- Who can transfer (allowlist/blocklist per address)
- Where tokens can move (per-destination pause controls)
- How much can move (per-destination rate limits)
- What it costs (configurable fee collection per destination)
- Who manages what (granular role separation across all operations)
Comparison: Standard OFT vs Stablecoin OFT
| Capability | Standard OFT | Stablecoin OFT |
|---|---|---|
| Cross-chain transfers | Yes | Yes |
| Transfer models | Native, OFT (burn/mint) | Burn/Mint, Burn-Self/Mint, Lock/Unlock, Native |
| Access control | Owner-based | Role-Based (10 roles) |
| Fee collection | No | Per-destination BPS fees |
| Rate limiting | No | Per-destination token bucket with inbound/outbound |
| Pause controls | No | Per-destination + global |
| Allowlist/Blocklist | No | Three-mode (Open, Blacklist, Whitelist) |
| Fund recovery | No | Yes (compliance seizure from non-allowlisted) |
| Upgradeability | Optional | Built-in (EIP-7201 namespaced storage) |
| Configurable mint/burn interface | No | Yes (custom function selectors) |
| ERC20Permit (gasless approvals) | Depends on token | Built-in |
| Enumerable address lists | No | Yes (paginated blacklist/whitelist queries) |
Supported Transfer Models
| Model | How It Works | Use Case |
|---|---|---|
| Burn/Mint | Burns tokens on source chain, mints on destination. Requires MINTER_ROLE and BURNER_ROLE permissions. | New tokens with no pre-existing supply on any chain |
| Burn-Self/Mint | Transfers tokens from user to contract using ERC20 allowance, then burns using burn(uint256) selector | Tokens that follow OpenZeppelin’s ERC20Burnable.burn(uint256) or similar pattern |
| Lock/Unlock | Locks tokens on source chain, unlocks on destination | Existing tokens with supply already on one chain |
| Native | Wraps native tokens (e.g., ETH) for cross-chain transfer | Moving native gas tokens across chains |
Security Posture
All contracts extend OpenZeppelin’s audited upgradeable libraries and are independently audited by multiple firms. Role separation ensures no single key can both configure a policy and extract value — pausing and unpausing use different roles, fee configuration is separate from mint/burn authority, and cross-chain fees are pushed to a configured deposit address during sends. Every state-changing operation emits an indexed event for off-chain monitoring.Next Steps
- Technical leaders: Continue to Architecture for system design details
- Security teams: See Security and Compliance for the full threat model
- Integration engineers: See OFTs for deployment guidance,
ERC20Plusfor the token layer, and Extensions for fee, rate limiting, and pause configuration