# 🧪 Como Testar PIX - Guia Completo ## 📋 **Pré-requisitos para Teste** Antes de testar, certifique-se que: - ✅ Deploy foi feito para o servidor - ✅ SQL foi aplicado no Supabase - ✅ Credenciais Mercado Pago configuradas no .env - ✅ Servidor reiniciado com PM2 --- ## 🔧 **1. Verificar Configuração no Servidor** ### **Conectar no servidor:** ```bash ssh tiago@192.168.195.145 cd ~/app_estoque ``` ### **Verificar se .env está configurado:** ```bash cat .env | grep MERCADOPAGO ``` **Deve mostrar algo como:** ``` MERCADOPAGO_ACCESS_TOKEN=TEST-1234567890-abcdef... MERCADOPAGO_PUBLIC_KEY=pk_test_1234567890abcdef... BASE_URL=http://192.168.195.145:5000 ``` ### **Verificar se servidor está rodando:** ```bash pm2 status pm2 logs liberi-kids --lines 20 ``` --- ## 🗄️ **2. Verificar Banco de Dados** ### **No painel do Supabase:** 1. Acesse: https://supabase.com/dashboard 2. Vá em **SQL Editor** 3. Execute para verificar se colunas foram criadas: ```sql SELECT column_name, data_type, column_default FROM information_schema.columns WHERE table_name = 'vendas' AND column_name IN ('status_pagamento', 'data_pagamento', 'pix_payment_id', 'pix_qr_code', 'metodo_pagamento') ORDER BY column_name; ``` **Deve retornar 5 linhas com as colunas PIX.** --- ## 🌐 **3. Teste da Interface Web** ### **Acesse o sistema:** ``` http://192.168.195.145:5000 ``` ### **Navegue para Vendas:** 1. **Menu lateral** → **Vendas** 2. **Procure uma venda** na lista 3. **Verifique se aparece o botão PIX** (ícone 💳) --- ## 💳 **4. Teste do Modal PIX** ### **Clique no botão PIX de uma venda:** **✅ O que deve acontecer:** - Modal PIX abre instantaneamente - Título: "Pagamento PIX - Venda #123" - **QR Code** aparece (imagem quadrada) - **Código PIX** aparece (texto longo para copiar) - **Timer** mostra 30:00 (30 minutos) - **Status:** "Aguardando pagamento..." ### **❌ Se der erro, verifique:** - Console do navegador (F12) - Logs do servidor: `pm2 logs liberi-kids` - Se credenciais estão corretas no .env --- ## 🔍 **5. Teste das APIs Diretamente** ### **No servidor, teste as APIs:** ```bash # Teste 1: Gerar PIX para venda ID 1 curl -X POST http://localhost:5000/api/pix/gerar \ -H "Content-Type: application/json" \ -d '{"vendaId": 1}' # Deve retornar: payment_id, qr_code, qr_code_base64 ``` ```bash # Teste 2: Consultar status (use o payment_id do teste anterior) curl http://localhost:5000/api/pix/status/SEU_PAYMENT_ID # Deve retornar: status, payment_id, etc. ``` --- ## 📱 **6. Teste de Pagamento Real (Sandbox)** ### **Com credenciais TEST do Mercado Pago:** 1. **Gere um PIX** no sistema 2. **Use o app de teste** do Mercado Pago 3. **Escaneie o QR Code** ou **copie o código PIX** 4. **Simule o pagamento** no ambiente de teste ### **Cartões de teste Mercado Pago:** ``` Cartão aprovado: 4111 1111 1111 1111 CVV: 123 Vencimento: 12/25 Nome: APRO CPF: 12345678909 ``` --- ## 🔄 **7. Teste do Webhook (Confirmação Automática)** ### **Configurar webhook no Mercado Pago:** 1. Acesse: https://www.mercadopago.com.br/developers 2. **Sua aplicação** → **Webhooks** 3. **URL:** `http://192.168.195.145:5000/api/pix/webhook` 4. **Eventos:** `payment` ### **Teste a confirmação:** 1. **Faça um pagamento** de teste 2. **Aguarde alguns segundos** 3. **Verifique se status mudou** para "Pago" no sistema --- ## 📊 **8. Verificar Logs e Monitoramento** ### **Logs do servidor:** ```bash # Ver logs em tempo real: pm2 logs liberi-kids --lines 50 # Ver apenas erros: pm2 logs liberi-kids --err # Ver logs específicos do PIX: pm2 logs liberi-kids | grep -i pix ``` ### **Console do navegador:** - **F12** → **Console** - Procure por erros em vermelho - Verifique chamadas de API na aba **Network** --- ## ✅ **Checklist de Teste Completo** ### **Configuração:** - [ ] Credenciais Mercado Pago no .env - [ ] SQL aplicado no Supabase - [ ] Servidor rodando (pm2 status) - [ ] Build do frontend atualizado ### **Interface:** - [ ] Botão PIX aparece nas vendas - [ ] Modal PIX abre sem erro - [ ] QR Code é exibido - [ ] Código PIX aparece para copiar - [ ] Timer funciona (30 minutos) ### **APIs:** - [ ] POST /api/pix/gerar retorna payment_id - [ ] GET /api/pix/status retorna dados corretos - [ ] Webhook recebe confirmações ### **Pagamento:** - [ ] QR Code pode ser escaneado - [ ] Código PIX pode ser colado no banco - [ ] Status atualiza automaticamente - [ ] Venda fica marcada como "Paga" --- ## 🚨 **Problemas Comuns e Soluções** ### **Erro: "Access token inválido"** ```bash # Verifique se token está correto: cat .env | grep MERCADOPAGO_ACCESS_TOKEN # Deve começar com TEST- ou APP- ``` ### **Erro: "QR Code não aparece"** ```bash # Verifique logs: pm2 logs liberi-kids | grep -i error # Reinstale dependência: npm install mercadopago ``` ### **Erro: "Webhook não funciona"** - Verifique se URL está correta no Mercado Pago - Teste se servidor está acessível externamente - Configure firewall se necessário ### **Erro: "Modal não abre"** - Verifique console do navegador (F12) - Limpe cache do navegador (Ctrl+F5) - Verifique se build foi feito corretamente --- ## 🎯 **Teste Rápido (2 minutos)** ```bash # 1. Conectar no servidor ssh tiago@192.168.195.145 # 2. Verificar status cd ~/app_estoque && pm2 status # 3. Testar API curl -X POST http://localhost:5000/api/pix/gerar -H "Content-Type: application/json" -d '{"vendaId": 1}' # 4. Acessar sistema # http://192.168.195.145:5000 → Vendas → Botão PIX ``` **Se tudo funcionar, seu PIX está 100% operacional!** 🎉 --- ## 📞 **Suporte** Se encontrar problemas: 1. **Verifique os logs** primeiro 2. **Teste as APIs** diretamente 3. **Confirme as credenciais** do Mercado Pago 4. **Reinicie o servidor** se necessário **Seu sistema PIX está pronto para processar pagamentos reais!** 💳🏦