Skip to main content
There are three broad ways to integrate with Picon DLMM, depending on what you’re building and which runtime you’re building it in:

Full SDK integration

A TypeScript app, bot, or backend that owns the whole flow — fetching pool/position state, quoting, building and sending transactions. Use @picon-finance/dlmm-sdk directly. This covers most integrations: wallets, portfolio trackers, LP-management bots, simple trading bots.

Router / aggregator venue

You’re plugging Picon DLMM into an existing multi-venue router as one routable pool type, likely from Rust, and likely need to quote fast against cached account state you already manage yourself rather than owning RPC fetching.

Quote-only, no SDK

You just need accurate swap-quote math — in Rust natively, or from any language via WASM — without pulling in the SDK’s RPC/transaction-building layer at all. The quote engine that powers the TypeScript SDK is a standalone, dependency-free crate you can use directly.

What’s admin-gated vs. permissionless

Before integrating, it’s worth internalizing one structural fact that differs from some other DLMM designs: pool creation is admin-gated, not permissionless. If your integration assumes it can spin up new pools on demand (e.g. an automated market-making bot that creates a pool for a new token pair), that assumption doesn’t hold here — pools are created by the Picon Finance admin authority. Swapping, depositing, withdrawing, and claiming against existing pools are all fully permissionless. See Governance for the full scope.

A note on liquidity shapes

If your integration deposits liquidity on a user’s behalf (an LP-management bot, a vault, a “one-click Curve strategy” UI), remember that Spot/Curve/Bid-Ask shape generation isn’t part of the protocol or the SDK — you’ll write that weight-curve logic yourself. See Positions and liquidity.