Smart contracts
A complete reference of Re Protocol's deployed contracts and controller wallets. All addresses are verifiable on the relevant block explorer.
Tokens
reUSD
Senior tranche. Learn about reUSD.
BNB Smart Chain
reUSDe
Mezzanine tranche. Learn about reUSDe.
$RE
Governance token. Learn about $RE.
NAV Oracles
Protocol-operated oracles that publish the daily mint and redeem price. Updated daily at 00:00 UTC, not derived from secondary-market pricing.
reUSD NAV oracle
reUSDe NAV oracle
Chainlink CRE / CCIP oracles
AggregatorV3Interface wrappers over the protocol NAV oracles above, so integrators can read NAV through the usual Chainlink feed interface. They are not independent Chainlink price oracles: the value is Re's NAV, delivered via Chainlink Runtime Environment (CRE) or Chainlink CCIP messaging depending on the network. Each chain exposes an 18-decimal and an 8-decimal reader.
reUSD CRE and CCIP oracles
BNB Smart Chain
CRE
reUSDe CRE and CCIP oracles
Insurance Capital Layers (ICLs)
The ICL is an upgradeable, role-controlled vault and the interface between depositors and the rest of the protocol. It accepts KYC-approved deposits (ERC-20 and native), mints ShareToken shares via the Share Price Calculator, tracks deposit fees, manages custodians, locks balances for redemption or collateral use, and exposes admin and operator controls for pausing.
Core Protocol Contracts
Decentralized Fund. Upgradeable, role-controlled manager. Stores core addresses (operator, treasury, recipient, KYC registry, pool registry), lets the operator update those settings, and creates new ICL instances via a factory.
Share Price Calculator. Maintains the global share price and converts between deposit token amounts and shares using token-specific price oracles, with validation and decimal scaling.
Deposit Token Registry. Access-controlled registry of accepted deposit tokens, with configurable fees, price oracles, slippage, minimum deposits, and collateral eligibility.
KYC Registry. Role-based registry. A KYC admin manages providers, and providers approve or revoke KYC status for user addresses.
Redemptions
RedemptionGateway. Entrypoint for instant reUSD redemptions. Integrators and institutional holders call redeemInstant(uint256 shares, uint256 minPayout) here; the gateway routes to InstantRedemption for execution.
InstantRedemption. Execution contract for instant reUSD redemptions. It burns shares and pays out stablecoins from the Daily Instant Redemption Vault. Holds MINTER_ROLE on the ShareToken (required to burn). Not called directly; the RedemptionGateway above routes redemptions here.
WindowRedemption. Quarterly window redemption for reUSDe. Holds MINTER_ROLE on reUSDe (required to burn).
Daily Instant Redemption Vault. Custody contract for the ERC-20 payout tokens InstantRedemption draws from. Enforces access-controlled deposits and withdrawals, reserves balances for redemption windows, relies on actual onchain balances to compute availability, and includes a guardian break-glass emergencyWithdraw.
Redemption Reserve Custodian. Holds bulk reUSD redemption liquidity in Fireblocks custody.
On each chain, the Daily Instant Redemption Vault and the Redemption Reserve Custodian together hold all available reUSD redemption liquidity.
Reserves Attestation
Aggregate offchain reserve and Section 114 trust balances, attested daily by The Network Firm and published onchain via Chainlink.
Chainlink data feed (Avalanche)
Onchain reader contract
Custody and Sweeps
Idle ICL balances are swept daily into Fireblocks custody (3-of-5 MPC). Each token's ICL has its own custodial wallet.
reUSD ICL custodial wallet (same address across chains)
Ethereum, Avalanche, Arbitrum, Base
reUSDe ICL custodial wallet
Bridging (CCIP)
Cross-chain transfers. reUSD and reUSDe move between chains via Chainlink CCIP token pools (BurnWithFromMintTokenPool 2.0.0). A transfer burns tokens on the source chain and releases the same amount on the destination. Each pool holds MINTER_ROLE on its local token so it can complete that destination-side release. reUSDe currently bridges Ethereum ↔ Berachain only.
reUSD CCIP token pools
BNB Smart Chain
reUSDe CCIP token pools
CCIP TokenAdminRegistry administrator (reUSD)
CCIP TokenAdminRegistry administrator (reUSDe)
Solana. The reUSD SPL mint (2uxaYT1fVrp6Fg2BrxQcyKSW91hefM6dG9krpbeDiirT) has mint authority ALGjEEQcjtJS7aQXvDPoFTLdp74t1ub9w8rVwKbsSHB2, an SPL Token multisig (numRequiredSigners = 1, numValidSigners = 2) with signers HgkgFRLz76rJA2FBjJQQo41GkViewDngS4tpUKwTkhfo and EsX25TxVd8Uc4CFBdqQCZM86aHw7KxxCdgLhpwrArJ8E. Freeze authority and the CCIP TokenAdminRegistry administrator are both 8trS7JTXGHrHmzE5UUnV1iJ11ipK3tkFZESHdeK2JETn (system account). The Chainlink CCIP router program upgrade authority is GoFoFfEDgALWRTw5dSY3VZQSwbFpvBEhDv1sFAWzYpbf (Chainlink-controlled, not Re).
Governance and Access Control
The protocol uses UUPS upgradeability. On the chains in the table below, a 48-hour TimelockController holds DEFAULT_ADMIN_ROLE and UPGRADER_ROLE on the ShareToken, so token grantRole / revokeRole (including adding minters or upgraders) takes the 2-day timelock path. A Gnosis Safe (0x8eec10616802Ef639CA55c98ac856553fAdEfBaD) is the sole proposer, executor, and canceller on those timelocks, owns the CCIP token pools on every verified chain, and holds DEFAULT_ADMIN_ROLE on the ICLs. Day-to-day roles are split across four dedicated controller wallets, with no single admin key.
Timelock. OpenZeppelin TimelockController enforcing a 2-day (172,800 second) delay between scheduling and executing privileged actions. Each address below holds both DEFAULT_ADMIN_ROLE and UPGRADER_ROLE on that chain's reUSD token. Where an ICL exists, the same timelock holds UPGRADER_ROLE on the ICL (and on Ethereum, both roles on reUSDe). On Berachain it also holds both roles on reUSDe. On BNB Smart Chain it is also the CCIP TokenAdminRegistry administrator. The Safe has PROPOSER_ROLE, EXECUTOR_ROLE, and CANCELLER_ROLE on every listed timelock (and is the sole proposer among checked holders), so it alone schedules timelocked actions.
BNB Smart Chain
0xC7fB6432017DC43752372A629b15C3aD446E827C (also TokenAdminRegistry admin)
Katana
0x24DA429FB87762E35f82200B209DEFb434655B84 (same address is Berachain's reUSD implementation bytecode — different contract, different chain)
Berachain
0xDDe19A4c562069cB4136CCB0dEBCfBBd67Aaf23F (reUSD and reUSDe)
Other listed token chains differ:
MegaETH: the Safe holds
DEFAULT_ADMIN_ROLEandUPGRADER_ROLEon reUSD. A 48-hour TimelockController is deployed at 0xD2E52E2480F26869C032520769Cc2AEe6A0f5e75.Tempo: reUSD is a 6-decimal system-style token (
0x20c0…), not the AccessControl ShareToken pattern used elsewhere; not an EVM TimelockController model.Solana: no EVM TimelockController. Mint authority is the 1-of-2 SPL Token multisig under Bridging; freeze/CCIP registry admin is a system account.
The Safe holds DEFAULT_ADMIN_ROLE on every ICL (Ethereum reUSD and reUSDe, Avalanche, Arbitrum, Base), alongside the chain's timelock. getRoleAdmin(UPGRADER_ROLE) on the ICL is DEFAULT_ADMIN_ROLE, so the Safe can grant itself ICL UPGRADER_ROLE with no delay; the ICL holds MINTER_ROLE on the token. CCIP pool owner() is the Safe on every verified chain, so lane and rate-limit config is not timelocked.
AccessManager. OpenZeppelin AccessManager used by the redemption stack (gateway, instant/window modules, vaults) to gate privileged selectors. Distinct from the Access Manager controller wallet below.
Controller wallets
Multi-party computation (MPC) is a cryptographic signing scheme where a private key is split across multiple independent parties, meaning no single person ever holds the full key. To authorize a transaction, a minimum threshold of parties must jointly sign. A label like "MPC 3-of-5" means any three of five key holders must approve before the wallet can act. Re uses MPC wallets (via Fireblocks) for custody sweeps and protocol controller roles, so a single compromised key cannot move funds or change critical settings on its own.
Oracle Config
MPC 3-of-5
Set price feeds for deposit and collateral tokens
Redemptions Config
MPC 3-of-5
Set redemption limits, top up redemption vault
Access Manager
MPC 5-of-8
Assign and revoke privileged roles
Custodian Manager
MPC 3-of-5
Add and remove collateral custodians
For educational and informational purposes only. Nothing on this Site is investment, financial, legal, or tax advice, or an offer, solicitation, or recommendation to buy, sell, or hold any digital asset, including reUSD and reUSDe. Yields are not guaranteed and all figures are illustrative, not a promise of return; past performance is not a reliable indicator of future results. Digital assets involve significant risk, including total loss of principal — the Tokens are not bank deposits and are not insured by any government agency. The Tokens are available only to eligible non-U.S. persons in permitted jurisdictions and are subject to KYC/AML requirements. The binding terms of the applicable agreements govern and prevail over this summary. See our full Disclosures for important additional information.
Last updated
