Orchestra supports four integration patterns. Pick the one that fits your use case.Documentation Index
Fetch the complete documentation index at: https://docs.flashnet.xyz/llms.txt
Use this file to discover all available pages before exploring further.
Patterns
Quote and Submit
Full control per transaction. Get a quote, fund the deposit, submit, track the order.
Pay Links
Shareable payment links with a fixed stablecoin output. Each click creates a fresh Lightning invoice. No expiration.
Reusable Addresses
Persistent deposit addresses in two directions: accumulation (any chain to Spark) and liquidation (Bitcoin L1 to any chain).
Comparison
| Quote/Submit | Pay Links | Reusable Addresses | |
|---|---|---|---|
| Per-deposit work | Call /quote, fund, call /submit | Click a URL | Fund only (auto-detected) |
| Source | Any supported chain | Lightning | Accumulation: solana, base, ethereum, arbitrum, optimism, polygon, bsc, tempo, tron, plasma, monad. Liquidation: bitcoin |
| USDB advantage | Same fee | Lower fee tier, fewer pipeline steps | Same fee |
| Destination | Any supported pair | Any supported stablecoin | Accumulation: spark (BTC or USDB). Liquidation: any supported chain/asset |
| Price control | Per-transaction slippage, exact-out | amountOut (sender pays output + fees) or amountFiatUsd (sender pays a fixed USD figure). Fresh quote per click. | Fixed slippage per address |
| Platform fee | Custom pricing | Custom pricing | Custom pricing |
| Fee model | Deducted from output | amountOut: added on top of sender’s payment. amountFiatUsd: deducted from receiver’s output. | Deducted from output |
| Affiliate fees | Supported (exact-in) | Supported in both modes via affiliateId. Fee position follows the chosen mode. | Supported (frozen at creation) |
| Expiration | Quote expires in 2 min | Link never expires | Address is permanent |
| ZeroConf | Configurable per quote | N/A (Lightning) | Liquidation addresses only (all Bitcoin L1 deposits are ZeroConf-eligible) |
Address behavior
Quote deposit addresses are generated per quote. Each/quote call returns a fresh depositAddress. Do not reuse a previous quote’s deposit address for a new deposit.
Reusable addresses (accumulation and liquidation) are deterministic. The deposit address is derived from the partner and destination configuration. Creating the same configuration twice returns the same address. Give reusable addresses to end users as permanent deposit targets.
Reusable address deposits are detected automatically by server-side webhooks. You do not need to call
/submit for these flows. Register a partner webhook to receive order updates.Which flow should I use?
- Need per-transaction price control, custom slippage, or exact-out payments? Quote/Submit.
- Shareable “pay me $X” links via Lightning? Pay Links. Use
amountFiatUsdwhen the displayed Cash App figure must match the link, oramountOutwhen the receiver must end up with an exact stablecoin amount. - Auto-converting deposits into BTC on Spark, or Bitcoin L1 deposits into any supported asset? Reusable addresses (accumulation for inbound stablecoins, liquidation for inbound BTC).
Next steps
- Stablecoin to BTC: Buy Bitcoin with USDC, ETH, or SOL
- BTC to Stablecoin: Sell Bitcoin for USDC, WBTC, cbBTC, and more
- Pay Links: Shareable payment links
- Reusable Addresses