Secondary Market Module

Overview

The Secondary Market module enables peer-to-peer trading of fractional tokens. The router enforces compliance checks and routes trades to Seaport or executes minimal direct swaps.


Purpose

  • Enable secondary liquidity.

  • Enforce compliance.

  • Collect protocol fees.


Key Features

  • Seaport integration.

  • Direct swaps for fractions.

  • Fee routing.

  • Permissioned eligibility enforcement.


Roles

  • Admin – sets treasury, fee, Seaport.

  • Pauser – pause/unpause.


Files

  • contracts/market/P2PRouter.sol


Example Flow

  1. Seller signs off-chain Seaport order.

  2. Buyer submits to P2PRouter.fulfillWithSeaport().

  3. Compliance enforced on maker/taker.

  4. Order executed via Seaport.

  5. Protocol fee routed to treasury.

For direct swaps:

  • Buyer calls directSwap().

  • Compliance checked.

  • Fractions transferred seller→buyer, stablecoin transferred buyer→seller.

Last updated