Limit order — form variations

A — Persistent mode toggle
Market | Limit tab always visible at top of swap
Baseline
Swap
Market
Limit
Sell
500
$
USDC
≈ $500.00
Buy
Ξ
ETH
At limit price
When ETH price reaches
$2,800
Falls to ↓
Current: $3,421 · −18%
1d
7d
30d
Never
Min. received 0.178 ETH
Protocol UniswapX
Set limit order
Familiar pattern (Binance/OKX) Mode always accessible Toggle adds UI weight to market swap Limit is a minority action — prominent placement may mislead Farcaster wallet is not a trading app
B — Price impact bridge
Impact warning surfaces limit order as the fix — solves NEYN-11039 + 11022 together
Proposed
Swap
Sell
10,000
$
USDC
≈ $10,000.00
Buy
6,820
D
DEGEN
−31.8% price impact
High price impact. You'll receive far fewer tokens than you're selling in value. This pool has low liquidity — your trade moves the price.
Set a limit order instead →
Wait for a better price. Your order fills automatically when DEGEN reaches your target — no slippage.
Swap anyway at market price
Swap anyway
Set limit order
Solves both issues in one surface Limit order introduced at highest intent moment Warning is clearer — amount loss explained, not implied Danger CTA hierarchy discourages reckless confirm Requires threshold logic (when to show bridge vs. normal warning) Threshold TBD — suggested: show at >10% impact + limit eligible pair
B2 — Limit form (after bridge tap)
Pre-filled from market swap context, direction inferred
Proposed
Limit order
Sell
10,000
$
USDC
Buy — at target price
≈ 10,150
D
DEGEN
Buy when DEGEN price falls to
$0.00098
↓ Below
Current market: $0.00141 · −31%
1d
7d
30d
Never
Fills offline via UniswapX when DEGEN reaches $0.00098. No gas unless filled.
Review & sign
Pre-filled target reduces setup friction Direction auto-inferred (below = buy dip) Offline fill explained inline — trust signal Target price pre-fill logic needs design rule (current market? −30%?) Suggested default: current market price, user edits
C — Sign & confirm preview
Pre-signing summary before UniswapX payload is created
Supporting state
Review order
10,000 USDC
Sell when DEGEN falls to $0.00098
≈ 10,150 DEGEN
Min. received · based on 1% tolerance
Trigger price $0.00098 / DEGEN
Direction Falls to ↓
Expires 7 days
Protocol UniswapX
Fill Offline · no gas
Cancel Before submission only
Signing creates an order, not a transaction. Funds are reserved until filled or expired.
Sign order
Surfaces all UniswapX constraints clearly Cancel caveat set correctly (pre-submission only) "Offline fill" framing builds trust Out of scope this pass: gas estimation, wallet selector, network mismatch states

Open orders — history & cancel

D — Orders history
Accessible from wallet or swap history
Supporting state
Limit orders
+ New
Open
History
USDC → DEGEN
Buy 10,000 USDC · target $0.00098 · expires 6d
Open
Cancel
USDC → ETH
Sell 500 USDC · target $2,800 · expires 5d
Open
Cancel
ETH → USDC
Sell 0.5 ETH · target $3,800 · filled 2h ago
Filled ✓
Open orders can be cancelled before they're submitted to the network.
Cancel affordance gated to open orders only Filled/expired clearly distinguished Out of scope: pagination, submitted-cannot-cancel edge state, push notification on fill
E — Unsupported token fallback
Token not on limit order allowlist — price alert + normal swap path
Edge state
Swap
Sell
1,000
$
USDC
Buy
W
WIF
Limit orders not available for WIF. This token isn't on the supported list yet. You can swap at market price, or set a price alert.
🔔 Price alert instead
Notify me when WIF hits a target
Set →
Price impact −6.2%
Swap at market price
Doesn't dead-end user — offers price alert as value-add Market swap still available, not blocked Price alert feature is a nice follow-on if not already in product Alert path needs its own design (out of scope this pass)
Proposal — pending approval
Ship Options B + B2 + C as the primary flow: high price impact warning surfaces the limit order CTA (NEYN-11039 + 11022 together), tapping it pre-fills the limit form, review/sign screen surfaces all UniswapX constraints. Mode toggle (Option A) is deprioritised — it adds UI weight to a minority action. Option D (orders history) is required but not blocking. Option E (unsupported token) needed for completeness.
Out of scope this pass: gas estimation, wallet selector, network mismatch, push notification on fill, submitted-order cancel (v1 constraint), price alert feature, pagination in orders history.
Benchmark
Reference screens via Mobbin
Limit order UI
OKX
OKX
Binance
Binance
OKX
OKX
Binance
Binance
OKX
OKX
Binance
Binance
Solflare
Solflare
Binance
Binance
Market / Limit toggle
Binance
Binance
Binance
Binance
Stake
Stake
Stake
Stake
Binance
Binance
Binance
Binance