Skip to content

Polygant/OpenCEX

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenCEX Logo

OpenCEX is a free and open source cryptocurrency exchange platform.
Developed by Polygant.

OpenCEX documentation | Telegram chat

Caution

This repository has not been maintained since 2024.
The code is provided as-is.

Main features.

  • Custodial wallet supporting BTC, ETH, BNB, TRX, USDT (ERC-20, BEP-20, TRC-20). Deposit and withdrawal.
  • Order matching engine. Trading pairs BTC-USDT, ETH-USDT, BNB-USDT, TRX-USDT.
  • Professional exchange interface for placing orders.
  • Simplified interface for quick swap.
  • KYT transaction verification (requires Scorechain keys).
  • KYC verification of users (requires Sumsub keys).
  • SMS 2fa for users (requires Twilio keys).

System requirements.

Minimum Recommended
CPU: 4 cores
RAM: 16 GB
Disks: 40 GB
OS: Ubuntu 22.04

https://www.hetzner.com/cloud
CPU: 8 cores
RAM: 64 Gb
Disks: 2x1Tb NVMe SSD
OS: Ubuntu 22.04

https://www.hetzner.com/dedicated-rootserver/ax51-nvme

The software used.

DockerlatestOS-level virtualization
NGINX1.22.0Web server
Caddy2.6.2Router
Postgres14.5RDBMS
Redis server7.0.4RDBMS
RabbitMQ3.10.7Message-broker software
Python3.8Programming language
Django3.2.7Python framework
VUE.JS3.2.25JS framework
NUXT.JS2.15.7JS framework
Bitcoin CorelatestBitcoin node

Before installing:

  • Watch the installation video https://youtu.be/c-WnQkvBwf0
  • Order a virtual or physical server, not below the minimum requirements. You will need full access to this server (root). Shared hosting will not work.
  • Bind the IPv4 address you received when purchasing the server to your domain. If you don't have a domain yet, you can use https://nip.io/ or https://sslip.io/.
  • Sign up for a Google account and get reCAPTCHA V2 keys (invisible). https://www.google.com/recaptcha/
  • Get the SMTP server credentials for sending emails (any will do, i.e. https://www.mailgun.com/).
  • Register an Infura account (https://infura.io/) and create an API key + secret.
  • Register an Etherscan account (https://etherscan.io/) and create an API key.
  • You will need BTC, ETH addresses and BNB, TRX addresses(optional) to collect cryptocurrency deposits (cold addresses). If you don't have it yet, you can use any multi-currency wallet like Trust Wallet and generate BTC, ETH, BNB, TRX addresses.
  • OPTIONAL. For BNB и BEP-20 support you will need Bscscan credentials (https://bscscan.com/)
  • OPTIONAL. For TRX and TRC-20 support you will need Trondrid credentials (https://www.trongrid.io/)
  • OPTIONAL. For SMS verification you will need Twilio credentials (https://twilio.com)
  • OPTIONAL. For KYT you need Scorechain credentials (https://www.scorechain.com/)
  • OPTIONAL. For KYC you will need Sumsub credentials (https://sumsub.com/)

Installation

You need to SSH into your server as root and run the following command:

mkdir /app ; 
cd /app/ || exit ; 
git clone https://github.com/Polygant/OpenCEX.git ./deploy ;
cd deploy ; 
chmod +x opencex.sh ;
./opencex.sh 2>&1 | tee /tmp/install.txt

Installation time ~ 5 minutes.

If something goes wrong you can clean the installation and try again

cd /app/opencex && docker compose down ; 
rm -rf /app ;
docker system prune -a

🥳 Congratulations, the exchange has been successfully installed!
You can open it by your domain name.

After installation, you need to download the file /app/openex/backend/save_to_self_and_delete.txt and delete it from the server.

Mind that BTC node will take up to 30 hours to fully sync. BTC transactions sent to user addresses in this period will be collected and credited only after a full sync.

Documentation

Can I hire you guys?

You can request a consultation or order web and mobile development services by Polygant, just visit our site. 😎

Say hi: [email protected] . We will be happy to work with you!

License

Apache License, Version 2.0