Cross-chain USDS & sUSDS
If you are looking to integrate Ethereum mainnet sUSDS, you should use this documentation instead.
1. Introduction
The Spark Liquidity Layer enables cross-chain liquidity of USDS and sUSDS. Integrators on these networks can tap into this liquidity by integrating these cross-chain tokens, and the Spark PSM.
The crosschain USDS and sUSDS tokens use the same simple ERC20 token implementation. The only difference between them is that sUSDS will increase in value over time according to the Sky Savings Rate. Converting between them on other networks can be done at no slippage or fees beyond gas using the Spark PSM. The crosschain sUSDS token does not contain any ERC4626 functionality - this is only available on Ethereum mainnet.
Savings USDS and the Sky Savings Rate are non-custodial and permissionless smart contracts offered by Sky, and is not issued by Spark. Spark does not have any control over the Sky Savings Rate or the sUSDS token.
2. Contract Details
Type/Category: Token
Contract Source: Github
Deployment Addresses
Network | Token | Address |
---|---|---|
Base | USDS | |
Base | sUSDS |
ERC20 token functionality
The contract implements the functions specified in the ERC-20 interface.
transfer
: Transfers a specified amount of tokens from the caller's address to the specified recipient's address. It returns a boolean value indicating the success of the transfer.transferFrom
: Transfers a specified amount of tokens from thefrom
address to theto
address. The transfer must be allowed by thefrom
address by calling theapprove
function or by setting an allowance. It returns a boolean value indicating the success of the transfer.approve
: Sets an allowance for a specific spender to spend a certain amount of tokens on behalf of the caller. It returns a boolean value indicating the success of the approval.
Upgradeability
The contract uses the ERC-1822 UUPS pattern for upgradeability and the ERC-1967 proxy storage slots standard. It is important that the SUsdsDeploy
library sequence be used for deploying.
Events emitted
Approval
: This event is emitted when an approval is set for a specific address. It indicates that the owner has approved the spender to spend a certain amount of tokens.Transfer
: This event is emitted when tokens are transferred from one address to another. It indicates the amount of tokens transferred and the addresses involved in the transfer.
3. Useful links
Last updated