Contents
- General Information
- Creating a Bot in Telegram
- Configuring the Exchanger
- Environment Variables File
- Server Installation
- Updating
- Running on Local Server
- WAF Configuration
- Setting up AnyMoney
- Setting up Binance Crypto
- Setting up Coinpayments
- Setting up Crypto Cash
- Setting up Exmo Code
- Setting up Exmo Crypto
- Setting up 4Bill
- Setting up Payeer
- Setting up PayLink
- Setting up PayPlay
- Setting up Volet
- Setting up WestWallet
- Setting up WhiteBIT Code
- Setting up WhiteBIT Crypto
- Setting up WhiteBIT Fiat
The Automatic Mode is built on the Laravel framework. Detailed information on installation and configuration can be found on the official website.
To use the Automatic Mode, simply select the required merchant for outgoing payments in the exchange direction settings. To better understand the operating principle and configuration, we recommend testing the Automatic Mode without funds on the balance.
1) Register a new bot using "@botFather" and copy its token (secret key).
2) Using "@userinfobot", find out and copy your "ID" (user identifier).
Dashboard API
1) Generate a secret key in the "Application Settings" - "Dashboard API Settings" section.
2) Fill in the list of trusted IP addresses.
Webhooks
1) Generate a secret key in the "Application Settings" - "Webhook Settings" section.
2) Enable the following events: "Change Order Status".
3) Fill the host input.
https://YOUR.DOMAIN/api/webhooks/exchanger
Before starting installation, create a text file and fill in the environment variables with your data. You also need to add the environment variables of the purchased merchants to the file.
Example configuration:
APP_URL=https://YOUR.DOMAIN APP_API_PREFIX= APP_TIMEZONE=Europe/Kyiv APP_LOCALE=en APP_KEY= QUEUE_CONNECTION=sync DB_DATABASE=exchanger_cms_payouts DB_USERNAME=user DB_PASSWORD=12345 TELEGRAM_BOT_TOKEN=1234567890:AAHj3nG9xkPqT2v4LmXy7Zc8WqR5bKdJt9U TELEGRAM_ADMIN_CHAT_ID=360634322 EXCHANGER_URL=https://demo.exchanger-cms.com EXCHANGER_DASHBOARD_API_SECRET_KEY=Fa8aexee0ohK5ohziu2IePhal6shei9z EXCHANGER_WEBHOOK_SECRET_KEY=iaGh4ja5jeiHu0YohSho9ju8vahch7ei TRANSACTION_CONFIRMATION=true TRANSACTION_UNSAFE_AMOUNT=0 TRANSACTION_UNSAFE_IN_GATEWAYS=MANUALLY TRANSACTION_UNSAFE_OUT_GATEWAYS= TRANSACTION_UNSAFE_IN_CURRENCIES= TRANSACTION_UNSAFE_OUT_CURRENCIES= TRANSACTION_MANUAL_COMPLETION_GATEWAYS= TRANSACTION_REFERRAL_REWARD=MONOBUAH:0.3,ETH:0.01
| Environment Variable | Description |
|---|---|
| APP_URL | Application URL |
| APP_API_PREFIX | Prefix for API endpoints (optional) |
| APP_TIMEZONE | Timezone |
| APP_LOCALE | Default language (ru, uk, en) |
| DB_DATABASE | Database name |
| DB_USERNAME | Database user name |
| DB_PASSWORD | Database user password |
| TELEGRAM_BOT_TOKEN | Telegram Bot token |
| TELEGRAM_ADMIN_CHAT_ID | Telegram Admin ID |
| EXCHANGER_URL | Exchanger URL |
| EXCHANGER_DASHBOARD_API_SECRET_KEY | Exchanger Dashboard API secret key |
| EXCHANGER_WEBHOOK_SECRET_KEY | Exchanger Webhook secret key |
| TRANSACTION_CONFIRMATION | Manual confirmation of all payouts (true / false) |
| TRANSACTION_UNSAFE_AMOUNT | Unsafe payout amount in USD equivalent |
| TRANSACTION_UNSAFE_IN_GATEWAYS | Unsafe merchants for incoming payments (comma-separated) |
| TRANSACTION_UNSAFE_OUT_GATEWAYS | Unsafe merchants for outgoing payments (comma-separated) |
| TRANSACTION_UNSAFE_IN_CURRENCIES | Unsafe send currencies (comma-separated) |
| TRANSACTION_UNSAFE_OUT_CURRENCIES | Unsafe receive currencies (comma-separated) |
| TRANSACTION_MANUAL_COMPLETION_GATEWAYS | Manual merchants for outgoing payments (comma-separated) |
| TRANSACTION_REFERRAL_REWARD | Referral reward for received currencies (%) |
Use the environment variables below for more advanced configuration.
Default values:
HTTP_CONNECT_TIMEOUT=3 HTTP_TIMEOUT=9 TELEGRAM_MAX_CONNECTIONS=1 TELEGRAM_SENDING_DELAY=500000 TELEGRAM_MAX_UPLOAD_FILE_SIZE=500 EXCHANGER_USER_AGENT=EXCMSAM EXCHANGER_CACHE_TTL=60 EXCHANGER_CURRENCY_SORT=
| Environment Variable | Description |
|---|---|
| HTTP_CONNECT_TIMEOUT | HTTP connection timeout (seconds) |
| HTTP_TIMEOUT | HTTP request timeout (seconds) |
| TELEGRAM_MAX_CONNECTIONS | Maximum simultaneous connections with the Telegram Bot |
| TELEGRAM_SENDING_DELAY | Delay when sending messages to users (microseconds) |
| TELEGRAM_MAX_UPLOAD_FILE_SIZE | User upload file size limit (kilobytes) |
| EXCHANGER_USER_AGENT | "User-Agent" header when sending requests to the exchanger API |
1) Purchase the Automatic Mode.
2) Download the archive with files and extract it into the root directory of your site.
3) Create a ".env" file (environment variables file) and fill it with the prepared data.
4) Install dependencies.
composer install --no-dev --optimize-autoloader --prefer-dist --no-interaction
5) Generate the application key.
php artisan key:generate
6) Run the database migration.
php artisan migrate
7) Set up the Telegram webhook.
php artisan telegram:setup-webhook
8) Optimize the application.
php artisan optimize -e views
To install updates, replace the files, reinstall dependencies, and migrate the database.
Use the built-in command to simulate Telegram webhooks.
php artisan telegram:simulate-webhook
Use a prefix for API endpoints (APP_API_PREFIX) to hide the standard URL and restrict access to the site.
Example URL without prefix:
https://YOUR.DOMAIN/api/webhooks/
Example URL with prefix:
https://YOUR.DOMAIN/api/gaok5gee2ooMaegheepholiezeeC0pau/webhooks/
Example WAF rule for Cloudflare:
(http.host eq "YOUR.DOMAIN" and not starts_with(http.request.uri.path, "/api/gaok5gee2ooMaegheepholiezeeC0pau/webhooks/"))
1) Go to the "Merchant settings" section and copy the "merchant id".
2) Go to the "Security" section and copy the "secret key API", and also specify the IP address of your server in the "server ip address" field.
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_ANYMONEY_MERCHANT_ID=1234567890 MODULE_ANYMONEY_SECRET_KEY=vaDeow6oosahsho0eefe7GaigaiZai1l MODULE_ANYMONEY_BASE_CURRENCY= MODULE_ANYMONEY_PROVIDER_BTC=BTC MODULE_ANYMONEY_PROVIDER_BCH=BCH MODULE_ANYMONEY_PROVIDER_LTC=LTC MODULE_ANYMONEY_PROVIDER_USDT=USDTERC20 MODULE_ANYMONEY_PROVIDER_ETH=ETH MODULE_ANYMONEY_PROVIDER_VOLET=ADVCUSD MODULE_ANYMONEY_PROVIDER_NIXMONEY=NIXUSD MODULE_ANYMONEY_PROVIDER_PAYEER=PRUSD MODULE_ANYMONEY_PROVIDER_WEBMONEY=WMZ MODULE_ANYMONEY_PROVIDER_MOBILE=MWUAH MODULE_ANYMONEY_PROVIDER_PRIVAT24=P24UAH MODULE_ANYMONEY_PROVIDER_MONOBANK=MONOBUAH MODULE_ANYMONEY_PROVIDER_CARD=CARDUAH MODULE_ANYMONEY_PROVIDER_CARD_P2P=
| Environment Variable | Description |
|---|---|
| MODULE_ANYMONEY_MERCHANT_ID | Merchant ID |
| MODULE_ANYMONEY_SECRET_KEY | Secret key |
| MODULE_ANYMONEY_BASE_CURRENCY | Base currency (optional) |
| MODULE_ANYMONEY_PROVIDER_BTC | Bitcoin provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_BCH | Bitcoin Cash provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_LTC | Litecoin provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_USDT | Tether USDT provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_ETH | Ethereum provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_VOLET | Volet provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_NIXMONEY | NixMoney provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_PAYEER | Payeer provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_WEBMONEY | WebMoney provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_MOBILE | Mobile provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_PRIVAT24 | Privat24 provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_MONOBANK | Monobank provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_CARD | Visa/MasterCard provider currencies (comma-separated) |
| MODULE_ANYMONEY_PROVIDER_CARD_P2P | Visa/MasterCard P2P provider currencies (comma-separated) |
1) Go to the "Account" - "API Management" section and click the "Create API" button.
2) Select the key type "System generated".
3) Create and specify the key name.
4) Assign key permissions only "Enable Reading", "Enable Withdrawals", and "Enable Spot & Margin Trading" if you plan to use the automatic purchase function.
5) Specify the IP address of your server in the "IP access restrictions" section.
6) Copy the "API Key" (public API key) and the "Secret key" (private API key).
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_BINANCECRYPTO_PUBLIC_KEY=outhoa6teange4fie1gee9aeKuphooth MODULE_BINANCECRYPTO_PRIVATE_KEY=ain8angaejeev2iequusuuvohkeeF6ie MODULE_BINANCECRYPTO_TRADE_ASSETS=BTC,ETH MODULE_BINANCECRYPTO_TRADE_CURRENCY=USDT MODULE_BINANCECRYPTO_TRADE_FEE=0.1
| Environment Variable | Description |
|---|---|
| MODULE_BINANCECRYPTO_PUBLIC_KEY | Public API key |
| MODULE_BINANCECRYPTO_PRIVATE_KEY | Private API key |
| MODULE_BINANCECRYPTO_TRADE_ASSETS | Currencies allowed for automatic purchase (comma-separated) |
| MODULE_BINANCECRYPTO_TRADE_CURRENCY | Base currency for trading |
| MODULE_BINANCECRYPTO_TRADE_FEE | Trading fee for your account (%) |
1) Go to the "Account" - "API Keys" section, click the "Generate new key" button, and copy the public and private API keys.
2) Click the "Edit permission" button for the newly created API key and activate the "create_withdrawal" method.
3) Go to the "API Key Settings" section and specify the IP address of your server in the "Restrict to IP/IP Range" field.
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_COINPAYMENTS_PUBLIC_KEY=ishie0Eicighooquei1Aegoo4jie8iSh MODULE_COINPAYMENTS_PRIVATE_KEY=Yeel4liash9Soonie5aet8eiNeoy4Hoh MODULE_COINPAYMENTS_ADD_TX_FEE=false MODULE_COINPAYMENTS_AUTO_CONFIRM=true
| Environment Variable | Description |
|---|---|
| MODULE_COINPAYMENTS_PUBLIC_KEY | Public API key |
| MODULE_COINPAYMENTS_PRIVATE_KEY | Private API key |
| MODULE_COINPAYMENTS_ADD_TX_FEE | Include fee in the payout amount (true / false) |
| MODULE_COINPAYMENTS_AUTO_CONFIRM | Payout without confirmation (true / false) |
1) Go to the "Overview" section and in the "Merchant Settings" block click the "To Settings" button.
2) In the window that opens, click the "Generate API Key" button and select the key type "LEGACY".
3) Copy the "Public Key" (public API key) and the "Secret key" (private API key).
4) Set "Endpoint access" to "Withdrawal", fill in the list of trusted IP addresses, and click the "Create" button.
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_CRYPTOCASH_PUBLIC_KEY=nah6meegi1iega6Kaow5iel3bohpeiBa MODULE_CRYPTOCASH_PRIVATE_KEY=yu4eeWe0ev9ACaishira7chookas3Iew
| Environment Variable | Description |
|---|---|
| MODULE_CRYPTOCASH_PUBLIC_KEY | Public API key |
| MODULE_CRYPTOCASH_PRIVATE_KEY | Private API key |
1) Go to the "Settings" - "API" section and click the "Generate API key" button.
2) Create and specify the key name.
3) Set the key permissions: "Funds withdrawal".
4) Click the "Limitations" button for the newly created API key and specify the IP address of your server.
5) Copy the "Public key" (public API key) and "Secret key" (private API key).
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_EXMOCODE_PUBLIC_KEY=uok9aigha4go4fee3oht3nooheNoht4p MODULE_EXMOCODE_PRIVATE_KEY=poh9noochooLa9shu0Em2eeN0eeP7Eeh
| Environment Variable | Description |
|---|---|
| MODULE_EXMOCODE_PUBLIC_KEY | Public API key |
| MODULE_EXMOCODE_PRIVATE_KEY | Private API key |
1) Go to the "Settings" - "API" section and click the "Generate API key" button.
2) Create and specify the key name.
3) Set the key permissions: "Read only", "Funds withdrawal", and "Trade" if you plan to use the automatic purchase function.
4) Click the "Limitations" button for the newly created API key and specify the IP address of your server.
5) Copy the "Public key" (public API key) and "Secret key" (private API key).
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_EXMOCRYPTO_PUBLIC_KEY=eeThaepeiph7AhpheiyahSeiwoh3aifo MODULE_EXMOCRYPTO_PRIVATE_KEY=Aeh5Zoogooto0NoshiToh7aichegh2ei MODULE_EXMOCRYPTO_TRADE_ASSETS=BTC,ETH MODULE_EXMOCRYPTO_TRADE_CURRENCY=USDT
| Environment Variable | Description |
|---|---|
| MODULE_EXMOCRYPTO_PUBLIC_KEY | Public API key |
| MODULE_EXMOCRYPTO_PRIVATE_KEY | Private API key |
| MODULE_EXMOCRYPTO_TRADE_ASSETS | Currencies allowed for automatic purchase (comma-separated) |
| MODULE_EXMOCRYPTO_TRADE_CURRENCY | Base currency for trading |
Submit a company connection request using the official website.
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_FOURBILL_ACCOUNT_ID=578 MODULE_FOURBILL_SECRET_KEY=aibiechai3phahhieyierox5mie9APai MODULE_FOURBILL_WALLET_ID=363 MODULE_FOURBILL_SERVICE_ID=1 MODULE_FOURBILL_POINT=896
| Environment Variable | Description |
|---|---|
| MODULE_FOURBILL_ACCOUNT_ID | Account ID |
| MODULE_FOURBILL_SECRET_KEY | Secret key |
| MODULE_FOURBILL_WALLET_ID | Wallet ID |
| MODULE_FOURBILL_SERVICE_ID | Service ID |
| MODULE_FOURBILL_POINT | Point |
1) Go to the "FOR WEBSITES (API)" - "Mass Payouts" section and click the "Activation" button.
2) Create and specify a name in the "Name" field.
3) Create and specify a secret key in the "Secret key" field.
4) Specify the IP address of your server in the "IP-address" field.
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_PAYEER_ACCOUNT=P1234567890 MODULE_PAYEER_API_ID=0987654321 MODULE_PAYEER_API_PASSWORD=Ohp1yiogoo5cohT3quoo7olohyai9wah
| Environment Variable | Description |
|---|---|
| MODULE_PAYEER_ACCOUNT | Wallet number |
| MODULE_PAYEER_API_ID | API name |
| MODULE_PAYEER_API_PASSWORD | API password |
Submit a company connection request using the official website.
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_PAYLINK_TOKEN=iegohye1Aech4zieRahjirah7quie7ee
| Environment Variable | Description |
|---|---|
| MODULE_PAYLINK_TOKEN | Token |
1) Go to the "Settings" - "Tokens" section.
2) In the window that opens, click the "Generate" button and copy the "API Token".
3) Go to the "Payment pages" - "General" section and copy the "Slug" (merchant ID).
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_PAYPLAY_ID=agaihoish3oo5Ael MODULE_PAYPLAY_TOKEN=Iciu3shahzuW7iereiTh2olik8Yae1ma MODULE_PAYPLAY_INCLUDE_TX_FEE=false
| Environment Variable | Description |
|---|---|
| MODULE_PAYPLAY_ID | Merchant ID |
| MODULE_PAYPLAY_TOKEN | Token |
| MODULE_PAYPLAY_INCLUDE_TX_FEE | Include fee in the payout amount (true / false) |
1) Go to the "For Developers" section and click the "CREATE NEW API" button.
2) Create and specify the SCI identifier in the "API NAME" field.
3) Create and specify a secret key in the "API PASSWORD" field.
4) Specify the IP address of your server in the "IP ADDRESS" field.
5) Set the key permissions to "Make Transactions" only and click the "SAVE" button.
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_VOLET_EMAIL=user@gmail.com MODULE_VOLET_NAME=myapi MODULE_VOLET_SECRET_KEY=Iebaa2fiuchaes3xe4uunoo3co8Jeij1
| Environment Variable | Description |
|---|---|
| MODULE_VOLET_EMAIL | Account email |
| MODULE_VOLET_NAME | API name |
| MODULE_VOLET_SECRET_KEY | API password |
1) Go to the "Settings" section and click the "Add API key" button.
2) Specify the IP address of your server in the "Allowed IP addresses" field.
3) Copy the "Public key" (public API key) and "Private key" (private API key).
4) Enable the key permission "make transfers".
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_WESTWALLET_PUBLIC_KEY=Thoesa9oox0Nuthae3arohsai2ooy6oa MODULE_WESTWALLET_PRIVATE_KEY=aekohth4fi7Noovoo6eifu0Koom2loo8 MODULE_WESTWALLET_PRIORITY=medium
| Environment Variable | Description |
|---|---|
| MODULE_WESTWALLET_PUBLIC_KEY | Public API key |
| MODULE_WESTWALLET_PRIVATE_KEY | Private API key |
| MODULE_WESTWALLET_PRIORITY | Transaction priority fee (low, medium, high) |
1) Click on your avatar, go to the "API" section, and click the "Generate a new key" button.
2) Copy the "Key" (public API key) and "Secret key" (private API key).
3) Set the key permissions: "Codes" - "/api/v4/main-account/codes".
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_WHITEBITCODE_PUBLIC_KEY=eemeeGoobaiPh4pair5quie8veepan9a MODULE_WHITEBITCODE_PRIVATE_KEY=ooteY5aekawohTee7jeibee8voh8Te8o
| Environment Variable | Description |
|---|---|
| MODULE_WHITEBITCODE_PUBLIC_KEY | Public API key |
| MODULE_WHITEBITCODE_PRIVATE_KEY | Private API key |
1) Click on your avatar, go to the "API" section, and click the "Generate a new key" button.
2) Copy the "Key" (public API key) and "Secret key" (private API key).
3) Set the key permissions: "Withdrawal" - "/api/v4/main-account/withdraw-pay", "Wallet balance and history" - "/api/v4/main-account/history", "Balance transfer" - "/api/v4/main-account/transfer", "/api/v4/main-account/fee", and "Order management" - "/api/v4/order/stock_market" if you plan to use the automatic selling function.
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_WHITEBITCRYPTO_PUBLIC_KEY=xuanohHahchaingoQu1iedai8ju0Poo7 MODULE_WHITEBITCRYPTO_PRIVATE_KEY=AimeQuaecoafeiw3ooroahei2eva4ooJ MODULE_WHITEBITCRYPTO_TRADE_CURRENCY=USDT MODULE_WHITEBITCRYPTO_TRADE_ASSETS=BTC,ETH
| Environment Variable | Description |
|---|---|
| MODULE_WHITEBITCODE_PUBLIC_KEY | Public API key |
| MODULE_WHITEBITCODE_PRIVATE_KEY | Private API key |
| MODULE_WHITEBITCRYPTO_TRADE_CURRENCY | Currencies allowed for automatic purchase (comma-separated) |
| MODULE_WHITEBITCRYPTO_TRADE_ASSETS | Base currency for trading |
1) Click on your avatar, go to the "API" section, and click the "Generate a new key" button.
2) Copy the "Key" (public API key) and "Secret key" (private API key).
3) Set the key permissions: "Withdrawal" - "/api/v4/main-account/withdraw-pay".
The obtained data must be specified in the environment variables file.
Example configuration:
MODULE_WHITEBITFIAT_PUBLIC_KEY=ieXohphohNae8Goh7uumoR6aiyixeiNg MODULE_WHITEBITFIAT_PRIVATE_KEY=eil0wieghoh8eechexung8zub8aif0Qu MODULE_WHITEBITFIAT_PROVIDER_CARD=CARDUAH,MONOBUAH,P24UAH MODULE_WHITEBITFIAT_PROVIDER_GEOPAY=GEOPAYUAH MODULE_WHITEBITFIAT_PROVIDER_VOLET=ADVCUSD
| Environment Variable | Description |
|---|---|
| MODULE_WHITEBITFIAT_PUBLIC_KEY | Public API key |
| MODULE_WHITEBITFIAT_PRIVATE_KEY | Private API key |
| MODULE_WHITEBITFIAT_PROVIDER_CARD | Visa/MasterCard provider currencies (comma-separated) |
| MODULE_WHITEBITFIAT_PROVIDER_GEOPAY | GeoPay provider currencies (comma-separated) |
| MODULE_WHITEBITFIAT_PROVIDER_VOLET | Volet provider currencies (comma-separated) |