Trading
Transaction Lifecycle
Each state a trade passes through, and what the user sees.
- 1Quote requested. Input is debounced; RwaMarkets requests a quote for the pair and amount.
- 2Quote available. Price, impact, minimum received and fees are displayed and refresh automatically.
- 3Review. The user reviews the final quote. Stale quotes are refreshed first.
- 4Awaiting signature. The wallet shows the unmodified transaction. The user can approve or reject.
- 5Submitting and confirming. The signed transaction is passed to the execution provider, which lands it on Solana and waits for confirmation.
- 6Success or failure. The result is shown with a link to the transaction on a Solana explorer.
Failure states
| State | What happens |
|---|---|
| No route | No trading route is currently available; nothing can be signed. |
| Insufficient balance / SOL | The trade is blocked before signing. |
| Rejected in wallet | Nothing is submitted; the user can try again. |
| Quote expired / price moved | The transaction does not execute; a new quote is requested. |
| Failed to land | The transaction did not confirm; no swap took place. |
| Status unknown | Confirmation could not be read in time; the explorer link shows the final outcome. |
Duplicate protection
A trade cannot be submitted twice from repeated button presses; the interface locks execution until the current attempt resolves.