An Oryn order has two sides:
  • source_intent: the side funded by the user
  • destination_intent: the side funded by the solver
Each side maps to an escrow vault address. The API stores transaction hashes as watchers observe events on-chain.

Lifecycle model

Display states

StateMeaningUser action
CreatedThe order exists, but source funds are not indexed yet.Initiate source side.
Source initiatedSource escrow is created or funded.Wait for solver.
Destination initiatedSolver has prepared destination funds.Claim destination side.
Destination claimedUser-side claim is indexed.Wait for final settlement.
Source claimedSolver has claimed the source side.None.
CompletedExpected route events are indexed.None.
ExpiredA side passed its expiry without claim.Cancel where applicable.
CancelledCancel transaction is indexed.None.

API fields behind the states

FieldWhy it matters
swap_idEscrow vault address for the side.
create_tx_hashInitiation transaction.
claim_tx_hashClaim transaction. The API field is currently named claim.
bridge_tx_hashHop-route bridge dispatch transaction.
cancel_tx_hashCancel transaction.
cancel_afterExpiry window in blocks.
l1_hopWhether the route uses Avalanche hop settlement.
Do not infer completion from one field alone. A robust integration should read both sides and understand whether the route is direct or hop-based.