Raydium Developer Updates
327 subscribers
1 file
3 links
Raydium Developer Updates
Download Telegram
Messages in this channel will be automatically deleted after 1 month
The Launchlab program will update shortly.

This update relates to platform initialization and the use of alternative quote tokens.

This is a non-code-breaking change and does not affect trading, indexing, or any other operations outside of new platform ID creation.

The update is reflected in: sdk version 0.2.34-alpha
❀1
πŸ”§ Raydium CLMM Program Upgrade going live May 18thβ€” Full Integrator Brief
Three new features ship together: limit orders, dynamic fee, and single-sided fee. Opt-in at pool creation via CreateCustomizablePool. Fully backwards-compatible β€” existing pools and positions work unchanged. Classic CreatePool still works for default-fee pools without these flags.


β‘  Limit Orders
Single-tick orders with FIFO fill, settled by keeper so owners stay offline.
Lifecycle: Open β†’ Filled β†’ Settled β†’ Closed
New accounts:
β€’ LimitOrderState β€” per-(pool, owner, tick, nonce) account tracking input amount, unfilled ratio, and phase
β€’ LimitOrderNonce β€” monotonically incrementing counter for PDA seeds
SDK methods (raydium.clmm):
createCustomizablePool, openLimitOrder, increaseLimitOrder, decreaseLimitOrder, settleLimitOrder, closeLimitOrder, closeAllLimitOrder, settleAllLimitOrder
API endpoints:
β€’ /clmm/limit-orders/open?wallet= β€” open orders awaiting fill
β€’ /clmm/limit-orders/filled?wallet= β€” filled, awaiting settle
β€’ /clmm/limit-orders/closed?wallet= β€” settled and closed history
Keeper note: limit_order_admin is an off-chain operational keeper with bounded authority β€” can only call SettleLimitOrder and CloseLimitOrder, output always lands in owner's ATA. Cannot mutate pool fields, open orders, or sign for anything else.



β‘‘ Dynamic Fee
Volatility-reactive surcharge calibrated per tier. Surcharge rises with rapid tick movement, decays over time.
New account:
β€’ DynamicFeeConfig β€” per-tier calibration record (filter period, decay period, reduction factor, max fee numerator). Created by admin via CreateDynamicFeeConfig.
On PoolState: dynamic_fee_info: DynamicFeeInfo (embedded)
API: /main/clmm-dynamic-config β€” list of all tier configs.
Behavior: SwapV2 applies decay β†’ accumulate β†’ cap each step, adding the surcharge on top of the base fee. Swap path shape is unchanged.



β‘’ Single-Sided Fee
Collect swap fees always from token0 or token1 instead of input side.
On PoolState: fee_on: u8 β€” (0 = FromInput legacy, 1 = Token0Only, 2 = Token1Only)
Set once at pool creation via CreateCustomizablePool. Useful when one side of the pair is your canonical accounting token.



⚠️ Breaking Change β€” PoolState Reshape
Old layout β†’ New layout:
β€’ Per-direction volume counters (swap_in/out_amount_token_*) β†’ folded into padding5: [u128; 4]
β€’ Lifetime fee counters (total_fees*_token_*) β†’ folded into padding6: [u64; 4]
Total account size is unchanged. Existing pools retain their last values β€” reading these fields post-upgrade returns stale data. Migrate volume/fee tracking to the Observation ring or API before the upgrade date 18/05


TickState Additions (non-breaking)
Four additive fields at the tail replacing padding:
β€’ order_phase: u64 β€” disambiguates limit-order cohorts
β€’ orders_amount: u64 β€” total input committed by open orders at this tick
β€’ part_filled_orders_remaining: u64 β€” unfilled input in current cohort
β€’ unfilled_ratio_x64: u128 β€” Q64.64 ratio for computing fill shares
Tick-array layout, sizing, and PDA seeds are unchanged.


SDK & API Summary
SDK (@raydium-io/raydium-sdk-v2, branch clmm-dynamic-fee-and-limit-order)
β€’ 8 new CLMM methods + 3 new REST helpers on raydium.api (getClmmDynamicConfigs, getClmmLimitOrderConfigs)
β€’ New types: CollectFeeOn, DynamicFeeConfig, DynamicFeeInfo, LimitOrderState, LimitOrderConfig
β€’ Internal reorg: utils/ β†’ libraries/ β€” affects deep imports only
β€’ Code demos: products/clmm/code-demos
New API endpoints:
β€’ api-v3: /main/clmm-dynamic-config, /main/clmm-limit-order-config
β€’ temp-api-v1: /clmm/limit-orders/{open,filled,closed}
New error codes: 6045–6050 (InvalidDynamicFeeConfigParams, InvalidFeeOn, OrderAlreadyFilled, InvalidOrderPhase, InvalidLimitOrderAmount, OrderPhaseSaturated)
πŸ”— Docs & changelog: https://docs.raydium.io/reference/changelog#unreleased-%E2%80%94-clmm-limit-orders-single-sided-fee-dynamic-fee
πŸ”— Program branch: https://github.com/raydium-io/raydium-clmm/tree/feat_limitorder_dynamicfee
πŸ”— SDK branch: @raydium-io/raydium-sdk-v2 / clmm-dynamic-fee-and-limit-order
πŸ”— Audit: https://github.com/raydium-io/raydium-docs/tree/master/audit/Sec3%20Q2%202026
Docs updated across: accounts, instructions, fees, math, code-demos, API reference.
The CLMM Program Upgrade is live on mainnet, the new feature set includes limit orders, dynamic fees, and single-sided fees. These features are Opt-in at pool creation via CreateCustomizablePool. Fully backwards-compatible β€” existing pools and positions work unchanged. Classic CreatePool still works for default-fee pools without these flags.

⚠️ Breaking Change β€” PoolState Reshape
Old layout β†’ New layout:
β€’ Per-direction volume counters (swap_in/out_amount_token_*) β†’ folded into padding5: [u128; 4]
β€’ Lifetime fee counters (total_fees*_token_*) β†’ folded into padding6: [u64; 4]
Total account size is unchanged. Existing pools retain their last values β€” reading these fields post-upgrade returns stale data. Migrate volume/fee tracking to the Observation ring or API before the upgrade date 18/05

Full Scope: https://t.me/RaydiumDeveloperUpdates/21

πŸ”— Docs & changelog: https://docs.raydium.io/reference/changelog#unreleased-%E2%80%94-clmm-limit-orders-single-sided-fee-dynamic-fee
πŸ”— Program branch: https://github.com/raydium-io/raydium-clmm/tree/feat_limitorder_dynamicfee
πŸ”— SDK branch: @raydium-io/raydium-sdk-v2 / clmm-dynamic-fee-and-limit-order
πŸ”— Audit: https://github.com/raydium-io/raydium-docs/tree/master/audit/Sec3%20Q2%202026
Docs updated across: accounts, instructions, fees, math, code-demos, API reference.
πŸ‘2
stable-program-upgrade-260611.md
4.8 KB
Stable swap AMM upgrade - 22/06/26 12.00 UTC:

Raydium is simplifying the stable swap amm by removing its dependency on OpenBook, and reducing the number of required accounts.

Few integrators are currently using this program, for those who are, please review the Stable AMM upgrade changes carefully.

The update will be effective on Monday 22 at 12:00 PM UTC. Existing Swap, Deposit, and Withdraw flows using the old account layouts will continue to work for now, but we recommend migrating to the new reduced account layouts as soon as possible. Please note that WithdrawPnl is a hard breaking change and must be updated to the new 10-account layout.

More information in the .md.

Upgrade details are available at https://docs.raydium.io/reference/changelog/2026-06-22-stable-amm-openbook-cleanup, our new canonical version ledger.