Skip to main content

Overview

An OTC (over-the-counter) desk lets two parties swap tokens directly — no order book, no AMM, just a direct deal. Pacta is a natural fit because:
  • Both parties lock their tokens before the swap
  • Settlement is atomic — both sides receive their tokens in the same transaction
  • No trusted intermediary holds funds

Example Deal

Alice wants to sell 10,000 SUI for 5,000 USDC. Bob wants to buy. They agree off-platform, then execute on Pacta.

Step 1 — Alice Creates the Agreement

Using DepositOnly means as soon as both parties deposit, anyone can trigger settlement with no approval step needed. This is the fastest path for OTC swaps.

Step 2 — Alice Deposits SUI

Step 3 — Bob Deposits USDC

Step 4 — Anyone Triggers Settlement

The moment both have deposited, all conditions are met. Your platform backend settles automatically:

Step 5 — Each Party Claims

Adding an Approval Step for Large Deals

For large institutional deals, you may want both parties to explicitly confirm before settlement. Use FullConsent instead:
Then both parties call approve() after depositing to confirm the deal terms before funds move.

Handling a Failed Deal

If Bob never deposits within the 2-hour window, Alice can cancel after expiry:

Monitoring Deal Status in Your UI

What Your OTC Desk Does NOT Need to Build

  • Custody of either party’s tokens
  • An escrow smart contract
  • Settlement or swap logic
  • Expiry enforcement
All of that is Pacta. You build the deal matching UI, the price negotiation flow, and the user dashboard.