rastuci
E-commerce completo con pagos, envíos y panel de administración
El Problema
Una marca de ropa infantil necesita una tienda online profesional con métodos de pago locales, integración de envíos y un panel admin para gestionar todo de forma independiente.
La Solución
Una plataforma e-commerce completa con integración MercadoPago, calculador de envíos, gestión de inventario y panel admin completo — todo hecho a medida para el mercado argentino.
Arquitectura
Tienda pública Next.js con catálogo de productos y flujo de checkout
Dashboard admin protegido para gestión de productos, pedidos e inventario
API routes Next.js para pedidos, productos, pagos y envíos
PostgreSQL en Neon con Prisma Decimal para valores monetarios
Integración MercadoPago con procesamiento de webhooks para notificaciones de pago
Integración de API de envíos para cálculo de tarifas y seguimiento
Características Clave
Integración de pagos MercadoPago
Flujo de checkout MercadoPago completo con confirmación de pago via webhooks
Calculador de envíos con múltiples transportistas
Tarifas de envío en tiempo real de múltiples transportistas según destino y peso
Catálogo de productos con variantes
Productos con variantes de talle y color, seguimiento de stock por variante
Gestión de inventario con seguimiento de stock
Deducción automática de stock al comprar, alertas de bajo stock y gestión de reposición
Gestión de pedidos con flujo de estados
Los pedidos fluyen por estados: pendiente → pagado → preparando → enviado → entregado
Panel admin con analíticas
Resumen de ventas, productos top, gráficos de ingresos y gestión de pedidos en un lugar
+4 more features in the repo
Bajo el Capó
Pipeline de Webhooks de Pagos
Los webhooks de MercadoPago se reciben, se verifica idempotencia para evitar procesamiento duplicado, se actualiza el estado del pedido y se envía email de confirmación — todo en un flujo atómico.
- MercadoPago webhook
- Idempotency check
- Order update
- Email notification
Manejo Decimal de Precios
Todos los valores monetarios usan Prisma Decimal en vez de floats de JavaScript — eliminando errores de redondeo de punto flotante en cálculos financieros.
- Price stored as Decimal
- Arithmetic with Decimal
- Display formatted string