Skip to main content

Visão Geral

O EconPay oferece duas formas de consultar transações:
  1. Consulta Local - Retorna dados do banco de dados (rápido, mas pode estar desatualizado)
  2. Consulta com Sincronização - Consulta na Firebank e sincroniza automaticamente (recomendado)

🔍 Consulta Local (Sem Sincronização)

Retorna apenas os dados armazenados no banco de dados local.
Exemplo:
Resposta:
Quando usar:
  • Listagem rápida de transações
  • Quando não precisa do status mais recente
  • Para economizar chamadas à API da Firebank

✅ Consulta com Sincronização (Recomendado)

Consulta o status atualizado na Firebank e sincroniza automaticamente o status local.

Tipos Suportados:

  • PIX - Para pagamentos PIX
  • CREDIT_CARD - Para cartão de crédito
  • BILLET - Para boleto bancário
Exemplo PIX:
Resposta:
Quando usar:
  • Verificar se um pagamento foi aprovado
  • Obter dados atualizados do pagador
  • Ver histórico de mudanças de status
  • Sincronizar status quando webhook falhar

🔄 Como Funciona a Sincronização

Quando você usa ?payment_type=PIX:
  1. Busca no banco local - Pega os dados da transação
  2. Consulta na Firebank - Busca status atualizado usando o transactionId
  3. Compara status - Verifica se há divergência
  4. Sincroniza automaticamente - Atualiza o status local se necessário
  5. Retorna dados completos - Status sincronizado + dados da Firebank

Mapeamento de Status

Recomendação: Use status_payment_name em vez de status para melhor legibilidade no código.

📊 Exemplos Práticos

Verificar se PIX foi Pago

Obter Histórico de Status

Sincronizar Múltiplas Transações


⚠️ Importante

Quando a Sincronização NÃO Acontece

A sincronização automática não atualiza o status local se:
  1. Status já é final - Transação já está aprovada (2), falhada (3) ou estornada (4)
  2. Sem transactionId - Falta o ID da transação na Firebank
  3. Erro na consulta - Firebank está indisponível (retorna dados locais)

Boas Práticas

Faça:
  • Use ?payment_type=PIX para verificar pagamentos pendentes
  • Consulte com sincronização quando webhook falhar
  • Use consulta local para listagens rápidas
Evite:
  • Consultar com sincronização em loops frequentes (use webhooks)
  • Sincronizar transações já finalizadas (desnecessário)
  • Fazer polling constante (prefira webhooks)

🔗 Endpoints Relacionados

Listar Transações

Consultar múltiplas transações

Webhooks

Receber notificações automáticas

Criar Pagamento

Processar novo pagamento

Reembolso

Estornar transação

🆘 Troubleshooting

Status não sincroniza

Problema: Status local continua PENDING mesmo após pagamento Solução:
  1. Verifique se está usando ?payment_type=PIX
  2. Confirme que o transactionId existe no response_data_subacquirer_integration
  3. Verifique logs do servidor para erros na consulta à Firebank

acquirer_status retorna null

Problema: Campo acquirer_status vem vazio Causas possíveis:
  • Não forneceu o parâmetro payment_type
  • Transação não tem transactionId da Firebank
  • Erro na comunicação com a Firebank
Solução: Adicione ?payment_type=PIX na URL

Webhook falhou mas status não atualiza

Problema: Webhook retornou erro mas status continua PENDING Solução: Use consulta com sincronização:
Isso força a sincronização mesmo quando o webhook falha.