Truzor MM Truzor MM Docs

Truzor MM Documentation

Automated Discord escrow for crypto deals in Bitcoin and Litecoin. This guide walks you through every step and every command, and explains exactly what the bot does and does not do.

What is Truzor MM?

Truzor MM is an automated cryptocurrency middleman and escrow service running as a Discord bot. It is built for two strangers who don't trust each other yet: the bot handles the deal flow end to end, so no person has to manually hold or forward your funds.

Automated doesn't mean unattended. The deal itself runs without human intervention — but there is a real person behind Truzor. If a deal stalls, a deposit goes wrong, or you need a refund, you open a ticket and an actual human answers.

The Sender deposits crypto into a unique bot-controlled address. The bot holds the funds while the Receiver delivers the product or service off-platform. Once the Sender confirms delivery, the bot automatically releases the funds to the Receiver.

What can you trade?

Truzor works for deals where one side pays in crypto and the other delivers something off-chain. It is built mainly for digital deals between strangers, for example:

  • Promo and ad slots, shoutouts and sponsored posts
  • Source code, bots and scripts
  • Design commissions (logos, banners, emotes, UI)
  • Setup and development services
  • Other digital work delivered online

Truzor doesn't see or check what is being traded. Don't use it for anything illegal or anything that breaks Discord's rules. See the Terms.

Safety guides

Practical guides for dealing with strangers online. They are useful even if you never use Truzor:

Quick start

  1. Join the server. Both buyer and seller need to be in the Truzor Discord — discord.gg/u3TZ5SXncm.
  2. Open the deal panel. Go to the #start-deal channel and pick a coin (BTC or LTC) from the dropdown. The bot creates a private ticket named auto-NN, visible only to you and staff.
  3. Add your counterparty. The bot asks "Who are you dealing with?" — mention them or paste their Discord user ID. The bot adds them to the ticket.
  4. Pick roles. One side selects Sending, the other Receiving. Both must confirm.
  5. Enter the amount in USD. The Sender types the deal amount in dollars (e.g. 100 for $100). The bot fetches the live USD-to-crypto rate from CoinGecko and locks it on the invoice.
  6. Deposit. The bot shows a fresh deposit address with QR code, the exact crypto amount, and the locked exchange rate. Send from any wallet.
  7. Release. Once confirmed on-chain, the Sender clicks Release. The Receiver supplies their payout address. The bot broadcasts and posts the transaction hash.

Deal flow

End-to-end lifecycle of a Truzor deal. Every state is posted in the ticket as an embed, so both parties always see exactly what's expected next.

Initiation and setup

  1. Open the panel. Either user goes to the #start-deal channel and selects a coin from the dropdown.
  2. Ticket created. The bot creates a private ticket channel named auto-NN, visible only to that user and staff.
  3. Add counterparty. The bot prompts "Who are you dealing with?" — paste or mention the user ID of the other party. The bot adds them to the ticket.
  4. Role selection. Both users click either Sending or Receiving.
  5. Role confirmation. Both must confirm before the deal moves forward.

Invoice generation

  1. Sender enters the USD amount. Type a dollar value (e.g. 100 for $100), then confirm.
  2. Live rate locked. The bot fetches the USD-to-crypto rate from CoinGecko and locks it on the invoice — even if the market moves, your deal price doesn't change.
  3. Fresh deposit address. Generated through BlockCypher. Unique per deal, never reused across tickets.
  4. Invoice shown. QR code, the exact crypto amount to send, and the locked exchange rate.
  5. Webhooks armed. The bot registers BlockCypher unconfirmed-tx and confirmed-tx webhooks to detect the incoming payment.

Payment detection and release

  1. Sender deposits. Send the exact crypto amount from any wallet.
  2. Transaction Detected. As soon as the transaction hits the mempool, the bot posts an embed with the tx hash and an explorer link.
  3. Underpayment protection. If the received amount is less than 99% of expected (more than 1% short), the bot warns the Sender to top up before continuing.
  4. Payment Received. After 1 confirmation, the bot posts a "Payment Received" embed and unlocks the Release and Cancel buttons.
  5. Receiver delivers. Off-platform — Truzor doesn't see or verify the goods/service. That's between the two of you.
  6. Sender clicks Release. A confirmation prompt appears — two-step to prevent misclicks.
  7. Receiver provides payout address. Pasted into the ticket, then confirmed.

Settlement

Once both parties confirm, the bot creates a single signed transaction with up to two outputs:

  • Receiver gets: (deposit × 0.985) − platform fee — the 0.985 multiplier is the 1.5% miner-fee buffer reserved for blockchain network costs.
  • Owner gets: the platform fee, sent to OWNER_BTC_ADDRESS or OWNER_LTC_ADDRESS. Deals under $10 have no platform fee, so their payout has only the receiver's output.

After broadcasting:

  1. Payment Released. The bot posts the final embed with the broadcast tx hash.
  2. Customer role. Both users automatically receive the Customer role for future server access.
  3. Stats updated. Both users' deal count and total USD volume are incremented.
  4. Cleanup. BlockCypher webhooks are deleted.
  5. Ticket auto-closes 5 minutes after settlement.
  6. Posted to the completed-deals channel. When the ticket closes, an anonymized summary is posted in the server: the coin amount, the USD value and a link to the deposit transaction, with both users shown as Anonymous.
i
How long does a deal take? There is no fixed time. Most of the waiting is the 1 blockchain confirmation needed before Release unlocks, and that depends on the coin (Litecoin produces blocks more often than Bitcoin), on how busy the network is, and on the fee your wallet paid. The rest depends on how quickly the two of you deliver and press the buttons.

Supported coins

Two coins are live today: Bitcoin and Litecoin. Ethereum, Solana, USDT and USDC are planned but not live yet.

Live

Bitcoin
Bitcoin
BTC · live
Litecoin
Litecoin
LTC · live

Coming soon

Ethereum
Ethereum
ETH
Solana
Solana
SOL
Tether
Tether
USDT · not live yet
USD Coin
USD Coin
USDC · not live yet

Confirmation requirements

  • Bitcoin (BTC): 1 confirmation before Release unlocks. The Bitcoin network aims for one new block about every 10 minutes on average, but a single block can take much longer, and a transaction with a low fee can wait several blocks.
  • Litecoin (LTC): 1 confirmation before Release unlocks. The Litecoin network aims for one new block about every 2.5 minutes on average, so it is usually quicker than Bitcoin. It still depends on the network and on the fee your wallet paid.

Truzor can't speed up a confirmation. Once your transaction is in a block, the bot unlocks Release.

Pricing

Deal amounts are entered in USD, not in crypto. The bot fetches the live USD-to-crypto rate from CoinGecko the moment the invoice is generated and locks it for the duration of the deal — your price never moves with the market once you've confirmed.

Minimum deal size

Each coin has a minimum equivalent of $0.20. This protects you from accidentally creating dust deals where the on-chain fee would consume the entire amount.

Fees

Truzor's pricing is simple and transparent — a small platform fee that scales with deal size, plus a network buffer for miner costs.

Platform fees

Deal value Platform fee
$250 and above1% of the deal value
$50 to $250$2 flat
$10 to $50$0.50 flat
Under $10FREE

Miner-fee buffer

On every deal, the bot also reserves a 1.5% miner-fee buffer for blockchain network costs. This is separate from the platform fee: it is there to cover the network fee that miners charge for the payout transaction. Whatever the network fee doesn't use goes back to the deal's own deposit address as change, and you can see it on the payout transaction in a block explorer.

Worked example

A $1,000 BTC deal:

  • Platform fee: $1,000 × 1% = $10 → goes to Truzor
  • Miner-fee buffer: $1,000 × 1.5% = $15 → held back to cover the network fee
  • Receiver gets: $1,000 − $10 − $15 = $975 equivalent in BTC
i
The buffer is not a Truzor fee. It is set aside on every deal to cover the blockchain network fee for the payout transaction.

Cancellations and refunds

If a deal is dropped before deposit, no fees apply — nothing happened on-chain. If a deposit was made and the deal is later refunded via /escrow-refund, the 1.5% miner-fee buffer is deducted from the refund. There is no automatic refund: a person reviews the deal and sends the refund by hand.

Slash commands

Every action lives behind a slash command. Most of the deal flow is button-driven inside the ticket — these commands cover stats, affiliate tools, and admin controls.

Command Description
/stats [user] Total deals and total USD volume for a user (defaults to yourself if no user is passed).
/leaderboard Top 15 users ranked by total USD volume traded.
/affiliate Your affiliate dashboard — personal invite link, current tier, balance per coin, and lifetime earnings.
/payout Request a withdrawal of your accumulated affiliate balance to a BTC or LTC wallet address.
/crypto-paneladmin Posts the coin selection panel in the start-deal channel. Used after a cleanup or initial setup.
/escrow-export <channel_id>admin Exports the WIF (private key) for a ticket's deposit address. Sent to the admin via DM as a last-resort recovery tool.
/escrow-refund <channel_id> <address>admin Best-effort refund from a ticket's deposit (minus the 1.5% miner-fee buffer) back to a specified wallet. Used when a deal stalls after deposit.
!
Admin commands are restricted to roles with the Manage Server permission and won't appear in your slash menu unless you have it.

Affiliate program

Auto-tracked through Discord invite links — no codes, no setup. When someone joins your server through your personal invite link, they become your invitee permanently.

How tracking works

  1. On startup, the bot caches every server invite with its current use count.
  2. When a new member joins, the bot fetches the invites again and finds which one's use count went up by 1.
  3. That invite's creator is recorded as the new member's permanent inviter.
  4. Server-discovery joins, vanity-URL joins, and joins through deleted invites have no inviter, so nobody gets credit for them.

To get your link, run /affiliate in any channel.

Commission tier system

Tiers are based on your number of active invitees — meaning unique invitees who have completed at least 1 deal. Just inviting people isn't enough; the tier moves up only as your invitees actually trade.

Tier Active invitees Commission rate
Starter 0 or more 10% of platform fee
Pro 50 or more 20% of platform fee
Elite 100 or more 25% of platform fee

Commission is calculated as tier rate × platform fee and credited the moment the deal completes.

Both parties matter

If both the Sender and the Receiver have inviters — and they're different inviters (self-referrals are blocked) — both inviters get credited for the same deal. In rare double-inviter scenarios, Truzor can pay up to 50% of a fee in combined commissions (Elite + Elite).

Worked example

Pro tier (20%) on a $500 deal (1% platform fee = $5):

  • Your commission: $5 × 20% = $1.00 credited to your balance
  • If the other side also has a Pro inviter, that inviter also gets $1.00 — Truzor pays out $2 total in commissions on a $5 fee

What blocks commission

  • Self-referral: blocked. You can't list yourself as your own inviter.
  • Inviter swap: blocked. The first-tracked inviter is permanent — no re-attribution if someone joined before you sent your link.
  • Vanity URLs / Server Discovery / deleted invites: joins through these have no inviter and don't credit anyone.

Withdrawals

  1. Run /payout in any channel.
  2. Paste a wallet address. BTC or LTC.
  3. Request posted. The balance for that coin is set aside right away, so it can't be requested twice. Your request lands in a private admin channel for review.
  4. Admin sends crypto manually from the owner wallet to your address.
  5. Marked as Paid. Staff marks the request as paid. The aim is to send payouts within 24 hours of a request. Payouts are sent by hand, so treat that as a target, not a guarantee. If a request is rejected, the amount goes back to your balance.
!
Double-check your payout address. Crypto transactions are irreversible. Make sure it's the correct network (BTC address for a BTC payout, LTC for LTC).

Security model

Truzor's job is simple: hold the funds, only release when the Sender says so. Here's how that's enforced.

Per-deal addresses

Every ticket gets a brand-new deposit address, generated through the BlockCypher API. Addresses are never reused across deals — keeps deal histories cleanly separated and prevents cross-contamination.

Signing model

Each deal's deposit address and its private key are created through the BlockCypher API when the invoice is generated. The bot stores that key (in WIF, Wallet Import Format) so it can pay out or refund that deal later. BlockCypher is a third-party blockchain service that Truzor relies on for addresses, payment notifications and broadcasting transactions.

For a payout that includes a platform fee, BlockCypher builds the unsigned transaction and the bot signs it itself with the deal key (secp256k1); only the signatures are sent back. For a payout with no platform fee (for example a deal under $10), the bot first tries BlockCypher's micro-transaction service, which signs on BlockCypher's side using the deal key, and signs locally if that doesn't work.

As a last-resort recovery tool, an admin can export a deal's key with /escrow-export (see Slash commands).

Funds custody

Escrow keys are held by Truzor while a deal is in flight. In plain words: this is custodial escrow, and during a deal you are trusting Truzor with the funds. That's why we suggest starting with small amounts.

The payout transaction is signed and broadcast only after both parties hit final confirmation. The deal cannot be released without an explicit Release action from the Sender — no unilateral move from the Receiver, and no automatic payout or refund timeout.

Button permissions

Inside a ticket, only the right party can click each button:

  • Release / Cancel / Confirm-Release / Back-Release: only the Sender
  • Payout Confirm / Payout Back: only the Receiver
  • Close Ticket: only the ticket opener or staff

Anyone else clicking gets an ephemeral "permission denied" message that only they can see.

Anti-abuse mechanisms

  • Underpayment protection: 1% tolerance — if the deposit is more than 1% short, the Sender is warned to top up before continuing.
  • Inviter swap blocked: the first-tracked inviter is permanent and can never be reassigned.
  • Self-referral blocked: a user cannot list themselves as their own inviter.

Cancellation

Before a deposit, a deal can be dropped at no cost: nothing has happened on-chain. Until the bot creates a deposit address, the person who opened the ticket (or staff) can close it with the Close button; once a deposit address exists, only staff can close the ticket, so ask in a support ticket. If a deposit was already made and the deal stalls, staff can use /escrow-refund to return funds (minus the 1.5% miner-fee buffer) to a wallet you control. There is no self-service refund button: the Cancel button inside the ticket does not send anything back on its own.

Ticket inactivity

While a deal is still being set up (roles and amount, before the bot creates a deposit address), the bot posts a reminder once the ticket has been open for 6 hours, even if people are still talking in it. The person who opened the ticket can press Keep Open (the 6-hour count starts again) or Close. If nobody responds within the next 6 hours, the bot deletes the ticket.

Once the bot has created a deposit address, none of this applies. The ticket gets no inactivity reminder, is never deleted automatically, and only staff can close it. The deal stays open until the sender presses Release or support handles a refund, so a deal that takes days to deliver is fine.

What's logged

  • Every state transition is posted as an embed in the ticket — visible to both parties for the lifetime of the deal.
  • Every completed deal is posted (anonymized) in the completed-deals channel.
  • Every commission credit is logged with deal ID, coin, and amount.
  • On-chain activity is verifiable via BlockCypher — every Transaction Detected, Payment Received, and Payment Released embed includes the transaction hash and an explorer link.

Check it yourself

Don't take this page's word for it. Two public pages let you check Truzor without opening a deal:

  • Verify Truzor: how long the project has existed, who holds the money and when, and how to spot a fake Truzor.
  • Public deal ledger: completed deals with links to their deposit and payout transactions on a block explorer. Truzor launched in May 2026, so the ledger starts at zero.

For a general checklist you can use on any middleman, read How to check a crypto middleman.

!
Truzor will never DM you first.

If you receive a private message claiming to be from staff, asking for a payout address, seed phrase, or for you to send funds outside the ticket — it's a scam. All legitimate communication happens inside the ticket channel.

FAQ

There is no fixed time. Most of the wait is the 1 blockchain confirmation before Release unlocks. The Litecoin network aims for a block about every 2.5 minutes on average and Bitcoin about every 10 minutes, but both can take longer when the network is busy or the fee is low. The rest depends on how quickly the two of you deliver and press the buttons.
Usually it means your wallet sent the deposit with a fee that's low for current network conditions. It often confirms once the network gets less busy. If it's been hours, many wallets let you raise the fee with Replace-By-Fee (RBF). If you do that, post the new transaction hash in your deal ticket so staff can check the deal picked it up. Your deal ticket won't be closed or deleted while you wait.
Only with staff help, because crypto transactions can't be undone and there is no self-service refund button (pressing Cancel in the ticket doesn't send anything back). Open a support ticket. A person reviews the deal and can use /escrow-refund to return your deposit, minus the 1.5% miner-fee buffer.
The bot never pays out unless the sender clicks Release. If the receiver vanishes, the funds stay in the deal's deposit address and the receiver can't move them: open a support ticket and a person will review the deal for a refund. If the sender disappears after deposit, the receiver can't take the funds either; they stay in the deposit address until the sender returns. Either way, open a support ticket early. There is no automatic payout or refund timeout.
Each ticket handles one coin. If you're trading BTC for LTC, you'd open two tickets — one in each direction. Swapping two coins inside a single ticket is not supported.
Below that level, the network fee for the payout transaction would consume most or all of the deal. The minimum protects both parties from accidentally creating dust deals where nothing meaningful arrives at the destination.
Most Discord deals are priced in dollars (e.g. "$50 for a promo slot"), so Truzor takes the USD value, fetches the live rate from CoinGecko, and locks the equivalent crypto amount on the invoice. This protects both sides from market swings between agreement and deposit — the price you confirm is the price you pay.
It's a reserve set aside on every deal to cover the blockchain network fee that miners charge for confirming the payout transaction. It's separate from the platform fee: it exists to cover network costs, not to pay Truzor.
No. Inviters are locked on first join. There are no retroactive claims and no re-attribution, even if you leave and rejoin. This keeps the program fair and free of credit-stealing disputes.
It depends on whether the bot has created a deposit address yet. Before that (while roles and the amount are being set), the bot posts a reminder 6 hours after the ticket was opened (sending messages in the ticket doesn't reset this); the person who opened it can press Keep Open or Close, and if nobody responds within the next 6 hours the ticket is deleted. Once a deposit address exists, there are no reminders and no automatic deletion: the deal stays open as long as it needs, and only staff can close it.
Not much of one yet, and we'd rather say so. Truzor launched in May 2026. The public deal ledger lists completed deals with links to both on-chain transactions, starting from zero. Until you've seen deals there, start with a small deal. Deals under $10 have no platform fee (the 1.5% miner-fee buffer still applies).

Support

Stuck on a deal, found a bug, or have a feature idea?

How to get help

  • Open a support ticket in Discord. The bot opens the ticket; a real person reads and answers it. Replies aren't instant at every hour of the day, so open a ticket early rather than at the last minute.
  • Pick the right category. The support panel has General Question, Disputes, Payment Issues and Bug Report. For a problem with a deal, include the deal ticket name (for example auto-12) and any transaction hash.
  • Stay inside your deal ticket. If your question is about an in-flight deal, post it in the ticket itself so staff has the full context.
  • Feature ideas: send them through a General Question ticket.
i
Truzor staff never DMs first and never asks for seed phrases, private keys, or for you to send funds outside the bot. Anyone who does is impersonating staff — report them.

Join the Discord →