Primeiro commit

This commit is contained in:
2025-10-14 14:04:17 -03:00
commit 33d8645eb4
109 changed files with 55424 additions and 0 deletions

256
TESTAR-PIX-COMPLETO.md Normal file
View File

@@ -0,0 +1,256 @@
# 🧪 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!** 💳🏦