This Python bot acts as a mediator between product sellers and buyers on Telegram. It securely holds cryptocurrency in a wallet (stored in a database) and releases payment to the seller upon mutual approval from both parties.
Try the bot at: Here
-
Escrow Service: Users can use the
/escrowcommand, and the bot will generate a wallet to receive funds for the transaction. The funds are held until both parties confirm they are satisfied with the exchange. -
Shop Setup: Sellers can set up shop items with either automatic or manual key/product delivery systems. Funds are automatically released to the seller upon successful delivery.
-
Wallet Security: Crypto wallets are generated and stored in a MySQL database in an encrypted state. No external services are required to manage wallets.
-
Supported Networks:
- Solana
- Litecoin
- Dogecoin (disabled currently)
- BSC (BEP-20)
-
Planned Networks:
- Tron (TRC-20)
- TON
-
Excluded Networks:
- Bitcoin (due to high fees and slow transaction times)
I’m open to discussions on which networks to add and how to make this bot better and easier to use.
Needs Python version 3.9.8 to be installed
-
Clone the repository:
git clone https://github.com/glazybyte/Crypto-Escrow-Telegram-Bot.git
-
Navigate to the project directory:
cd Crypto-Escrow-Telegram-Bot -
Install dependencies:
pip install -r requirements.txt
-
Install a extra library
pip install solathon==1.0.7
-
edit
example.env:Note: PRIVATE_KEY, SOLANA_FEE_PAYER_SECRET and BSC_FEE_PAYER_SECRET will be generated upon the first run. Be sure to save these values securely.
BOT_TOKEN = '73777777:jFc4Tvs0bM' # Get this from Bot Father BLOCK_CYPHER_API_TOKEN = '' # Free one works just fine | Will be used to push DOGE and LTC transactions PRIVATE_KEY = 'not_set' SOLANA_FEE_PAYER_SECRET = 'not_set' #used to pay tx fee for USDT, receives 2% of amount in turn
Add Mysql Database Credentials
#MYSQL credential below ENABLEDB = True HOST = "192.168.29.69" PORT = 33042 USER = "root" PASSWORD = "cnOlZnSgv" DATABASE = "cryptoescrow"
-
Mysql Setup
Use phpmyadmin or mysql terminal to run the commands in
db.sqlto create tables -
edit
admin.configAdd information about bot like: owner id, fee wallet details in this file
-
Start the bot
Rename
example.envto.envand you are good to go for starting the botpython escrowBot.py
Feel free to support development:
-
BTC: bc1q2zlqujfvrauvge8t33wtm6xp4akuw5u0l9jn34
-
BSC: 0xFB96DA72ecF2382b562219545CC8329823e119fA
-
SOL: 54QdnQKAY1QbPZAfAn3YCnYLNuJVTgyArLvPGUB8X7Ag