Move MD files and add an AGENTS.md
This commit is contained in:
@@ -1,99 +0,0 @@
|
||||
# Solución de Problemas - PayPal
|
||||
|
||||
## Si ves "Error al procesar el pago con PayPal"
|
||||
|
||||
### Paso 1: Abre la Consola del Navegador
|
||||
1. Presiona **F12** o **Cmd+Option+I** (Mac)
|
||||
2. Ve a la pestaña **Console**
|
||||
|
||||
### Paso 2: Busca el mensaje de error
|
||||
Cuando hagas clic en "Pagar con PayPal", deberías ver en la consola:
|
||||
- `CSRF Token encontrado: Sí`
|
||||
- `Response status: 200`
|
||||
- `Response data: {"redirect": "https://www.sandbox.paypal.com/..."}`
|
||||
- `Redirigiendo a: https://www.sandbox.paypal.com/...`
|
||||
|
||||
### Paso 3: Interpreta los errores
|
||||
|
||||
#### Error: "CSRF Token encontrado: No"
|
||||
**Solución:**
|
||||
- El formulario no tiene token CSRF
|
||||
- Asegúrate de que `{% csrf_token %}` esté en el template checkout.html
|
||||
- Recarga la página (Ctrl+Shift+R)
|
||||
|
||||
#### Error: "Response status: 403"
|
||||
**Causa:** Error de CSRF token o permisos
|
||||
**Solución:**
|
||||
- Verifica que estés logueado
|
||||
- Limpia cookies: Settings > Clear browsing data > Cookies
|
||||
- Recarga la página
|
||||
|
||||
#### Error: "Response status: 500"
|
||||
**Causa:** Error en el servidor
|
||||
**Solución:**
|
||||
- Ve a la terminal donde corre Django
|
||||
- Busca el mensaje de error (stack trace en rojo)
|
||||
- Verifica que `PAYPAL_CLIENT_ID` y `PAYPAL_CLIENT_SECRET` estén correctos en settings.py
|
||||
|
||||
#### Error: "Error inesperado al procesar el pago"
|
||||
**Solución:**
|
||||
- Mira en la consola qué dice exactamente
|
||||
- Copia el error completo
|
||||
- Revisa los logs de Django en la terminal
|
||||
|
||||
### Paso 4: Verifica el Backend
|
||||
|
||||
En la terminal donde corre Django, deberías ver:
|
||||
```
|
||||
[00/Month/2026 12:00:00] "POST /tienda/paypal/create-payment/ HTTP/1.1" 200 123
|
||||
```
|
||||
|
||||
Si ves un error (4xx o 5xx), el problema está en el servidor.
|
||||
|
||||
### Paso 5: Test Manual
|
||||
|
||||
Ejecuta en la terminal:
|
||||
```bash
|
||||
cd /home/daniel/projects/proyecto/proyecto2/proyecto
|
||||
.venv/bin/python test_paypal.py
|
||||
```
|
||||
|
||||
Si todo está bien, deberías ver:
|
||||
```
|
||||
✓ paypalrestsdk importado correctamente
|
||||
✓ Configuración de PayPal aplicada
|
||||
✓ Pago creado exitosamente
|
||||
```
|
||||
|
||||
## Checklist de Configuración
|
||||
|
||||
- [ ] `pip install paypalrestsdk` (verificar con: `.venv/bin/pip list | grep paypal`)
|
||||
- [ ] `PAYPAL_CLIENT_ID` en settings.py (no vacío)
|
||||
- [ ] `PAYPAL_CLIENT_SECRET` en settings.py (no vacío)
|
||||
- [ ] `PAYPAL_MODE = 'sandbox'` en settings.py
|
||||
- [ ] `{% csrf_token %}` en checkout.html
|
||||
- [ ] El usuario está autenticado (login requerido)
|
||||
- [ ] El carrito tiene items
|
||||
|
||||
## Credenciales de Prueba
|
||||
|
||||
Si necesitas nuevas credenciales:
|
||||
1. Ve a https://sandbox.paypal.com/
|
||||
2. Login con tu cuenta
|
||||
3. Ve a Dashboard > Apps & Credentials
|
||||
4. Copia Client ID y Secret
|
||||
5. Actualiza en settings.py
|
||||
6. Recarga la página
|
||||
|
||||
## Logs Útiles
|
||||
|
||||
Para ver más detalles, edita `/tienda/views.py` y busca la función `create_paypal_payment`:
|
||||
- Ya tiene `print()` para loguear errores
|
||||
- Verás los mensajes en la terminal de Django
|
||||
|
||||
## Contacto con PayPal
|
||||
|
||||
Si todo lo anterior no funciona:
|
||||
- El problema puede ser con las credenciales de PayPal
|
||||
- Verifica que sean del **SANDBOX** (no production)
|
||||
- Intenta regenerar las credenciales en paypal.com
|
||||
Reference in New Issue
Block a user