# Integração Mercado Pago - SGDelivery

## Problema Resolvido
O erro 404 foi causado pelo sistema de roteamento do SGDelivery que usa `.htaccess` para redirecionar todas as requisições para `app.php`. Os caminhos relativos (`../../criar_preferencia.php`) não funcionavam porque todas as URLs são processadas pelo sistema de rotas.

## Solução Implementada

### 1. Integração no Sistema de Rotas
- Adicionados métodos na classe `Carrinho` (app/carrinho.php):
  - `mercadopago()`: Criar preferência de pagamento
  - `teste()`: Teste de conectividade
  - `sucesso()`, `falha()`, `pendente()`: Páginas de retorno
  - `webhook()`: Receber notificações do MP

### 2. URLs Atualizadas no Frontend
**Antes:**
```javascript
fetch('../../criar_preferencia.php', ...)  // ❌ Erro 404
```

**Depois:**
```javascript
fetch('/sgdelivery/cardapio/carrinho/mercadopago', ...)  // ✅ Funciona
```

### 3. Rotas Disponíveis
- `GET /sgdelivery/cardapio/carrinho/teste` - Teste de conectividade
- `POST /sgdelivery/cardapio/carrinho/mercadopago` - Criar preferência
- `GET /sgdelivery/cardapio/carrinho/sucesso` - Página de sucesso
- `GET /sgdelivery/cardapio/carrinho/falha` - Página de falha  
- `GET /sgdelivery/cardapio/carrinho/pendente` - Página pendente
- `POST /sgdelivery/cardapio/carrinho/webhook` - Webhook MP

### 4. Botões de Debug Atualizados
- 🔍 Diagnosticar: Info do SDK e dados
- ✅ Teste Simples: Testar criação de preferência
- 🐘 Teste PHP: Teste conectividade classe
- ⚡ Teste Mínimo: Teste conectividade classe
- 🎯 Teste Absoluto: Usar rota do sistema
- 📍 Teste Classe: Testar método teste()

## Como Testar

1. **Acesse o carrinho:** `/sgdelivery/cardapio/carrinho`

2. **Selecione Mercado Pago** como forma de pagamento

3. **Use os botões de debug** para verificar conectividade:
   - Clique em "📍 Teste Classe" - deve retornar JSON com sucesso
   - Clique em "✅ Teste Simples" - deve criar preferência

4. **Se tudo funcionar:** O botão do Mercado Pago deve aparecer automaticamente

## Arquivos Modificados

### app/carrinho.php
- Adicionados métodos para integração MP
- Sistema de rotas respeitado
- Headers CORS configurados

### app/views/public/carrinho.html  
- URLs atualizadas para usar sistema de rotas
- Novos botões de debug adicionados
- Funções JS atualizadas

## Credenciais Usadas
- **Access Token:** TEST-4518426224653735-121715-d6c62a2f6bb8b97db47b8de264302d1c-1576725813
- **Public Key:** TEST-1458692686240078-121715-67bb23ba2ad78d1b7b01e7a808ad8c20-1576725813

## Próximos Passos
1. Testar o fluxo completo de pagamento
2. Validar webhook de notificações
3. Substituir credenciais de teste por produção quando aprovado
4. Remover botões de debug após validação

## Notas Técnicas
- O sistema SGDelivery usa autoload personalizado
- Todas as classes estendem PHPFrodo
- Rotas seguem padrão: /classe/método/
- baseUri é configurado automaticamente pelo sistema
