Trade lifecycle
Every fill moves through a single, one-directional state machine. Here's each state — and exactly where the counterparty exposure sits.
States
Quote → Awaiting deposit → Deposit broadcast → Deposit confirmed
→ Approved → Settled → Completed
1. Quote (RFQ)
You pick your sell-side (asset + network you're paying) and buy-side (asset + network you want). The desk prices both legs at market and applies its spread, returning a firm quote — the exact fill you'll receive — with a ~90s TTL. If it lapses, re-quote.
2. Deposit
The desk returns a settlement address on your sell-side network. You send the exact quoted clip from your own wallet.
Send the exact clip
The deposit is matched to your quote by exact amount on-chain. An over- or under-send won't auto-settle and has to be reconciled manually. Send precisely what the quote shows.
3. Deposit finality
The desk's watchers monitor the sell-side network. A deposit is accepted only when it:
- settles the exact quoted amount of the correct asset,
- to the correct settlement address, and
- has reached a safe confirmation depth for that network.
This finality buffer is deliberate — it guards against reorgs, so the desk never settles a fill against a deposit that could still be reversed. (Higher-finality networks clear in fewer confirmations; reorg-prone ones need more.)
4. Approved
A broker reviews the confirmed deposit and approves settlement. This manual gate is a deliberate control — nothing settles without it.
5. Settle
The desk's signer constructs, signs, and broadcasts the settlement leg, sending your buy-side asset to your settlement address. Once on-chain, the trade is Completed and you have the settlement txid.
Counterparty exposure
You ──deposit──▶ Desk ──settle──▶ You
(principal holds funds here)
Between step 2 (your deposit) and step 5 (settlement), your funds sit with the desk. That window is your counterparty exposure — you're relying on Origami, as principal, to settle.
That's the model: you keep custody of your wallet and keys at all times, but a trade routes funds through Origami as your counterparty. It is not an atomic, trustless swap. See Counterparty & custody for the desk's controls and your checklist.
Terminal states
Not every quote becomes a fill. The honest terminal states:
| State | Meaning |
|---|---|
| Expired | Quote TTL lapsed pre-deposit. Re-quote. |
| Rejected | The desk declined the trade (e.g. a deposit issue). |
| Refunded | A rejected trade's deposit was returned. |
| Payout failed | Settlement couldn't broadcast; the broker investigates and resolves. |
Tracking
Every trade carries a public reference ID (e.g. OTC-2026-AB12CD34EF) — use it to pull
live status through quote, deposit, finality, approval, and settlement.