Proyecto · Gestión comercial para una tienda peruana · 2026
Tienda App
Facturas y boletas con IGV, compras, cotizaciones, inventario con kardex y carga masiva desde Excel: lo que necesita una tienda de barrio para dejar el cuaderno, con un frontend en Vue y una API en NestJS.

Ficha
- Mi parte
- Todo: el modelo de datos, la API, el frontend y el despliegue, con ayuda de Claude en casi cada commit.
- Con quién
- Proyecto personal
- Cuándo
- 2026
- Hoy
- Desplegada (Vercel + Render) · repositorio privado
Las capturas usan una empresa y productos inventados. El repositorio es privado.
El cuaderno de la tienda
Una tienda de barrio vende arroz, aceite y gaseosa todo el día, emite boletas, compra a proveedores y tiene que saber qué se está acabando. Casi todo eso se lleva en un cuaderno.
Vender
Lo que hay en el almacén
Por qué así
Precios con IGV incluido
En la tienda se cobra el precio final. El sistema separa la base imponible después, con la tasa guardada como parámetro y no escrita en el código.
Stock y kardex juntos
Vender y registrar el movimiento ocurren en la misma transacción; anular una venta devuelve el stock.
Frontend y API separados
La interfaz en Vercel llama a «/api» y Vercel la redirige a Render: en el navegador no hay problemas de CORS y en local se usa la misma dirección.
Lo de SUNAT, después
La emisión electrónica oficial (XML firmado) quedó como módulo enchufable. Primero, que la gestión interna funcione.
Con qué
Lenguajes
- TypeScript
El mismo lenguaje en la API y en la interfaz.
Frameworks
- NestJS
- Vue
- PrimeVue
- Prisma
Doce módulos de API, la interfaz en Vue 3 y el acceso a datos tipado.
Datos
- PostgreSQL
Diecisiete modelos, separados por empresa.
Infraestructura
- Vercel
- Render
El frontend en Vercel; la API y la base en Render.
IA
- Claude
Desarrollo asistido de punta a punta.
En código
- modelos de datos
- 17
- módulos de la API
- 12
- líneas entre API e interfaz
- ~9900
- pruebas automatizadas, todavía
- 0
Lo que no salió
No tiene pruebas automatizadas: todo se probó a mano. Y el plan gratuito de Render borra la base a los 30 días, así que la demo no es un lugar para guardar nada.
- El visor del PDF funcionaba en local y en producción no abría: el navegador bloqueaba la ventana porque se abría después de esperar al servidor. Lo encontré desplegando.
- La facturación electrónica ante SUNAT no existe todavía.
- No hay ningún negocio usándola: es un sistema completo esperando su primera tienda.
El comprobante
Qué me llevé
- Las reglas del negocio peruano (IGV, series, notas de crédito) pesan más que la tecnología.
- Desplegar temprano encuentra errores que en local no existen.
- Construir rápido con IA deja una deuda clara: las pruebas que no escribí.