Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Standard Operating Procedure (SOP): Token Listing

Role: Operations / Listing Manager System: Admin Dashboard

1. 准备工作 (Pre-requisites)

Before listing, you need the following information:

ItemDescriptionExampleSource
Logic SymbolThe unique ticker on the exchangeUNIProject Team
Asset NameFull display nameUniswapProject Team
ChainThe blockchain networkETHProject Team
Contract AddressThe Token’s Smart Contract0x1f98...Etherscan / Project
DecimalsToken precision18Auto-detected
Min DepositMinimum amount to credit0.1Ops Decision (Risk)
Withdraw FeeFee deducted per withdrawal5.0Ops Decision (Gas Cost)

2. 操作步骤 (Workflow steps)

Phase 1: Create Logical Asset (业务定义)

Define the asset for Trading and User Balances.

  1. Navigate: Admin -> Assets -> Create New.
  2. Input:
    • Symbol: UNI
    • Name: Uniswap
    • Decimals: 18 (System Internal Precision)
    • Initial Permissions:
      • [x] Can Allow Deposit
      • [ ] Can Allow Withdraw (Recommended: Disable initially)
      • [ ] Can Allow Trade (Recommended: Enable later)
    • Status: Active
  3. Click: Save.
    • System Result: assets_tb created. Asset ID generated (e.g., #10).

Phase 2: Bind Chain Asset (链上绑定)

Tell Sentinel how to find this asset on-chain and set limits.

  1. Navigate: Admin -> Assets -> Select UNI (#10) -> Chain Config Tab.

  2. Click: Add New Binding.

  3. Input Configuration (Minimal):

    • Chain: Select ETH (Ethereum).
    • Contract Address: Paste 0x1f98...
    • (Leave other fields empty - System will fetch them)
  4. Action: Click Auto-Detect from Chain.

    • System Action: Queries RPC decimals(), symbol().
    • Result:
      • Decimals: Auto-filled 18. (Locked, Read-only)
      • Symbol: Auto-detected UNI. (Verifies against Asset name)
    • Ops Action: Verify the fetched data matches. Adjust Min Deposit / Fee only if defaults are unsuitable.
  5. Risk Configuration: (Review Defaults)

    • Min Deposit: 0.1 (Prevent dust attacks).
    • Min Withdraw: 10.0 (Must be > Fee).
    • Withdraw Fee: 5.0 (Cover Gas + Margin).
  6. Confirm: Check detected Decimals match project info.

  7. Click: Bind (Saved as Inactive).

    • System Result: chain_assets_tb created with is_active=false.

Note: Risk Parameters (Fee, Min Deposit) are Chain-Specific.

Phase 3: Validation & Activation (验证与激活)

Verify functionality before opening to public.

  1. Validation: Perform the “User Deposit Test” (See Section 3).
    • Note: Inactive assets can still be processed by Sentinel for Admin-whitelisted test accounts (if supported), or use Staging env.
    • Correction: Current Sentinel design might require Active to process. SOP Update: Set “Fee” very high or “Min Deposit” very high to prevent public use, OR rely on asset_flags (Deposit Disabled) from Phase 1.
    • Refined Strategy:
      1. Enable Chain Binding (Active = True) to allow Sentinel to see it.
      2. Keep Logical Asset “Deposit/Withdraw” flags (Phase 1) DISABLED.
      3. Test.
      4. Enable Logical Flags.

(Self-Correction: Sentinel needs is_active=true to index logs. So we must keep Chain Active but Logic (User Balance) Disabled).

Revised Step 7: 7. Click: Bind & Activate (Chain Level). * Safety: Ensure Phase 1 Flags (Deposit/Withdraw) are UNCHECKED. This allows Sentinel to sync, but Users cannot operate.

Phase 4: Public Launch (Go Live)

  1. Navigate: Admin -> Assets -> UNI.
  2. Action: Check [x] Can Allow Deposit, [x] Can Allow Withdraw.
  3. Click: Save.
    • Result: Users can now see deposit address and transact.

Note: Risk Parameters (Fee, Min Deposit) are Chain-Specific. If you list USDT on both ETH and TRON, you must configure them separately for each chain (e.g., ETH Fee = 5.0, TRON Fee = 1.0).


3. 结果验证 (Verification)

Verification A: User Deposit (Hot Test)

  1. Ask a test user to deposit UNI to their Existing ETH Address.
    • Note: User does NOT need to generate a new address.
  2. Wait 1-2 minutes (Block Confirmation).
  3. Check Admin -> Deposits: Should see + UNI record.

Verification B: System Log

  1. Check Sentinel Logs: [ETH] New asset watched: UNI (0x1f98...).

4. 常见问题 (FAQ)

Q: 用户需要重新生成地址吗? A: 不需要。只要是 ETH 链上的资产,用户统一使用同一个 ETH 充值地址。系统会自动根据 Contract 地址识别是 UNI 还是 USDT。

Q: 填错了合约地址怎么办? A: Verify On-Chain 步骤会报错(Decimal获取失败或为0)。如果强行保存了错误地址,请立即在 Admin 中将该 Binding 设为 Disabled,然后重新添加正确的。