The lending module tracks pools, deposits, collateral flags, borrow positions, interest, health factors, and liquidation paths.
User lifecycle
- Deposit an asset into a lending pool.
- Enable the asset as collateral where governance permits.
- Borrow another supported asset within the health boundary.
- Repay debt and accrued interest.
- Withdraw available collateral.
- Liquidate a position only when the module reports it as liquidatable.
Integration rules
- Query pool parameters and current health before every risk-changing action.
- Use the module’s integer amount and interest calculations; do not reproduce them with floating-point math.
- Keep collateral, borrowed denom, oracle price, and account address bound to the signed message.
- Surface liquidation and pause states to users instead of hiding them behind a generic “borrow” button.
Lending can feed stablecoin yield or UTA risk workflows, but a product should connect those modules only through their public typed boundaries.