# 🚀 Enviar Alertas via API (Solução Simples)

## ✅ Problema Resolvido!

Adicionei **2 rotas API** no servidor para enviar alertas sem precisar configurar .env separado.

---

## 📋 Pré-requisitos

1. Servidor rodando: `node server-supabase.js`
2. Configurações no painel admin:
   - Evolution API (URL, Instância, API Key)
   - Mercado Pago (Access Token)
   - Alertas WhatsApp (toggles ATIVOS)

---

## 🎯 Opção 1: Enviar Alertas Atrasados (AGORA)

**Para resolver a venda de 20/10 com vencimento em 24/10:**

### Via curl (terminal):

```bash
curl -X POST http://localhost:5000/api/alertas/enviar-atrasados \
  -H "Content-Type: application/json"
```

### Via navegador:

Abra uma nova aba e execute no Console (F12):

```javascript
fetch('http://localhost:5000/api/alertas/enviar-atrasados', {
  method: 'POST'
})
.then(r => r.json())
.then(data => console.log(data));
```

### O que faz:

- ✅ Busca parcelas vencidas ou vencendo hoje
- ✅ Gera PIX para cada uma
- ✅ Envia WhatsApp com PIX
- ✅ Retorna resumo (quantos enviados, erros)

---

## 🕐 Opção 2: Teste do Sistema Automático

**Para testar se o sistema funcionaria hoje (sem enviar de verdade ainda):**

### Via curl:

```bash
curl -X POST http://localhost:5000/api/alertas/enviar-vencimentos \
  -H "Content-Type: application/json"
```

### Via navegador (Console F12):

```javascript
fetch('http://localhost:5000/api/alertas/enviar-vencimentos', {
  method: 'POST'
})
.then(r => r.json())
.then(data => {
  console.log('📊 RESULTADO:');
  console.log(`✅ Enviados: ${data.alertasEnviados}`);
  console.log(`❌ Erros: ${data.erros}`);
  console.log('\n📦 Parcelas:');
  console.table(data.parcelas);
});
```

### O que faz:

- Verifica parcelas pendentes
- Calcula dias para vencimento
- Envia alertas conforme configuração:
  - 3 dias antes → Primeiro alerta
  - No dia → Segundo alerta + PIX
  - 3 dias após → Alerta pós-vencimento
- Retorna logs detalhados

---

## 📊 Resposta Esperada

```json
{
  "success": true,
  "alertasEnviados": 2,
  "erros": 0,
  "parcelas": [
    {
      "cliente": "João Silva",
      "valor": "R$ 150,00",
      "vencimento": "24/10/2025",
      "tipo": "segundo_alerta",
      "status": "enviado"
    },
    {
      "cliente": "Maria Santos",
      "valor": "R$ 200,00",
      "vencimento": "27/10/2025",
      "tipo": "primeiro_alerta",
      "status": "enviado"
    }
  ],
  "logs": [
    "📋 Configurações: Primeiro=3d (ON), Segundo=0d (ON), Pós=3d (ON)",
    "📦 15 parcela(s) pendente(s)",
    "✅ segundo_alerta enviado para João Silva",
    "✅ primeiro_alerta enviado para Maria Santos",
    "📊 RESUMO: 2 enviados, 0 erros"
  ]
}
```

---

## 🔥 AÇÃO IMEDIATA (Para Venda 20/10)

**Execute AGORA:**

```bash
curl -X POST http://localhost:5000/api/alertas/enviar-atrasados
```

Ou no navegador:
1. Abra `http://localhost:5000`
2. Pressione F12 (Console)
3. Cole e execute:

```javascript
fetch('/api/alertas/enviar-atrasados', {method: 'POST'})
  .then(r => r.json())
  .then(d => console.log('Resultado:', d));
```

**Isso enviará imediatamente o alerta + PIX para a parcela vencendo hoje!**

---

## 🤖 Automatização com Cron

Para executar automaticamente às 09:00 todos os dias:

### Editar cron:

```bash
crontab -e
```

### Adicionar linha:

```cron
0 12 * * * curl -X POST http://localhost:5000/api/alertas/enviar-vencimentos -H "Content-Type: application/json" >> /home/tiago/Downloads/app_estoque_v1.0.0/logs/alertas-api.log 2>&1
```

**Nota:** `0 12` em UTC = 09:00 em Brasília (UTC-3)

### Criar diretório de logs:

```bash
mkdir -p /home/tiago/Downloads/app_estoque_v1.0.0/logs
```

---

## ✅ Verificar se Funcionou

### 1. Ver logs do servidor:

O servidor mostrará no terminal:

```
🔔 Iniciando envio de alertas de vencimento...
📋 Configurações: Primeiro=3d (ON), Segundo=0d (ON), Pós=3d (ON)
📦 15 parcela(s) pendente(s)
✅ segundo_alerta enviado para João Silva
📊 RESUMO: 2 enviados, 0 erros
```

### 2. Verificar no banco:

```sql
SELECT * FROM mensagens_whatsapp 
ORDER BY created_at DESC 
LIMIT 10;
```

### 3. Verificar PIX gerado:

```sql
SELECT numero_parcela, valor, pix_qr_code 
FROM venda_parcelas 
WHERE pix_qr_code IS NOT NULL
ORDER BY created_at DESC;
```

---

## 🎯 Vantagens desta Solução

| Aspecto | Benefício |
|---------|-----------|
| **Sem .env extra** | Usa configurações do servidor |
| **Sem permissões** | Não precisa chmod |
| **Fácil de testar** | Um curl e pronto |
| **Logs imediatos** | Vê resultado na hora |
| **Cron simples** | Uma linha apenas |
| **Debug fácil** | Logs no terminal do servidor |

---

## 🔍 Troubleshooting

### Erro: "Cannot POST /api/alertas/..."

**Causa:** Servidor não está rodando  
**Solução:**
```bash
node server-supabase.js
```

### Erro: "Evolution API não responde"

**Causa:** Evolution não configurada  
**Solução:** Painel Admin → Configurações → Evolution API

### Erro: "Nenhuma parcela encontrada"

**Causa:** Não há parcelas pendentes hoje  
**Solução:** Isso é normal! Sistema está ok.

### Alertas não chegam

**Verificar:**
1. Evolution API online?
2. Instância conectada?
3. Cliente tem WhatsApp?
4. Número correto (apenas dígitos)?

---

## 📅 Cronograma de Uso

### Hoje (24/10):
```bash
# Resolver venda de 20/10
curl -X POST http://localhost:5000/api/alertas/enviar-atrasados
```

### Configurar automação:
```bash
# Adicionar ao cron
crontab -e
```

### Amanhã (25/10) às 09:01:
```bash
# Verificar se executou
tail logs/alertas-api.log
```

---

## 💡 Dicas

### Teste sem enviar:

Se quiser só ver quais alertas seriam enviados:

```javascript
// No console do navegador
fetch('/api/alertas/enviar-vencimentos', {method: 'POST'})
  .then(r => r.json())
  .then(d => {
    console.log(`Seriam enviados ${d.alertasEnviados} alertas`);
    console.table(d.parcelas);
  });
```

### Forçar envio para uma parcela específica:

Você pode criar uma rota customizada ou usar o sistema de vendas → Parcelas → Botão "PIX" + Chat WhatsApp.

---

## ✅ Checklist Final

- [ ] Servidor rodando (`node server-supabase.js`)
- [ ] Evolution API configurada no admin
- [ ] Mercado Pago configurado no admin
- [ ] Alertas ATIVOS no admin
- [ ] Executou `/api/alertas/enviar-atrasados` (resolveu venda 20/10)
- [ ] Adicionou ao cron (automação futura)
- [ ] Testou e viu resultado no console

---

**🎉 Sistema pronto! Muito mais simples que scripts separados!** ✨

**Qualquer dúvida, os logs aparecem no terminal do servidor.** 📊
