Skip to main content
Track a DCA order’s schedule, progress, and fill history through the order-history endpoints. Every request needs the JWT from authentication.

Tracking an order

List your DCA orders, or fetch one by ID. Both require the JWT.
The per-order detail path requires the dca segment: GET /trigger/v2/orders/history/dca/{id}.
List query parameters: state (active or past), mint (matches input or output), limit (1–100, default 20), offset, sort (updated_at, created_at, next_fill_at), and dir (asc / desc). Each order reports its schedule, progress, and event history:
Reconcile against state and events, not inputAmountRemaining, which is not zeroed after a cancellation.

Order states

The response carries two status fields: state is the raw internal status, and displayState is the human-friendly version most integrations show. For how these states fit the end-to-end flow, see the Integration Flow.

How rounds fill

When a round comes due, the keeper swaps amountPerRound and delivers the output straight to your wallet, and pays the swap’s transaction fee itself. You never withdraw filled output manually; only the unfilled remainder is returned, and only when you cancel. A round that is due now typically fills within a few seconds. Each fill appends an event and advances roundsFilled, outputAmountTotal, inputAmountUsed, and nextFillAt:
A price_conditional round that is out of band does not fill: the order stays active with roundsFilled unchanged until the price re-enters the range, then resumes on the next interval. If a round cannot execute (for example, not enough liquidity within slippage), the keeper retries it within a window of min(max(30, intervalSeconds / 2), 7200) seconds, then reschedules it to the next interval. roundsFilled stays the same and nextFillAt advances. A round’s fill event carries a state of success, failed, executing, or pending.

Fees and slippage

Each round executes as a standard Jupiter swap, run by the keeper. Two things follow from that:
  • Slippage is automatic and not configurable. DCA orders have no slippage parameter. The keeper sets slippage per round from live market conditions at fill time; you cannot set or cap it.
  • The swap fee is included in the output. Any swap fee is already reflected in the outputAmount you receive each round. Trigger V2 does not support integrator fees.
The keeper pays the network and priority fees for each fill, and the output settles directly to your wallet.

Create a DCA Order

Set up the deposit and schedule.

Cancel a DCA Order

Withdraw the unfilled remainder.

DCA History (API)

Full history request and response schema.

Authentication

The challenge-response JWT flow every request needs.