Telegram payments in cryptocurrencies and altcoins with CoinPayments

Create a Telegram subscription bot that accepts payments in cryptocurrencies and altcoins with CoinPayments.

What is cryptocurrency?

Cryptocurrencies are the latest evolution of digital money. To make it simple, cryptocurrency is a digital version of money where transactions are done online. Think of it as the equivalent of using PayPal or a Debit Card, except the numbers on the screen represent cryptocurrency instead of a fiat currency. It is decentralized, meaning the network is powered by its users without having any third party, central authority or middleman controlling it. Not the central bank or the government has power over this system. It is distributed, meaning the blockchain is hosted on many computers across the globe.

What is CoinPayments?

CoinPayments is a payment service provider with online merchant services & payment gateway integration for retailers to accept cryptocurrency as payment. Connect CoinPayments to your Telegram subscription bot to accept Bitcoin, Litecoin, Dogecoin and more than 2000 other cryptocurrencies/altcoins.
Crypto payments in Telegram made easy and accessible for everyone.

How can my Telegram bot accept Crypto payments?

To add CoinPayments as a payment method to your Telegram bot:
1. Sign up for an account with CoinPayments, or skip this step if you already have one.
2. Open Account -> API Keys and click "Generate new key".
3. Click "Edit Permissions" next to your newly created API Keys and make sure "create_transaction", "get_tx_info" and "rates" are all checked. Click "Update Permissions" to save the changes.

Make sure your CoinPayments application has the appropriate rights so that your Telegram bot will work properly.Make sure your CoinPayments application has the appropriate rights so that your Telegram bot will work properly.
Click on the photo to enlarge it.

4. Open your bot, type /settings and select "Set Payment method" -> Crypto (CoinPayments).
5. Enter the public and private key you just created in CoinPayments.

Create a TGmembership bot for effective Telegram memberships management. Paid subscriptions in Telegram made simple.Use a Telegram bot to sell subscriptions in crypto with CoinPayments
Click on the photo to enlarge it.

6. Open Account -> Account Settings and select the "Merchant Settings" tab. Then set IPN Secret and IPN URL using the values provided by your bot. Don't forget to click "Update Account" to save the changes.

The IPN settings allow your bot to receive real-time notifications of order updates.The IPN settings allow your bot to receive real-time notifications of order updates.
Click on the photo to enlarge it.

7. Open Account -> Coin Acceptance Settings and select the coins you wish your Telegram bot to accept. When you're ready, click "Update Coin Preferences" to save the changes.
Now the CoinPayments option will be available to your customers at checkout.
You can still use traditional payment gateways, such as PayPal or Stripe, along with CoinPayments, giving your customers the convenience of paying with the one they prefer.

How do I create a Telegram subscription plan in crypto?

Here's the interesting part - you don't :)
Creating plans in BTC, LTC, DOGE or any other cryptocurrency/altcoin only limits you. If you only accept crypto payments, it probably wouldn't be a problem, but if you also accept payments with PayPal/Stripe, or any other of the supported gateways in parallel, you would create the same plans in several different currencies. It doesn't sound very rational, does it? Also, it is no secret that cryptocurrencies are very volatile and their price changes quickly in both directions. If you create your plans with one price today, then that same price can have a completely different value in just a few days. What is our solution? Create your plans in fiat currencies. Use USD, EUR, GBP or any other supported currency. When your customer places an order, TGmembership will automatically check what the current exchange rates are and will convert the amount. This way you will be able to use the same plans with all payment methods and you will always receive the same value in crypto with each payment.

Where does my Telegram bot get the exchange rates from?

We use the exchange rates set by Binance for most currencies and CoinPayments for the rest.
CoinPayments determines the exchange rates against Bitcoin, then we use Binance again to determine the value of Bitcoin against fiat currencies.

What is IPN and why is it important?

Instant Payment Notifications (IPN) system will notify us when you receive a payment and when a payment status changes. IPN URL is where CoinPayments will send the updates on your orders. IPN Secret is the key that helps us verify that the information received is genuine.
If the IPN URL is incorrect, your bot will not be able to receive updates, as a result of which it will not activate your customers' subscriptions.
If the IPN key is wrong, even if your bot receives updates, it will ignore them, as they will not be signed with a valid key, as a result of which your customers' subscriptions will not be activated.
Each bot receives a unique IPN URL and IPN key - please make sure you enter the ones created by your bot and that you enter them correctly.

What will my customers see?

When choosing CoinPayments as the payment method for their orders, your bot will ask your customers to enter an email address - this is a requirement of CoinPayments to start the order.
The next step is to select a cryptocurrency or altcoin they will use for this payment - the list with available coins is the same that you have created earlier from the CoinPayments dashboard.
Administrators will see an additional "Refresh" button - if you change the list with coins that your bot accepts, use this button to force your bot to update it. This button will not be displayed to users who don't have administrator rights.
When a currency is selected, your customer will receive a QR code and a wallet address where they can pay. The net amount (after fees) must be equal to or greater than what the bot asks for. If it is less, the order will not be processed.

Each order placed through CoinPayments receives its own unique wallet address where the cryptocurrency can be sent. Each order placed through CoinPayments receives its own unique wallet address where the cryptocurrency can be sent.
Click on the photo to enlarge it.