| State | Description |
|---|---|
pending | Trade is in an initial or transitional state where it’s being created, processed, or sent to the exchange provider. The trade has not yet been confirmed by the provider. |
confirmed | Trade has been successfully confirmed by the exchange provider and is awaiting signatures from both the taker and maker parties to proceed with onchain recording. |
pending_settlement | Trade has been recorded onchain and is awaiting funding from both the taker and maker parties. This state indicates the trade is in progress but not yet fully funded. |
taker_funded | The taker party has successfully delivered their funds onchain. The trade is now waiting for the maker party to deliver their funds to complete the exchange. |
maker_funded | The maker party has successfully delivered their funds onchain. The trade is now waiting for the taker party to deliver their funds to complete the exchange. |
breaching | The trade’s maturity date has passed and the system is actively processing a breach. This is a transitional state indicating the trade is being expired because both parties have not delivered by the deadline. |
breached | Both parties failed to deliver their funds by the maturity date. This is a terminal state - the trade has expired and will not proceed. Neither party successfully completed their delivery obligations. |
failed | The trade has expired before being recorded onchain. This is a terminal state indicating the trade timed out during the signature collection phase and was never broadcast to the blockchain. |
complete | The StableFX contract has successfully settled token fund transfers between the taker, maker, and fee recipient. This is a terminal state indicating successful trade completion. |
Terminal states (
complete, failed, breached) are final states that trades
cannot transition out of.