# OTC Trading System

## 🏪 OTC Trading User Guide

The OTC (Over-The-Counter) Trading System allows server members to securely trade NFTs directly with each other using an escrow system. Create listings, browse available NFTs, and conduct safe peer-to-peer transactions!

### 📋 Table of Contents

* OTC Administration
* Getting Started
* OTC Commands Overview
* Setting Up OTC Trading
* Trading NFTs
* Managing Your Listings
* Collection Verification
* Understanding the Trading Process
* Permission Requirements
* Tips & Best Practices
* Troubleshooting

***

### ⚙️ OTC Administration

Before users can trade NFTs, server administrators need to set up the OTC system and verify collections for trading.

#### `/otc-setup`

Set up OTC trading infrastructure in your server.

**Required Permissions: Administrator**

**No Parameters Required**

**What this does:**

* Creates an "OTC" category with three channels:
  * **#otc-listings** - Where new listings are announced
  * **#otc-shop** - Where users can browse available NFTs
  * **#otc-sales** - Where completed sales are announced
* Configures the server for OTC trading
* Sets up the shop display system

**Example:**

```
/otc-setup
```

**Sample Output:**

```
✅ OTC Trading Setup Complete
Setup completed successfully!

Listing Channel: #otc-listings
Shop Channel: #otc-shop

New NFT listings will be announced in #otc-listings, and 
users can browse available NFTs in #otc-shop.

To submit your collection to be tradable, use `/otc-verify-collection`.

Users should be able to list, browse and manage their listings 
by using the command `/otc`.
```

***

#### `/otc-verify-collection`

Request verification for a collection to enable OTC trading.

**Required Permissions: Administrator**

**Required Parameters: None (uses interactive modal)**

**How it works:**

1. Opens a modal form requesting collection information
2. Submits verification request to the bot team
3. Team reviews and approves/rejects the collection
4. Approved collections become available for trading

**Modal Fields:**

* **Collection Address** *(required)*
  * The verified collection address
* **Official Discord Server URL** *(required)*
  * Your project's Discord server link
* **Official Twitter Handle** *(required)*
  * Your project's Twitter account (without @)
* **Official Website** *(required)*
  * Your project's official website
* **Market Place URL** *(optional)*
  * Tensor or MagicEden collection URL

**Example:**

```
/otc-verify-collection
```

**What happens:**

* Modal opens for collection details
* Verification request submitted to bot team
* You receive confirmation with request details
* Team reviews within 24-48 hours
* Collection approved for trading once verified

***

### 🚀 Getting Started

The OTC system uses Discord's slash commands and requires wallet verification for trading.

**Prerequisites:**

1. Server must have OTC trading set up (`/otc-setup`)
2. You must have a verified wallet (visit <https://verification.tekools.app>)
3. Collections must be verified for trading

**Basic Usage:**

```
/otc [subcommand] [options]
```

***

### 📖 OTC Commands Overview

#### OTC Administration Commands (Administrators Only)

| Command                  | Description                                 | Required Permissions |
| ------------------------ | ------------------------------------------- | -------------------- |
| `/otc-setup`             | Set up OTC trading infrastructure           | Administrator        |
| `/otc-verify-collection` | Request collection verification for trading | Administrator        |

#### OTC Trading Commands (All Users)

| Command        | Description                    | Required Permissions     |
| -------------- | ------------------------------ | ------------------------ |
| `/otc list`    | List an NFT for sale           | Verified wallet required |
| `/otc manage`  | Manage your active listings    | Verified wallet required |
| `/otc confirm` | Confirm NFT transfer to escrow | Verified wallet required |

***

### 🎯 Setting Up OTC Trading

#### For Server Administrators

**Step 1: Initial Setup**

```
/otc-setup
```

This creates the necessary channels and infrastructure.

**Step 2: Verify Collections**

```
/otc-verify-collection
```

Submit your collections for verification to enable trading.

**Step 3: Inform Your Community**

Let your members know they can:

* Verify their wallets at <https://verification.tekools.app>
* Start trading using `/otc` commands
* Browse listings in the #otc-shop channel

***

### 🏪 Trading NFTs

#### `/otc list`

List an NFT for sale in the marketplace.

**Required Parameters:**

* **`collection`** *(autocomplete)*
  * Select from verified collections available for trading
  * Only shows collections you own NFTs from

**How the listing process works:**

1. **Select Collection**: Choose from verified collections
2. **Choose NFT**: Browse your NFTs from that collection (paginated)
3. **Set Price**: Enter price in SOL
4. **Accept Offers**: Choose whether to accept offers
5. **Review Fees**: See breakdown of royalties and platform fees
6. **Transfer to Escrow**: Send NFT to bot's escrow wallet
7. **Listing Goes Live**: Your NFT appears in the marketplace

**Example:**

```
/otc list collection:My Cool Collection
```

**Interactive Flow:**

1. Select your NFT from a paginated list
2. Modal opens for price and offer settings:
   * **Price in SOL**: `10.5`
   * **Accept Offers**: `yes` or `no`
3. Review fee breakdown
4. Transfer NFT to provided escrow address
5. Confirm transfer with `/otc confirm`

***

#### `/otc manage`

Manage your active listings.

**No Parameters Required**

**Available Actions:**

* **Edit Price**: Change the listing price
* **Cancel Listing**: Remove listing and return NFT

**Example:**

```
/otc manage
```

**Interactive Flow:**

1. Select from your active listings
2. Choose an action (Edit Price or Cancel Listing)
3. Complete the selected action

***

#### `/otc confirm`

Confirm that you've transferred an NFT to the escrow wallet.

**No Parameters Required**

**When to use:**

* After transferring an NFT to the escrow wallet
* When you have pending listings awaiting confirmation

**Example:**

```
/otc confirm
```

**What happens:**

1. Shows your pending transfers
2. Select the transfer to confirm
3. Bot verifies the transfer on-chain
4. Listing becomes active if transfer is confirmed

***

### 📊 Understanding the Trading Process

#### For Sellers

1. **List Your NFT**: Use `/otc list` to create a listing
2. **Transfer to Escrow**: Send NFT to the provided escrow wallet
3. **Confirm Transfer**: Use `/otc confirm` to activate listing
4. **Manage Listing**: Use `/otc manage` to edit or cancel
5. **Complete Sale**: Receive SOL when buyer purchases

#### For Buyers

1. **Browse Listings**: Check the #otc-shop channel
2. **Purchase NFT**: Click buy button on desired listing
3. **Complete Payment**: Send SOL to provided address
4. **Receive NFT**: Bot transfers NFT to your wallet

#### Escrow System

* **Security**: All NFTs held in secure escrow during listing
* **Verification**: On-chain verification of all transfers
* **Automatic**: Automated handling of successful transactions
* **Reversible**: Sellers can cancel and retrieve their NFTs

***

### 🔐 Permission Requirements

#### Administrator Access

Server administrators can:

* Set up OTC trading infrastructure
* Request collection verification
* Access all OTC features

#### Verified Wallet Users

Users with verified wallets can:

* List NFTs for sale
* Purchase listed NFTs
* Manage their listings
* Confirm transfers

#### Regular Members

Standard server members can:

* View listings in #otc-shop
* Browse the marketplace
* See listing announcements
* Cannot list or purchase without wallet verification

***

### 💡 Tips & Best Practices

#### For Sellers

1. **Competitive Pricing**: Research similar NFTs before setting prices
2. **Quality Images**: Ensure your NFTs have good metadata and images
3. **Accept Offers**: Consider enabling offers for faster sales
4. **Quick Transfers**: Transfer to escrow promptly after listing
5. **Fair Pricing**: Factor in royalties and platform fees

#### For Collection Owners

1. **Complete Information**: Provide accurate social links during verification
2. **Active Community**: Maintain active Discord and social presence
3. **Fair Royalties**: Set reasonable royalty percentages
4. **Quick Response**: Respond promptly to verification team questions
5. **Community Education**: Teach your holders how to use the system

#### For Server Administrators

1. **Channel Organization**: Keep OTC channels organized and monitored
2. **Community Guidelines**: Set clear rules for trading behavior
3. **Support System**: Have moderators familiar with OTC commands
4. **Regular Updates**: Keep your community informed about new features

#### Security Best Practices

1. **Verify Addresses**: Always double-check wallet addresses
2. **Confirmed Transfers**: Wait for blockchain confirmation
3. **Official Channels**: Only use official bot commands
4. **Report Issues**: Report suspicious activity to administrators

***

### 🆘 Troubleshooting

#### Common Issues

**"Wallet Required" Error:**

* You need to verify your wallet first
* Visit <https://verification.tekools.app> to verify
* Ensure your wallet contains the NFTs you want to trade

**Collection Not Available:**

* Collection must be verified for trading
* Administrators need to use `/otc-verify-collection`
* Contact server admins to request collection verification

**"No NFTs Found" Error:**

* Ensure you own NFTs from the selected collection
* Check that your wallet verification is current
* Verify the collection address is correct

**Transfer Not Confirming:**

* Ensure you sent to the correct escrow address
* Wait for blockchain confirmation (1-2 minutes)
* Use `/otc confirm` after the transfer is complete
* Contact support if issues persist

**Listing Not Appearing:**

* Verify your transfer was confirmed
* Check that you completed the `/otc confirm` step
* Ensure the collection is verified for trading

#### Fee Structure

**Platform Fees:**

* Small platform fee on each sale
* Creator royalties automatically distributed
* Fees clearly displayed before listing

**Gas Fees:**

* Sellers pay transfer fees to escrow
* Buyers pay transfer fees when purchasing
* Standard Solana transaction fees apply

#### Getting Help

* Contact server administrators
* Check #otc-listings and #otc-shop for examples
* Review this documentation
* Report bugs to the development team

***

### 📋 Quick Reference

#### Command Quick List

```
/otc-setup              - Set up OTC trading (Admin)
/otc-verify-collection  - Request collection verification (Admin)
/otc list               - List an NFT for sale
/otc manage             - Manage your listings
/otc confirm            - Confirm NFT transfer
```

#### Trading Flow Summary

```
1. Admin: /otc-setup
2. Admin: /otc-verify-collection
3. User: Verify wallet at verification.tekools.app
4. User: /otc list → Select NFT → Set price
5. User: Transfer NFT to escrow wallet
6. User: /otc confirm
7. Listing goes live in #otc-shop
```

#### Channel Functions

```
#otc-listings  - New listing announcements
#otc-shop     - Browse and purchase NFTs
#otc-sales    - Completed sales notifications
```

#### Important Links

* **Wallet Verification**: <https://verification.tekools.app>
* **Support**: Contact your server administrators
* **Documentation**: This guide

***

*This guide covers all OTC trading system features. The OTC system provides a secure, automated way to trade NFTs within your Discord community. For additional support, contact your server administrators.*


---

# 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.tektools.app/product-guides/configuring-in-discord/otc-trading-system.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.
