> For the complete documentation index, see [llms.txt](https://docs.bextree.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bextree.com/developers/supported-protocols.md).

# Supported Protocols

Technical detail on each protocol integration. For the user-facing view, see [Supported Assets](/getting-started/supported-assets.md).

## Streamflow

* **Asset:** token lock and vesting contracts. Locks and scheduled vesting are treated identically — the eligibility test is "open and transferable."
* **Ownership check:** the wallet must be the contract's current `recipient`.
* **Transferability:** some contracts restrict recipient changes; non-transferable contracts are filtered out at discovery.
* **Settlement:** post-custodied. Seller signs the Streamflow `transfer` instruction changing `recipient` to the buyer; Bextree verifies the recipient change on-chain before releasing escrow.

## Orca

* **Asset:** Whirlpool concentrated-liquidity positions, each a standard SPL NFT.
* **Settlement:** pre-custodied. The position NFT deposits into the asset vault at listing time.

## Raydium

* **Asset:** CLMM positions (position NFTs) and AMM v4 / CPMM positions (fungible LP tokens).
* **Settlement:** pre-custodied, same vault flow for both representations.

## Meteora

* **Asset:** DAMM v2 positions, represented by a unique position NFT.
* **Not supported:** DLMM positions — they are non-transferable by design and cannot be listed.
* **Settlement:** pre-custodied.

## Adding a protocol

The integration question is a single classification: **can the seller hand the asset to Bextree's vault before the auction opens?** If yes, it's pre-custodied (no bond); if no, it's post-custodied (bond required, and the adapter must define an on-chain transfer-verification method). See [Asset Adapters](/developers/asset-adapters.md).
