📊 Estado del Sistema
✅ Base de datos conectada correctamente
📁 Tablas encontradas: 26
📦 Productos en BD: 16
📦 API de Productos
GET
/api/productos.php
Paginado
Obtener todos los productos con filtros opcionales
// Parámetros opcionales:
?page=1 // Página (default: 1)
&limit=12 // Productos por página (default: 12)
&categoria=bateria // Filtrar por categoría (slug)
&marca=Bosch // Filtrar por marca
&search=bateria // Búsqueda por nombre/descripción
&destacado=true // Solo productos destacados
&nuevo=true // Solo productos nuevos
&precio_min=50 // Precio mínimo
&precio_max=200 // Precio máximo
&sort=precio_asc // Ordenar (precio_asc, precio_desc, nombre_asc, nuevo, popular)
GET
/api/productos.php?id=1
Obtener un producto específico por ID (incluye imágenes, especificaciones, características)
POST
/api/productos.php
Admin
Crear nuevo producto
PUT
/api/productos.php?id=1
Admin
Actualizar producto existente
📁 API de Categorías
GET
/api/categorias.php
Obtener todas las categorías activas
GET
/api/categorias.php?slug=bateria
Obtener categoría por slug
🏷️ API de Marcas
GET
/api/marcas.php
Obtener todas las marcas activas
🛒 API de Pedidos
POST
/api/pedidos.php
Crear nuevo pedido
// Body JSON:
{
"cliente_email": "cliente@example.com",
"cliente_nombre": "Juan Pérez",
"cliente_telefono": "+1234567890",
"envio_direccion": "Calle Principal 123",
"envio_ciudad": "Ciudad",
"items": [
{
"id": 1,
"sku": "BAT-001",
"nombre": "Batería 12V",
"precio_unitario": 89.99,
"cantidad": 2,
"imagen": "...",
"categoria": "Baterías",
"marca": "Bosch"
}
],
"cupon_codigo": "DESCUENTO10" // Opcional
}
GET
/api/pedidos.php?numero_orden=RP20260118xxxx
Obtener pedido por número de orden
🎟️ API de Cupones
POST
/api/cupones/validar.php
Validar cupón de descuento
// Body JSON:
{
"codigo": "BIENVENIDO10",
"subtotal": 150.00,
"email": "cliente@example.com" // Opcional
}
📋 Formato de Respuestas
✅ Respuesta Exitosa
{
"success": true,
"message": "Operación exitosa",
"data": { ... }
}
❌ Respuesta de Error
{
"success": false,
"message": "Error en la operación",
"errors": { ... } // Opcional
}
📄 Respuesta Paginada
{
"success": true,
"data": [ ... ],
"pagination": {
"total": 16,
"page": 1,
"limit": 12,
"pages": 2
}
}