Para verificar um pagamento em USDT, não confie em screenshot nem em mensagem dizendo “enviei”. Abra o hash da transação em um explorador confiável da rede informada e confirme que a transação teve sucesso, o contrato é o USDT verdadeiro, o destinatário é seu endereço, o valor corresponde à invoice e há confirmações suficientes. Só marque o pedido como pago quando todos esses campos coincidirem.

Um screenshot pode ser editado, reutilizado ou capturado enquanto a transação ainda está pendente. Até um hash verdadeiro não basta: ele pode apontar para uma transação falha, outro destinatário, rede errada, token falso ou pagamento antigo de outro pedido. A prova confiável é a transação on-chain confirmada e vinculada aos dados que você esperava para aquela invoice.

Checklist rápido de verificação

Antes de entregar, ativar um serviço ou confirmar uma reserva, confira:

  1. Rede: a transação está na rede combinada com o cliente.
  2. Status: o explorer mostra sucesso, não pending, dropped ou failed.
  3. Contrato: o ativo é o USDT ou USDC verdadeiro naquela rede.
  4. Destinatário: o endereço recebido coincide integralmente com o seu.
  5. Valor: o montante recebido quita a invoice conforme sua política.
  6. Confirmações: a transferência atingiu o limite exigido.
  7. Pedido: o mesmo hash não foi usado em outra invoice.

Se algum item falhar ou continuar duvidoso, o pagamento não está verificado. Screenshot não substitui evidência on-chain ausente.

Por que screenshot não é comprovante de pagamento

Screenshot é uma imagem de interface, não um registro blockchain. Não prova que a transação finalizou, pertence ao cliente atual ou enviou o ativo correto ao seu endereço.

Exemplos enganosos incluem:

  • tela de confirmação antes de transmitir a transação;
  • transação pendente ou falha;
  • transferência antiga reutilizada em pedido novo;
  • envio a outro endereço com o destinatário oculto;
  • token chamado USDT, mas com outro contrato;
  • valor, status ou hash editado;
  • solicitação de saque na exchange que ainda não virou transação on-chain.

Peça o hash para investigar um pagamento manual, mas valide-o de forma independente. Não abra um link de explorer desconhecido enviado pelo comprador: copie o hash e pesquise no explorer conhecido da rede correta.

Como conferir uma transação USDT passo a passo

1. Identifique primeiro a rede

USDT existe em várias redes. O hash só faz sentido junto com a rede, e um mesmo endereço EVM pode ser válido em diferentes redes EVM.

Confirme se a invoice pediu Ethereum, TRON, BNB Smart Chain, Polygon, Arbitrum, Base, Optimism ou Solana. Uma transferência bem-sucedida na rede errada não paga a invoice original, mesmo que símbolo e endereço pareçam familiares.

Use os mesmos explorers que o GramPayBot usa nos detalhes da transação:

RedeExplorerO que colar na busca
EthereumEtherscanHash iniciado por 0x
OptimismOP Mainnet EtherscanHash iniciado por 0x
BNB Smart ChainBscScanHash iniciado por 0x
BaseBaseScanHash iniciado por 0x
PolygonPolygonScanHash iniciado por 0x
ArbitrumArbiscanHash iniciado por 0x
TRONTRONSCANHash da transação TRON
SolanaSolscanAssinatura da transação Solana

Cole o hash ou assinatura sem transformar em outro link. Se não houver resultado, confirme primeiro se o cliente informou a rede correta. Não teste domínios aleatórios enviados na conversa.

2. Confirme que a transação teve sucesso

Localize o status. O texto varia por rede, mas precisa indicar execução bem-sucedida. Pending significa que o resultado ainda não finalizou; failed, reverted ou dropped significa que a transferência esperada não liquidou.

Não confunda o status interno de saque da exchange com confirmação blockchain. Um saque pode aparecer como approved antes de existir e confirmar on-chain.

Nos explorers da família Etherscan, veja Status e depois Tokens Transferred. No TRONSCAN, confira Result e Token Transfers. No Solscan, confira Status e Token Balance Change. Os rótulos podem mudar, mas você precisa comprovar execução bem-sucedida e transferência real do token ao seu endereço.

3. Verifique o contrato, não apenas o símbolo

Nome e símbolo não são únicos. Qualquer pessoa pode criar um token chamado USDT, copiar o logotipo e enviar um saldo sem relação com o Tether USD verdadeiro.

Abra os detalhes do token transfer e compare o contract address com o contrato de USDT suportado naquela rede. A mesma regra vale para USDC. O ativo é identificado pelo contrato ou mint, não só pelo símbolo.

No GramPayBot, rede, contrato e destinatário esperados são definidos antes do pagamento. Veja como configurar carteiras e redes.

4. Compare o endereço completo do destinatário

O destino deve coincidir exatamente com o endereço que você controla e forneceu para o pagamento. Compare todos os caracteres, não apenas o início e o fim exibidos pela wallet.

Golpes de address poisoning inserem endereços visualmente parecidos no histórico. Copie o endereço esperado da sua invoice ou configuração, nunca da lista de transações recentes.

5. Compare o valor recebido com a invoice

Confira o valor do token transfer considerando os decimals e aplique sua política de pagamento insuficiente ou excedente.

Uma transação pode ser legítima e ainda não quitar o pedido. Receber 95 USDT não paga automaticamente uma invoice de 100 USDT. Pagamento excedente também pode exigir revisão antes de entregar ou devolver.

Em vendas manuais, crie uma invoice separada antes do pagamento. Ela preserva valor e contexto do pedido. Veja como criar uma invoice cripto rastreável.

6. Aguarde as confirmações exigidas

A transação pode aparecer em um bloco antes de sua política considerá-la final. As confirmações indicam quantos blocos ou estados finalizados vieram depois dela.

O limite depende da rede, valor e risco. Não use um único número permanente para todas as chains. Mantenha o pedido aguardando até atingir o limite configurado no sistema de pagamento.

7. Vincule a transação a um único pedido

Uma transação válida não pode comprovar vários pedidos. Registre o hash aceito e impeça que ele feche outra invoice.

Não identifique o pagador apenas pelo endereço de origem. Exchanges usam wallets compartilhadas, e o cliente pode pagar de outra wallet. Faça o match por rede, token, destinatário, valor, janela de tempo e identidade única da transação.

Transação encontrada não significa invoice paga

EvidênciaO que comprovaDecisão
Screenshot ou “enviei”O comprador afirma que pagouNão entregar
Hash ausente ou não encontradoNão existe transferência verificávelNão entregar
Transação pendingPode estar em processamentoAguardar
Sucesso com token, rede ou destinatário erradoA transação existe, mas não correspondeNão marcar como paga
Pagamento insuficiente ou ambíguoAlgum valor pode ter chegadoRevisar manualmente
Transferência confirmada que coincide com toda a invoiceO pagamento esperado liquidouMarcar paga e entregar

“Transação encontrada”, “fundos recebidos” e “pedido pago” são estados relacionados, mas diferentes.

Quando a verificação manual deixa de escalar

Conferir manualmente funciona com poucos pagamentos. Com vários clientes simultâneos ou pedidos fora do horário, alguém precisa escolher explorer, reconhecer contrato, comparar endereços, esperar confirmações e impedir reutilização de hash.

A automação começa com uma invoice criada antes do pagamento. O sistema já conhece rede, token, destinatário, valor, vencimento e referência do pedido; monitora a blockchain e só altera o status quando as condições são atendidas.

O GramPayBot faz esse matching sem custodiar os fundos: o cliente paga diretamente à wallet configurada, enquanto a invoice registra status e hash. Transferências ambíguas, tardias, insuficientes ou excedentes podem ir para revisão em vez de fechar o pedido errado.

Se a venda é combinada por chat, use o fluxo de pagamentos cripto no Telegram para trocar screenshots por invoices rastreadas. Se seu site cria pedidos, use pagamentos cripto automatizados no site para ligar o status da invoice ao pedido.

Próximo passo

Automatize a verificação no seu site

Crie uma invoice por pedido, use hosted checkout e receba um resultado ligado ao pedido.

Ver pagamentos no site →