RouterStatic Overview
Interface: IPRouterStatic
RouterStatic is designed for off-chain simulation only and should not be used for fund-sensitive or on-chain transactions. If you need to call any of these functions on-chain, please contact the Pendle team.
For most integrations, the Pendle Hosted SDK / API is the better choice. It handles off-chain approximation, limit-order filling, and multi-DEX zap routing automatically — all things RouterStatic cannot do. Use RouterStatic directly only when you need fully on-chain quote generation without any external API dependency.
Overview
RouterStatic is a read-only contract that mirrors every swap, liquidity, mint/redeem, and user-info operation exposed by the live PendleRouter. Its purpose is pre-flight simulation: call a *Static function off-chain to get expected outputs, price impact, and exchange rates, then use those results to set minOut / ApproxParams before submitting the real transaction.
RouterStatic is a multi-facet proxy (ERC-2535 Diamond Standard). Use the ABI of IPRouterStatic to interact with it — the proxy resolves each call to the correct facet automatically.
Deployment addresses are listed on the Deployments page.
Interface Facets
| Interface | Purpose |
|---|---|
IPActionInfoStatic | User & position info |
IPActionMarketAuxStatic | Market rates, state, price impact, ApproxParams helpers |
IPActionMarketCoreStatic | Swap + liquidity simulations |
IPActionMintRedeemStatic | Mint/redeem simulations + pyIndex views |
IPActionStorageStatic | Default ApproxParams storage |
IPActionVePendleStatic | vePENDLE-related views |
Return Types
TokenAmount
struct TokenAmount {
address token;
uint256 amount;
}
A generic token–amount pair used throughout info functions.
UserSYInfo
struct UserSYInfo {
TokenAmount syBalance;
TokenAmount[] unclaimedRewards;
}
Returned by getUserSYInfo. Contains the user's SY balance and any unclaimed reward tokens.
UserPYInfo
struct UserPYInfo {
TokenAmount ptBalance;
TokenAmount ytBalance;
TokenAmount unclaimedInterest;
TokenAmount[] unclaimedRewards;
}
Returned by getUserPYInfo. Contains PT/YT balances, accrued interest, and unclaimed rewards.