WebEngine

0%
Bots & Automation

Telegram Mini Apps: A Real App Inside the Messenger

What a Mini App is, how it differs from a bot, which jobs it does better than a website, and what building one costs — with store and booking examples.

Pavlo7 min read

A client writes "I want a store in Telegram" and pictures a bot with buttons. Two clarifying questions later it turns out they need a filterable catalogue, a basket and payments — which is a Mini App, a different product with a different budget and stack. Here is how a Mini App differs from a bot, which jobs it does better than a website, what building one costs, and where these projects usually break.

0

installs or signups to get in

1 tap

from product card to payment with a saved card

$1.5k

entry price with catalogue and payments

4–8

weeks to a first working version

A Mini App and a bot are different products

Technically a Mini App is a web application that Telegram opens inside its own web view, handing it signed data about the user. You build the front end in any stack, host it yourself and register the URL with BotFather. The user taps a button in the bot and sees your full-screen interface — no jump to a browser, no login.

The commercial difference is information density. A bot shows a screen of text and a row of buttons, which is enough for the linear script "take the enquiry, send the status". A Mini App shows a grid, filters and a basket at once, which is what you need when the customer is comparing options. Trouble starts when a linear bot is asked to serve a non-linear journey.

CriterionChatbotMini AppWebsite
InterfaceMessages and buttonsFull UI in a web viewFull UI in a browser
User sign-inAlready authenticatedAlready authenticatedSignup or guest
Catalogue of 50+ itemsAwkwardComfortableComfortable
PaymentsTelegram invoiceInvoice or card gatewayCard gateway
Search visibilityNoneNonePrimary channel
A Mini App does not replace a website — it covers a different stretch of the same funnel.

Jobs where a Mini App genuinely wins

  • Filterable catalogues. A button-driven bot copes with 15–20 items; past that the user drowns in a message feed. A Mini App shows the grid exactly like a proper online store, without leaving the messenger.
  • Service booking. A slot calendar inside a chat means a dozen messages back and forth, and half the people give up while picking a time. In a Mini App it is one screen: specialist, date, time.
  • Repeat purchases. Telegram already knows who this is — no login form and no "forgot password", the single biggest leak in any repeat-order funnel.
  • Payment without redirects. The card is stored on the messenger side, so a second purchase really is one tap; we covered the mechanics in the guide to payments in Telegram.
  • Portals and internal tools. Order statuses for a B2B client, a checklist for an installer, a sales summary for the owner — inside the chat, with no separate app to publish and no access rights to hand out.

How it works under the bonnet

  1. 1

    The bot stays the entry point

    A Mini App is opened by a bot button, a chat menu item or an inline button. You still need the bot — for broadcasts, statuses and bringing the user back.

  2. 2

    Telegram hands over signed data

    On open, the front end receives initData: user id, name, language, timestamp and a hash. That is your authentication — no passwords, no SMS codes.

  3. 3

    The server verifies the signature

    Client-side initDataUnsafe can be forged in a minute, so the hash must be checked on the back end using the bot token. This is the most common hole in hastily built Mini Apps.

  4. 4

    The UI, and the return to chat

    Use MainButton, BackButton and the Telegram theme colours instead of your own controls. After checkout the app closes and passes order data back to the bot, where ordinary logic takes over.

Signature verification is about ten lines, and those ten lines separate a working product from a hole through which one customer applies another’s discount:

import { createHmac } from 'node:crypto';

// initData is the string Telegram passes into the Mini App.
// initDataUnsafe from the client is NEVER a source of truth.
export function verifyInitData(initData: string, botToken: string): boolean {
  const params = new URLSearchParams(initData);
  const hash = params.get('hash');
  params.delete('hash');

  const dataCheckString = [...params.entries()]
    .sort(([a], [b]) => a.localeCompare(b))
    .map(([key, value]) => key + '=' + value)
    .join('\n');

  const secret = createHmac('sha256', 'WebAppData').update(botToken).digest();
  const signature = createHmac('sha256', secret).update(dataCheckString).digest('hex');

  return signature === hash;
}

Budget and timelines

A Mini App costs roughly what a web app of the same complexity costs, plus 10–20% for bot integration and testing across Telegram’s mobile clients. The ranges we work with:

Type of Mini AppWhat is insideTimelineCost
ShowcaseCatalogue, categories, enquiry to the bot2–3 weeks$700–1,200
Store with paymentsBasket, invoices, statuses, admin panel4–7 weeks$1,500–3,500
Booking serviceCalendar, slots, reminders, rescheduling4–6 weeks$1,200–2,800
Portal or internal toolRoles, CRM or accounting-system integration6–10 weeksfrom $3,000
2026 pricing, excluding content and promotion. Hosting is separate, $5–20 per month.
  1. 1Integration with an accounting system or CRM — add $300–800, and the biggest schedule risk, because you depend on someone else’s API.
  2. 2Real in-app payments — add $250–600 for invoices, webhooks, failed-payment handling and refunds.
  3. 3An admin panel for the manager — add $400–900. Often it is cheaper to run operations from an existing CRM than to build your own panel.

The mistakes that cost the most to fix

Check before launch

  • The initData signature is verified on the server, never in the browser
  • The UI is tested on both Android and iOS — the web views handle the keyboard differently
  • No fixed bottom bar sitting on top of MainButton; on small screens they overlap
  • Colours come from the Telegram theme, otherwise half the text disappears in dark mode
  • The first screen weighs under 300 KB — the web view opens on mobile data, and load speed decides the outcome
  • There is a real "something went wrong" path with a button to message the bot, not a blank screen
A Mini App wins not because it is fashionable but because it removes three steps from the funnel: install, signup and card entry. If your journey has none of those steps, there is nothing to win.

Frequently asked questions about Telegram Mini Apps

How is a Telegram Mini App different from a regular chatbot?

A bot communicates through messages and buttons, which works well for linear scripts: taking an enquiry, sending a status, reminding someone about an appointment. A Mini App is a full web interface inside Telegram that shows a catalogue, filters, a basket or a calendar on one screen. Technically a Mini App is always launched from a bot, so it extends one rather than replacing it.

Can a Mini App replace a company website?

Not if you need traffic from search: Mini Apps are not indexed by Google and give no organic visibility at all. They work well as a transaction tool for an audience that already knows you. Discovery, comparison and reviews still belong on an ordinary website. The practical split is that the site brings the person in and the Mini App serves their repeat orders.

What does it cost to build a Telegram Mini App?

A simple showcase with a catalogue and an enquiry form runs roughly $700–1,200 over two to three weeks. A store with a basket, payments and an admin panel is $1,500–3,500 over four to seven weeks. A portal with roles and accounting-system integration starts at $3,000, and it is the integration rather than the interface that consumes most of the schedule.

Is taking payments inside a Mini App safe?

Yes, provided you use Telegram’s payments API: card details are handled by the payment provider and your server never sees them. The non-negotiable condition is verifying the initData signature on the back end, otherwise orders can be placed under someone else’s identity. You also need to process success and failure webhooks rather than trusting that the customer waited for the final screen.

In short

  • A Mini App is a web interface inside Telegram with authentication already solved; the bot stays the entry point and the messaging channel.
  • It wins wherever people compare options or buy repeatedly: catalogues, booking, B2B portals, internal tools.
  • It produces no organic traffic — the top of the funnel still belongs to your website.
  • Budget: $700–1,200 for a showcase, $1,500–3,500 for a store with payments, from $3,000 for a portal with integrations.
Share
  • Mini Apps
  • Telegram
  • development

Related reading