Skip to content
PD
Crypto Tools Live Project

PayPing - a Telegram Bot for Accepting USDT and USDC

Invoices with a unique amount, a link and a QR code, automatic «paid» status from blockchain data, PDF invoices with your details and income tracking per wallet - on five networks, with no access to your money.

Coverage
5 networks
Tron, BSC, Ethereum, TON and Solana, with USDT and USDC

Problem

More and more work is paid in stablecoins, yet the process stays manual: copy an address, type an amount, then scroll a block explorer guessing whose transfer is whose. Payment middlemen solve it, but ask you to trust them with your money or your keys.

Result

An invoice takes one command: a unique amount, a link and a QR code for the client, and a PDF with your details. As soon as the transfer lands on the blockchain, the bot marks the invoice paid and notifies both sides, while the money goes straight to the seller's wallet.

Tech Stack

Telegram Bot APITron, BSC, Ethereum, TON and SolanaReading the public blockchainPDF invoice generationPayment QR codesWebhooks, API keys and export

Overview

PayPing is a Telegram bot that helps you accept USDT and USDC like a pro: issue an invoice with a link and a QR code, get an instant payment notification and an automatic «paid» status. It works on five networks: Tron, BSC, Ethereum, TON and Solana.

The key decision behind the product is that the bot never touches the money. Payments go from the client straight to the seller’s wallet; the bot holds no funds and asks for no keys - it only reads the public blockchain. You need to trust it no more than you trust a block explorer.

Problem

Stablecoins are convenient for getting paid by clients anywhere in the world, but the process around them is stuck in manual mode:

  • Everything by hand. Copy the address, type the amount, wait for a screenshot of the transfer, open a block explorer and check the money actually arrived.
  • Who paid is unclear. Transfers from different clients land on the same wallet, and identical amounts are impossible to tell apart.
  • No documents. A company needs a proper invoice with your details, not a message saying «send 100 USDT here».
  • Middlemen need trust. Payment services solve part of the problem but want to hold your money or get access to your wallet.
  • Accounting is scattered. How much came in and went out of each wallet, especially across several wallets and networks, has to be pieced together by hand.

Solution

A unique amount instead of a unique address. Every invoice gets its own amount, precise to six decimals - for example 100.003347 USDT instead of a round 100. The bot watches the seller’s wallet and matches an incoming transfer to the invoice by its exact amount. One address per seller is enough, and payments are found with no manual reconciliation. The invoice says it plainly: do not round the amount, the payment is matched by its exact value.

Three steps to the first invoice. /add registers a wallet address, and /invoice 50 returns an invoice with a unique amount and a link for the client. The client pays, the bot spots the transfer and confirms the payment to both sides.

An invoice you are happy to send. The bot builds a PDF invoice with the seller’s details and logo (the /seller and /logo commands): the description and amount, dates, the network and token, the address, the exact amount, the invoice number, a QR code and a link to a live payment page with the status and copy buttons.

Instant notifications. As soon as a transfer appears on the network, the bot sends the amount, the wallet, the network, the sender’s address and a link to the transaction in the explorer. You can label a sender to recognise regular clients at a glance.

Pro for steady work. /pnl shows income and spending per wallet, outgoing transfers included. /recurring issues invoices to regular clients on a schedule. /webhook, /apikey and /export connect the bot to your own systems and your accounting.

Features

  • Accepting USDT and USDC on Tron, BSC, Ethereum, TON and Solana
  • The invoice currency of your choice - rub, eur or usd - with a comment
  • A unique amount for every invoice and automatic payment matching
  • A link and a QR code for the client, and a live payment page with the status
  • Instant notifications of incoming transfers with a link to the transaction
  • Sender labels to recognise regular clients
  • A list of invoices with cancellation by number, and several wallets with statistics
  • PDF invoices with the seller’s details and logo
  • PnL per wallet, outgoing transfers included, and the full history through export
  • Recurring invoices on a schedule
  • Webhooks, API keys and export for integrations and accounting
  • An interface in Russian and English

Development Process

The product was built around one question every user asks: can I trust a bot with my money? The best answer is to leave nothing to trust it with.

Non-custodial by design. The bot holds no funds and never sees private keys, so even a full compromise of the bot gives no access to the money. All it needs is a public wallet address and blockchain data that is open anyway.

The amount as the identifier. The usual way to tell payments apart is a fresh address for every invoice, but that means managing keys - touching the money again. A unique six-decimal tail on the amount does the same job and keeps the model non-custodial.

One flow across five networks. The networks differ in address formats, tokens and confirmation speed. The user never sees it: the flow is the same everywhere - add a wallet, issue an invoice, get notified.

Documents for business. PDF invoices with your details, recurring invoices, webhooks and export turn the bot from a tool for personal transfers into a working tool for freelancers and companies.

Results

  • An invoice takes one command, and the client pays through a link or a QR code
  • Payments are confirmed automatically from blockchain data - no screenshots, no manual reconciliation
  • Five networks and two stablecoins in one bot
  • The seller’s money stays under the seller’s control: the bot holds no funds and sees no keys
  • For steady work there are PDF invoices, recurring invoices, PnL, webhooks and export

What Was Learned

In financial tools, trust matters more than features. PayPing’s strongest argument is what it does not do: it does not hold money and does not ask for keys.

The second lesson: a good solution often comes down to a simple trick. A unique amount replaced a whole system of address issuing and kept the product non-custodial.

If you need a Telegram bot for accepting payments, invoicing or bookkeeping, message me.

Services used in this project

Related case studies

Need a similar system?

Tell me about your challenge - I will propose an architecture and the shortest path to a working product.