Skip to main content

Autopayments and Withdrawal of funds - general information

Definition of concepts


In order to be able to understand the mechanics of how Payments work in general in bots, you need to clearly understand what Variables are and how Balance works in a bot. Familiarize yourself with the BASIC CONCEPTS and DEFINITIONS in these manuals before continuing the study of this material - we will not explain or stipulate these concepts separately in future.

In the context of interaction with payments between the user and the bot, two directions can be distinguished:
1. From the user to the bot - Autopayments (Top-ups, Replenishments).
2. From bot to user - Autowithdrawals (Withdrawals, Payouts).
This section will give you an overview of both directions.

The following list of concepts and terms used in the existing auto payment system is 100% relevant only for the @MenuBuilderBot constructor. In other systems, the spheres defining concepts in payments may differ. Definitions of terms are given in the way they will be used in the texts, the purpose of these definitions is to indicate the boundaries of concepts and make it easier for you to understand the instructions given, however, you need to keep in mind that these definitions are not necessarily correct from the point of view of economic theory and may not be applicable to other bots constructors or payment systems, there is also no reason to consider them scientifically correct. In other words, the definitions provided are applicable only in the context of these manuals.

Payment - transfer of funds in the direction from the user to the bot (other names: Top-up, Replenishment). In general, the user's funds are transferred to the external (Third Party) wallet of the administrator, in any payment system. After that, their equivalent should be credited to the Balance in the bot.

In the context of comparing types of payments, saying "Payment" means rather the situation of manual replenishment of the User's Balance by the operator in the bot, through Feedback Forms. However, in general, the above definition of payment applies to both manual and automatic methods - more describing the principle, rather than pointing to any specific of these two types.

Autopayment is a Payment in which funds are credited to the Balance automatically by identifying the user account (payer) by any of the available methods (possible methods of user identification will be given below).

Sometimes, in groups or support, for simplicity, the whole system of Payments and Payouts is called "Autopayments".

Withdrawal of Funds - transfer of funds in the direction from the bot to the user (other names: Payout). In general, the funds available on the User's Balance in the bot, are going to his external (Third Party) wallet, in any payment system. At the same time, their equivalent must be debited from the Balance in the bot.

Semi-automatic withdrawal of funds is a Withdrawal of funds, in which the withdrawal from the Balance in the bot occurs automatically (when the user orders the Withdrawal), and the transfer to the wallet of the external (Third Party) payment system of the user, after confirmation by the admin, is made manually by admin himself. This method is implemented using the "Withdraw Button".

Autowithdrawal of funds is a Withdrawal when the deduction from the Balance in the bot (at the time your user orders the withdrawal) and the transfer of funds to the wallet of the external (Third Party) payment system of the user (using the API of this system) occur automatically right after Admin's confirmation. Please note that even with automatic withdrawal of funds, the participation of the administrator is required to confirm the payment (our security requirement). This method is implemented using the "Withdraw Button".


❖ Important features of autopayments and autowithdrawals


When working with autopayments and autowithdrawals, all funds are always stored on YOUR wallets.

Autopayments

When using autopayments, @MenuBuilderBot does not have direct access to your funds. The only thing that a payment processor can do is see your wallet balance and its changes, but it TECHNICALLY cannot interact with the funds on the balance in any other way (the prohibition is implemented by means of an external payment system and does not imply your trust in the constructor). This method is absolutely safe in relation to your funds in terms of interaction with the constructor and therefore is provided WITHOUT any special conditions.

IMPORTANT: The only exception in this case is the automatic payment through "Perfect Money". For some reason, it is impossible to set up rights in this system, therefore, even to organize the receipt of payments, you need to provide full access to your wallet.

Withdrawal of Funds - manual and semi-automatic

Manual and Semi-Automatic Withdrawals, as well as Deposits, are as secure, as you can trust yourself, since the actual transfer of funds is carried out manually by the admin. The system only generates a request and writes off virtual funds from the Balance in the bot using a specialized button. When using these methods, the @MenuBuilderBot constructor also TECHNICALLY does not have access to your funds.

Autowithdrawals

Automatic withdrawal of funds in this context stands apart. This is the only mode when the constructor needs full access to the funds in your wallet. For this reason, this method is NOT available to EVERYONE, but only to those who fully understand the mechanisms of automatic payments, security means and in a direct conversation have demonstrated their own adequacy and intellectual readiness. Automatic payments are provided on SPECIAL conditions that will be announced as a result of a personal interview, and only after a collective decision made on the possibility of connecting it. Without agreeing to the SPECIAL Terms, the connection of Autowithdrawals is not carried out.

Autowithdrawals are paid separately - regardless of everything else.


Additional Autopayments features


The options below are available for all types of automatic payments and are specified during first connection.

Duplicate amount

Duplicate top-up amount in a separate variable or variables, both individual and global.
Allows you to save the total amount of replenishment - both - individually for each user and common for all users together.

Referral Parent Bonus

Automatic accrual of bonuses to referral parents of a user replenishing the balance - up the multi-level system.
Allows you to create referral bots where the profit of referral parents is directly depends on deposits. The amount can be indicated as a percentage of the replenishment amount, the number of possible levels will depend on the levels of the Referral System purchased in your bot.

Auto-convert amount

Accrual of incoming funds with their automatic conversion at the specified rate to another conditional currency.
● You can set the rate permanently, take it from some variable in your bot (preferably) or use Automatic Exchange Rates for conversion.
● Different currencies (according to the exchange rate) can be charged into one variable (for example, any incoming currencies can be converted into US dollars or Russian rubles).

Income reports

Auto-replenishment reports can be sent to a specified group or channel.
● The report shows the top-up amounts, the data of payer, as well as the total amount on the account.

Accruals on different variables

Autopayments sent to the same wallet can be charged to different variables - at the user's choice.
● Available for systems where payments are identified using comments (see the list of possible types of identification below).
● To charge a payment for an additional variable, when replenishing, you can specify your prefix, added to the user ID in the comment.

You can create a prefix yourself. Usually 3-4 letters and dash "-" to separate it from the Usercode itself.
Prefix example: usd-, inv-
Comment example with prefix: usd-8888888 (Prefix and Usercode in the comment)


Payment identification methods


In order for a payment received by an external payment system to be credited to the user who sent it in the bot, this user must be identified in some way.

Currently, the autopayment system uses three types of user identification.
1. Using the Comment - Usercode or Telegram ID added as a comment to the payment.
2. With the help of the Payer's Address - a unique wallet address from which the payment was made.
3. With the help of Issued Invoices - the bot generates links.

There are other ways to identify payments, for example, by generating an individual wallet for replenishment in cryptocurrency payments. However, this method of replenishment, being at the same time both more expensive and, more difficult to create and maintain, thus it is not currently considered, by us, to be of any interest in implementation.

Each of these three identification methods used in the system has its positive and negative sides.


1. Identification by Comment (Usercode or ID)

This method can be used only in those payment systems that support comments on payments. The essence of the method is that the user, having received in the bot and copying his Usercode or Telegram ID, adds it to the comment of his payment in the external payment system, as a result of which the robot, tracking the incoming transactions of the admin's wallet using the API, determines the user who has to receive the payment.

Benefits: The concept can be easily explained to users in the bot's messages and is also very easy to practically implement.

Disadvantages: not all systems support comments, sometimes users, through inattention, may forget to indicate or incorrectly indicate their data.


2. Identification by the Payer's Address (wallet)

This method is more relevant to payments in the cryptocurrency sphere, where the sender's wallet address, playing an important role, can be easily found in the blockchain and associated with the payment amount. The essence of this method is that the user saves the wallet address from which he will conduct transactions, in one of the bot's variables. As if saying thereby: "I will pay from this address". The bot, in turn, tracking incoming transactions on the admin's wallet in the public blockchain explorer, identifies the user by the wallet address he saved, if a payment was received from this address to the admin's wallet.

Advantages: ease of use for the user - all the user needs to do, to replenish, is to simply send funds from the personal wallet, the address of which he saved in the corresponding bot's variable, to the address specified by the admin.

Disadvantages: more complicated to implement, requires additional functionality in the bot itself, requires understanding and certain knowledge from the administrator who creates this type of automatic payment, more complex instructions for users are needed, in most cases users do not understand these instructions, it is impossible to make payments by transferring from exchanges and cryptobots and custodial wallets, as they use their own random addresses for transactions.


3. Identification by Issued Invoice (link)

The essence of the method is that the user from the bot initiates the creation of an individual payment link and, following it to his account in an external payment system, makes a payment by simply confirming the transaction. The admin can specify the payment amount in advance, as well as leave the user the opportunity to specify his own.

Advantages: ease of use for the user, the whole process comes down to following the link and making a payment in a familiar way in an external payment system.

Disadvantages: not many payment systems support this method. Creating a button in the bot for such a payment is a somewhat lengthy process.


4. Identification by Personal Wallet Address (address)

The essence of the method is that user getting PERSONAL crypto address being generated, according to the chosen network (blockchain). Any valid transaction (from anywhere: crypto exchanges, bots, dApps, custodial and non-custodial wallets) made to that address will be automatically accrued to the Balance of his Account.

Advantages: ease of use for the user, he doesn't have to bother from where and how he sends his funds any valid transaction will be processed.

Disadvantages: some systems have "minimal receival" sum limitations.


Available systems


● CoinBase (International) - BTC, ETH, LTC, USDC, USDT and any available Coins and Tokens (by Usercode)
● Payeer (International) - USD, RUB, EUR, BTC, ETH, LTC, USDT, TRX and any available Coins and Tokens (by Usercode)
● Perfect Money (International) - USD, EUR (by Usercode)
● Qiwi (Russian) - RUB, USD, UZS (by Usercode)
● Tron (Crypto) - TRX, USDT and any available Coins and Tokens (by Wallet)
● TON (Crypto) - TON and any available Coins and Tokens (by Wallet, by Usercode)
● Binance (BSC-BEP20) (Crypto) - BNB, USDT and any available Coins and Tokens (by Wallet)
● CryptoBot (Crypto) - BTC, ETH, BNB, USDT, USDC, TON (by Invoice)
● Cryptomus (Crypto) - BTC, ETH, BNB, USDT, USDC, TON, TRX, LTC, DOGE, DAI, DASH (by Address)

❖ General auto payment settings

General settings for auto payments are made in your bot:
🔐Admin | 💸Autopayments

Top-up Group/Channel

One FREE group is provided for auto payment reports. The group can work both in public and private modes. If the group is not set, payment reports will be sent to the bot itself. You can set your own message for the report.

User Notification

You can set your own message that will be sent to the user upon successful accrual of funds.

If the message is not set, the user will not receive any additional notification.