Telegram Mini App — Guia Passo a Passo
O que é?#
O Telegram Mini App permite que seus clientes abram o menu digital do restaurante diretamente dentro do Telegram — sem instalar aplicativos e sem mudar para o navegador. O menu parece uma parte nativa do Telegram: adapta-se ao tema do usuário, suporta o botão "Voltar" e gestos.
Vantagens#
- 📱 Dentro do Telegram — o cliente não precisa mudar para o navegador
- 🎨 Aparência Nativa — cores, fontes e tema adaptam-se ao Telegram
- 🔗 Deep Links — link direto para o menu de um restaurante específico
- 🌍 Idioma Automático — o idioma é retirado das configurações do Telegram do usuário
- 🍪 Sem cookies — o banner de cookies não é exibido dentro do Telegram
Início Rápido#
Passo 1 — Crie um bot#
Abra @BotFather no Telegram e envie:
/newbot
- Insira o nome do bot (por exemplo,
Cenaly Menu Bot) - Insira o username (por exemplo,
MeniMenuBot) — deve terminar comBot - Salve o Bot Token recebido (formato:
123456789:ABCdefGHI...)
Para que serve o Bot Token?#
O Bot Token é uma chave secreta para gerenciar o bot programaticamente através da Telegram Bot API. Para a configuração básica do Mini App (passos 2–4) ele não é necessário — tudo é feito através do BotFather. Mas será necessário se você quiser:
- Enviar mensagens aos clientes — notificações de status de pedido, promoções, mensagens de boas-vindas
- Adicionar botões inline nas mensagens do bot (por exemplo, botão "📋 Abrir menu" — veja a seção abaixo)
- Criar um bot do Telegram para receber pedidos — o bot pode receber e processar pedidos
- Configurar Webhook — receber eventos do Telegram (cliques em botões, comandos de usuários)
- Integrar com CRM ou sistema POS — processamento automático de pedidos através do bot
Passo 2 — Crie o Mini App#
Envie o comando para o BotFather:
/newapp
- Escolha o bot da lista
- Title — nome do aplicativo (por exemplo,
Cenaly) - Description — descrição (por exemplo,
Menu digital de restaurante) - Photo — carregue uma imagem de 640×640 px (ícone do aplicativo)
- GIF — animação (opcional). Para pular, envie
/empty - Web App URL — insira o endereço do seu aplicativo cliente:
https://cenaly.com
- Short Name — nome curto para o link (por exemplo,
menu)
Depois disso, você terá um link funcional no formato:
https://t.me/YourBot/menu
Passo 3 — Adicione o botão "Menu" no chat do bot#
Envie para o BotFather:
/setmenubutton
- Escolha o bot
- Envie o URL:
https://cenaly.com
- Insira o texto do botão (por exemplo,
Open Menuou📋 Menu)
Agora, ao abrir o chat com o bot, um botão aparecerá na parte inferior da tela, que abrirá seu aplicativo.
Passo 4 — Permita o domínio#
Envie para o BotFather:
/setdomain
Escolha o bot e insira o domínio:
cenaly.com
Isso permitirá que o Telegram Web App funcione em seu domínio e todos os seus subdomínios (por exemplo, locationid.cenaly.com).
Deep Links — links para um restaurante específico#
O Telegram suporta o parâmetro startapp, que é passado para o aplicativo ao abrir. Use-o para links para um restaurante específico:
| Link | O que será aberto |
|---|---|
t.me/YourBot/menu |
Página principal |
t.me/YourBot/menu?startapp=LOCATION_ID |
Menu de um restaurante específico |
t.me/YourBot/menu?startapp=LOCATION_ID__ru |
Menu em russo |
t.me/YourBot/menu?startapp=LOCATION_ID__en |
Menu em inglês |
Exemplos#
Se o LOCATION_ID do seu restaurante for lnc2w74z:
https://t.me/YourBot/menu?startapp=lnc2w74z
https://t.me/YourBot/menu?startapp=lnc2w74z__ru
https://t.me/YourBot/menu?startapp=lnc2w74z__en
Botões Inline do bot#
Se o seu bot envia mensagens aos clientes, você pode adicionar um botão inline que abrirá o menu:
Variante 1 — Botão Web App (abre imediatamente)#
{
"inline_keyboard": [[{
"text": "📋 Abrir menu",
"web_app": {
"url": "https://LOCATION_ID.cenaly.com/ru"
}
}]]
}
Variante 2 — Botão de Link Direto#
{
"inline_keyboard": [[{
"text": "📋 Abrir menu",
"url": "https://t.me/YourBot/menu?startapp=LOCATION_ID__ru"
}]]
}
O que funciona automaticamente#
Após a conexão dentro do Telegram, os seguintes recursos são ativados automaticamente:
| Função | Descrição |
|---|---|
| 🎨 Tema | As cores do aplicativo adaptam-se ao tema do Telegram (claro/escuro) |
| ◀️ Botão "Voltar" | O botão nativo do Telegram aparece ao abrir a ficha do produto |
| 📏 Viewport | O aplicativo se estende para tela cheia |
| 🔒 Proteção contra fechamento | O deslize vertical não fechará o aplicativo acidentalmente |
| 🌍 Idioma Automático | O idioma é determinado a partir do perfil do Telegram, se não for especificado |
| 🍪 Cookies | O banner de cookies não é exibido dentro do Telegram |
Códigos QR para restaurantes#
Os códigos QR já existentes com URL no formato https://lnc2w74z.cenaly.com continuarão funcionando normalmente — através do navegador.
Para integração adicional com o Telegram, você pode colocar uma segunda QR code nas mesas com o link para o bot:
https://t.me/YourBot/menu?startapp=lnc2w74z
Verificação de Funcionamento#
- Abra o link
https://t.me/YourBot/menuno celular - Clique em Start (se estiver abrindo o bot pela primeira vez)
- Clique no botão 📋 Menu na barra inferior do chat
- Certifique-se de que o aplicativo abriu e carregou o menu
- Tente abrir o deep link:
https://t.me/YourBot/menu?startapp=LOCATION_ID
Problemas Comuns#
| Problema | Solução |
|---|---|
| O aplicativo não abre | Verifique se o domínio cenaly.com está permitido através do /setdomain |
| Tela branca | Certifique-se de que o URL do Web App está definido como https://cenaly.com (HTTPS é obrigatório) |
startapp não funciona |
Verifique o formato: LOCATION_ID (sem espaços, caracteres especiais). O separador para idioma é o duplo sublinhado __ |
| Tema não aplicado | O SDK do Telegram Mini App deve estar conectado (atualize o aplicativo cliente) |