Now that we know all the actors and modules in the system, let’s take a detailed technical look at how all of them come together.

Here’s a simplified representation of the process:

1

Intent Creation

User requests quote → Signs intent → Submits intent to order book

2

Solver Selection

Order book selects solver → Solver begins settlement

3

User Settlement

User initiates transaction → Solver executes on destination chain

4

Completion

User redeems funds → Solver completes settlement

Here is the detailed look into each step of the process.

Creating an intent

Request Quote

The user starts the process by requesting a quote for a desired swap. The quote contains details like the input asset, output asset, chains involved, and the desired amounts.

Accept Quote

The user receives the quote and must accept it by creating a signed intent message.

Create Intent

This signed intent represents the user’s objective, including parameters like assets, chains, amounts, and expiration details.

Selection of solver in the order book

Once the user signs the intent, it is submitted to the order book, a decentralized system where solvers compete to fulfill the intent.

Auction process:

1

Quote Submission

All solvers submit their quotes based on the intent’s parameters.

2

Best Quote Determination

The best quote (lowest price or highest efficiency) is determined.

3

Breaking Draws

Solvers with a higher staker score than the solver with the best quote have a 5-second window to match the quote.

  • No acceptance: The best-quote solver wins.
  • One acceptance: The accepting solver wins.
  • Multiple acceptances: The solver with the highest staker score wins.
4

Solver Confirmation

Once a solver is selected, they prepare to execute the swap.

Settlement: User-side execution

1

Begin Settlement

The settlement process begins once the selected solver is confirmed.

2

User Initiation

The user must initiate settlement by creating a signed transaction message for the intent.

3

Relayer Broadcast

The signed message is submitted to a relayer, which broadcasts it on the blockchain.

4

On-chain Processing

The transaction is processed on-chain, and the user’s funds are locked or transferred to the relevant contract or wallet.

5

Confirmation

Once the transaction achieves the required number of blockchain confirmations, the settlement progresses to the solver’s side.

Settlement: Solver-side execution

1

Receive Confirmation

The solver, upon receiving confirmation of the user-side transaction, initiates the corresponding transaction on their end.

2

Execute on Destination

This step involves the solver locking funds on the destination chain, earmarked for the user.

3

Solver Confirmation

The solver’s transaction also undergoes a confirmation process on the destination chain to ensure security and reliability.

Redemption

1

Asset Availability

After the solver’s transaction achieves the required confirmations:

  • The user can redeem funds on destination revealing the swap prehash.
2

Solver Redemption

Once the user reveals the prehash the solver is able to recieve funds on the source chain, completing the swap.