Documentação
Tudo que voce precisa para configurar e integrar o TrustPay Bot.
1 Inicio Rapido
Configure tudo em 5 minutos. Siga estes 4 passos:
Crie sua conta
Acesse trustpaybot.site/register e cadastre-se
Crie um projeto
No dashboard, clique em "Novo Projeto" e de um nome (ex: "Minha Plataforma")
Configure o Telegram
Siga o tutorial abaixo para criar o bot e conectar ao grupo
Integre no seu codigo
Copie sua API Key e use o widget PHP ou chame a API direto
2 Configurar Telegram (Passo a Passo)
1 Criar o Bot no Telegram
Abra o Telegram no celular ou desktop
Pesquise por @BotFather e abra a conversa
Envie o comando /newbot
O BotFather vai perguntar o nome do bot. Digite algo como: Comprovantes MinhaPlataforma
Depois ele pede um username (precisa terminar em "bot"). Ex: minhaplataforma_bot
Pronto! O BotFather responde com o Token. Ele tem este formato:
2 Criar o Grupo e Adicionar o Bot
No Telegram, crie um novo grupo (toque no icone de lapis/nova mensagem → "Novo Grupo")
De um nome pro grupo (ex: "Comprovantes de Saque")
Adicione o bot que voce criou como membro do grupo (pesquise pelo username)
Abra as Configuracoes do grupo (toque no nome do grupo)
Va em Administradores → Adicionar Administrador
Selecione o bot e ative a permissao "Enviar Mensagens"
3 Descobrir o Group Chat ID
Envie qualquer mensagem no grupo (ex: "oi")
No navegador, abra esta URL (substituindo pelo seu token):
Exemplo real: se o token e 7123456789:AAH_xxx, a URL fica:
No JSON que aparece, procure pelo "chat". Vai ter algo assim:
"chat": {
"id": -1001234567890,
"title": "Comprovantes de Saque",
"type": "supergroup"
}
O Group Chat ID e o numero negativo: -1001234567890
Copie esse numero (incluindo o sinal de menos) e cole no campo Group Chat ID do seu projeto
Nao aparece nada no getUpdates?
- • Certifique-se de enviar uma mensagem depois de adicionar o bot
- • Remova o bot do grupo, adicione novamente como admin, envie "oi" e tente de novo
- • Se o grupo era antigo, converta para Supergrupo (Configs → Historico de chat visivel)
4 Salvar e Testar
No dashboard, abra seu projeto e va na aba Telegram
Cole o Bot Token e o Group Chat ID
Clique "Salvar Telegram"
Teste enviando um comprovante via cURL. Copie sua API Key na aba Integracão:
curl -X POST https://trustpaybot.site/api/v1/receipt \
-H "Authorization: Bearer sk_live_SUA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Joao da Silva",
"pix_key": "12345678901",
"amount": 150.00
}'
Se tudo deu certo, o comprovante aparece no grupo do Telegram em segundos!
3 Integrar na Plataforma
Voce quer enviar comprovantes automaticamente quando um saque e aprovado. Existem 3 formas:
Opcao 1: Widget PHP (mais facil)
Um unico arquivo PHP. Baixe e inclua no seu projeto. Zero dependencias.
// No seu processar_saque.php, apos aprovar: require_once 'trustpay_widget.php'; $bot = new TrustPayBot('sk_live_SUA_KEY'); $bot->enviar($nome, $chave_pix, $valor);
Opcao 2: API direta (qualquer linguagem)
Faca um POST para /api/v1/receipt com sua API Key. Funciona com PHP, Python, Node, Java, etc. Veja exemplos completos abaixo.
Opcao 3: Webhook (o sistema chama voce)
Se sua plataforma suporta webhooks de saque, configure o endpoint https://trustpaybot.site/api/v1/receipt como destino do webhook, passando a API Key no header.
Onde colocar no codigo?
Coloque a chamada logo depois de processar o saque com sucesso. Exemplo de fluxo:
// 1. Atualizar saldo do usuario atualizarSaldo($usuario, -$valor); // 2. Registrar transacao no banco registrarSaque($usuario, $valor, 'aprovado'); // 3. Enviar comprovante para o grupo $bot->enviar($nome, $chave_pix, $valor); // 4. Responder pro usuario jsonResponse(['status' => 'success']);
</> API Reference
/api/v1/receipt
Gera e envia um comprovante de saque para Telegram e/ou WhatsApp.
Headers
Body (JSON)
{
"name": "Joao Vitor da Silva",
"pix_key": "12345678901",
"amount": 1500.50,
"method": "pix",
"date": "2026-03-26 14:30:00"
}
Parametros
| Campo | Tipo | Obrig. | Descricao |
|---|---|---|---|
| name | string | Sim | Nome completo do beneficiario (sera censurado: "Joao V****") |
| pix_key | string | Sim | Chave PIX (sera censurada: "123****8901") |
| amount | float | Sim | Valor liquido do saque (ex: 1500.50) |
| method | string | Nao | "pix" ou "usdt" (padrao: "pix") |
| date | string | Nao | Data/hora no formato YYYY-MM-DD HH:MM:SS (padrao: agora) |
Response (200 OK)
{
"success": true,
"receipt_id": 42,
"channels": ["telegram", "whatsapp"],
"message": "Comprovante enviado com sucesso"
}
Exemplos de Codigo
// Metodo 1: Usando o Widget (recomendado) require_once 'trustpay_widget.php'; $bot = new TrustPayBot('sk_live_SUA_KEY'); $result = $bot->enviar( 'Joao Vitor da Silva', '12345678901', 1500.50, 'pix' ); if ($result['success']) { echo "Comprovante enviado! ID: " . $result['receipt_id']; } else { echo "Erro: " . $result['message']; } // Metodo 2: cURL puro (sem widget) $ch = curl_init('https://trustpaybot.site/api/v1/receipt'); curl_setopt_array($ch, [ CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => [ 'Authorization: Bearer sk_live_SUA_KEY', 'Content-Type: application/json', ], CURLOPT_POSTFIELDS => json_encode([ 'name' => $nome, 'pix_key' => $chave_pix, 'amount' => $valor, 'method' => 'pix', ]), ]); $response = json_decode(curl_exec($ch), true); curl_close($ch);
import requests API_KEY = "sk_live_SUA_KEY" URL = "https://trustpaybot.site/api/v1/receipt" response = requests.post( URL, headers={"Authorization": f"Bearer {API_KEY}"}, json={ "name": "Joao Vitor da Silva", "pix_key": "12345678901", "amount": 1500.50, "method": "pix", }, timeout=30, ) data = response.json() if data["success"]: print(f"Enviado! ID: {data['receipt_id']}") else: print(f"Erro: {data}")
const API_KEY = 'sk_live_SUA_KEY'; const response = await fetch('https://trustpaybot.site/api/v1/receipt', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': `Bearer ${API_KEY}`, }, body: JSON.stringify({ name: 'Joao Vitor da Silva', pix_key: '12345678901', amount: 1500.50, method: 'pix', }), }); const data = await response.json(); if (data.success) { console.log(`Enviado! ID: ${data.receipt_id}`); } else { console.error('Erro:', data); }
curl -X POST https://trustpaybot.site/api/v1/receipt \ -H "Authorization: Bearer sk_live_SUA_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Joao Vitor da Silva", "pix_key": "12345678901", "amount": 1500.50, "method": "pix" }' # Resposta esperada: # {"success":true,"receipt_id":42,"channels":["telegram"],"message":"Comprovante enviado com sucesso"}
Widget PHP
Um unico arquivo PHP que encapsula a chamada a API. Sem dependencias — funciona com qualquer projeto PHP.
Como usar:
Coloque o arquivo trustpay_widget.php na pasta do seu projeto PHP
No arquivo onde voce processa saques (ex: processar_saque.php), adicione:
require_once 'trustpay_widget.php'; $bot = new TrustPayBot('sk_live_SUA_KEY_AQUI'); // Envio basico $bot->enviar('Joao da Silva', '12345678901', 500.00); // Com metodo especifico $bot->enviar('Maria Santos', 'TRC20wallet...', 200.00, 'usdt');
Metodos disponiveis:
| enviar($nome, $pix, $valor) | Envia comprovante PIX |
| enviar($nome, $pix, $valor, 'usdt') | Envia comprovante USDT |
| enviarRaw($data) | Envia com array personalizado (todos os campos) |
Codigos de Erro
| HTTP | Significado | O que fazer |
|---|---|---|
| 401 | API Key invalida ou ausente | Verifique se a key esta correta no header Authorization |
| 403 | Projeto inativo ou nao pago | Ative o projeto no dashboard ou efetue o pagamento |
| 422 | Dados invalidos | Verifique name, pix_key e amount (obrigatorios) |
| 500 | Erro interno na geracao | Tente novamente. Se persistir, entre em contato |
| 502 | Telegram/WhatsApp nao respondeu | Verifique se o bot esta no grupo e se e admin |
Perguntas Frequentes
Verifique na ordem:
- O bot esta adicionado ao grupo?
- O bot e administrador do grupo?
- O Group Chat ID esta correto? (deve comecar com -100)
- O Bot Token e o correto?
- O projeto esta ativo no dashboard?
Envie uma mensagem no grupo, depois acesse no navegador: https://api.telegram.org/bot<TOKEN>/getUpdates. O chat ID e o numero negativo que comeca com -100. Veja o tutorial completo.
Sim! No dashboard do projeto, va na aba "Design". Voce pode mudar cores, textos, fontes, quais campos mostrar, e ver um preview em tempo real.
Nao. Por seguranca, os dados sao automaticamente censurados. "Joao Vitor da Silva" vira "Joao V****" e "12345678901" vira "123****8901".
Ilimitado! Cada projeto pago pode enviar quantos comprovantes quiser, sem limite mensal.
Sim! Configure ambos os canais no projeto e a mesma chamada de API envia para os dois simultaneamente.