# OTC Marketplace

The OTC marketplace is a React application for PEARL/USDC swaps. It coordinates the Pearl Wallet extension, the PRC20/swap indexer APIs, browser EVM transactions, and the EVM escrow contract.

## Main Capabilities

* View orderbook bids and asks.
* Create EVM escrow bids.
* Create off-chain asks.
* Take asks.
* Accept bids.
* Understand Bot-Assisted and Human-Confirmed order modes.
* Submit Pearl lock proofs.
* Claim USDC when eligible.
* Refund expired swaps.
* Track active and archived swaps.
* Hide internal ask-match bids from the visible orderbook.
* Show role-based CTAs depending on user address and state.

## Public Architecture

The frontend coordinates:

* Pearl Wallet extension interactions;
* EVM wallet transactions;
* public indexer APIs;
* verified escrow contract calls;
* role-based UI actions;
* timers and recovery prompts;
* official explorer links.

Frontend build configuration and internal module layout are maintained outside the public GitBook. These docs focus on user behavior, protocol flow, and verified public addresses.

## Order Modes

The marketplace presents two settlement experiences: Bot-Assisted Orders and Human-Confirmed Orders. Both use the same OTC smart contract lifecycle; the difference is whether eligible session steps can be automated by the Telegram bot or require direct user/counterparty confirmation.

See [Order Modes: Bot-Assisted vs Human-Confirmed](/overview/order-modes.md) for the user-facing model and developer mapping.

## Settlement Model

Buyer USDC is locked in the OTC smart contract rather than sent directly to the seller wallet. Buyers pay 0% Black Pearl Market protocol fee, while normal network gas still applies. Protocol fees are accounted from the seller side through the claim path.

PEARL-side settlement uses an HTLC-style Taproot lock-release model. The seller locks PEARL, prepares a pre-signed release for the known buyer, and the wallet-secured secret coordinates PEARL release with the seller's USDC claim path.

See [PEARL HTLC Settlement Model](/overview/pearl-htlc-model.md) for the public protocol explanation.

See [Why Black Pearl Market's Settlement Model Is Different](/overview/why-black-pearl.md) for the design rationale.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.blackpearlmarket.com/overview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
