Documentation Index
Fetch the complete documentation index at: https://docs.rwalayer.com/llms.txt
Use this file to discover all available pages before exploring further.
RWALayer Dual Yield Overview
RWALayer offers a dual yield system for assets bridged from Ethereum, allowing users and smart contracts to earn yields
through auto-rebasing and real-world assets (RWA).
Yield Generation
Bridged assets on RWALayer generate yield through:
- Auto Rebasing: Yield from L1 ETH native staking via Lido, T-bill yield from MakerDAO, and native staking of
BNB & CAKE.
- Real World Assets (RWA): Yield from RWALayer ecosystem protocols covering property, commodities, private credit,
and future developments.
Key features include:
- Auto Rebasing Yield: Credited on-chain every 7 days.
- XUSD Stablecoin: After bridging USDT, users receive XUSD which auto-rebases yield from MakerDAO’s Treasury Bill
protocol. XUSD can be redeemed for DAI when bridging back.
- Monitoring: Track dual yield progress via the RWALayer App.
Yield Modes for Smart Contracts
Smart contract accounts on RWALayer can choose from three yield modes:
- Void (DEFAULT): No yield; ETH balance remains constant.
- Automatic: ETH balance increases automatically.
- Claimable: Yield accumulates separately and can be claimed.
Configuring Yield Modes
To change yield modes, smart contracts must interact with the RWALayer yield contract.
Yield Mode Details
Void Yield (DEFAULT)
Ensures compatibility with existing Ethereum Mainnet and other EVM-compatible dapps, requiring no modifications.
Automatic Yield
Depositing 1 ETH results in an increase to approximately 1.04 ETH after a year. Suitable for dapps that want to pass
yield benefits directly to users.
interface IRWALayer {
// Interface methods
}
contract MyContract {
constructor() {
IRWALayer(<yieldContractAddress>).configureAutomaticYield(); // Enables automatic yield
}
}
Claimable Yield
ETH balance remains unchanged, but yield accumulates separately and can be claimed.
interface IRWALayer {
// Interface methods
}
contract MyContract {
constructor() {
IRWALayer(<yieldContractAddress>).configureClaimableYield();
}
function claimYield(address recipient, uint256 amount) external {
IRWALayer(<yieldContractAddress>).claimYield(address(this), recipient, amount);
}
function claimAllYield(address recipient) external {
IRWALayer(<yieldContractAddress>).claimAllYield(address(this), recipient);
}
}
Managing Governors
The governor is responsible for claiming a contract’s yield and gas. Initially, the contract’s address is the governor
but can be updated.
interface IRWALayer {
// Interface methods
}
contract MyContract {
constructor(address gov) {
IRWALayer(<yieldContractAddress>).configureClaimableYield();
IRWALayer(<yieldContractAddress>).configureGovernor(gov); // Sets the governor address
}
}
Claiming Yield and Gas
Efficient management of yield and gas claims maximizes earnings and resource management.
Claiming Yield
Yield in Claimable mode can be claimed manually:
function claimYield(address recipient, uint256 amount) external {
IRWALayer(<yieldContractAddress>).claimYield(address(this), recipient, amount);
}
function claimAllYield(address recipient) external {
IRWALayer(<yieldContractAddress>).claimAllYield(address(this), recipient);
}
Claiming Gas
Configure and claim gas for managing operational costs, similar to claiming yield.
Monitoring Yield
Users can monitor their yield progress via the RWALayer App, ensuring they have up-to-date information on their
earnings.
By following these configurations and guidelines, you can effectively manage yield and gas for your smart contracts on
RWALayer, leveraging the dual yield system to maximize your returns.