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. UseFullConsent instead:
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