22 de agosto de 2026
En un SaaS de códigos QR, la parte que más importa no es el QR
Cuando construimos QRCodePeru, la parte técnicamente interesante no fue generar el
código QR — eso es una librería bien documentada, cuestión de minutos. Lo interesante fue diseñar la
ruta que atiende cada escaneo: /r/:code, la que redirige al destino real detrás de un QR dinámico.
Por qué esa ruta es distinta a todo lo demás en la aplicación
El resto de la aplicación (el dashboard, el editor de QR, las analíticas) lo usa el dueño del negocio, unas pocas veces al día. La ruta de redirección la usa cualquiera que escanee un código impreso — en un menú de restaurante, una tarjeta de presentación, un afiche. El tráfico ahí no tiene relación con cuántos usuarios tiene la plataforma: un solo QR bien ubicado puede recibir cientos de escaneos en una hora.
Eso cambia las prioridades de diseño. Si esa ruta comparte recursos con el resto de la aplicación, un pico de escaneos puede degradar el dashboard de todos los demás clientes al mismo tiempo — un problema de un solo QR se convierte en un problema de toda la plataforma.
Cómo la aislamos
La ruta de redirección resuelve el destino desde una caché en Redis, no consultando la base de datos principal en cada escaneo. El registro del evento (para las analíticas: país, ciudad, sistema operativo) se hace de forma asíncrona, en una cola — el huésped que escanea no espera a que ese registro termine para ser redirigido. Si la cola se atrasa, las analíticas llegan unos segundos tarde; el escaneo en sí nunca se ve afectado.
Es el mismo principio que usamos en el motor de reservas B2C de HotelPerusoft: la parte del sistema que un tercero externo toca directamente (un huésped reservando, un cliente escaneando un QR) se diseña para que un problema ahí no se convierta en un problema para todos los demás usuarios de la plataforma.
La lección más general
Al diseñar un sistema con una ruta pública de alto tráfico, la pregunta no es “¿cómo hago esto rápido?” sino “¿qué pasa cuando esto recibe diez veces el tráfico que espero, en el peor momento posible?”. Esa pregunta es la que determina si un producto aguanta crecer, o si el día que un cliente tiene éxito con su QR, es el día que su código deja de funcionar.