
Pizote: escaneo automático de licitaciones públicas
Un SaaS en producción que escanea el mercado SICOP de Costa Rica según un calendario, cruza las licitaciones con el perfil de búsqueda de cada cliente y le dice al operador cuáles vale la pena licitar antes del cierre.
Pizote nació de un costo fácil de subestimar: la licitación que una empresa nunca vio. La contratación pública costarricense pasa por SICOP, donde los avisos, las especificaciones y las fechas se publican en muchas pantallas y documentos. Una empresa que licita con frecuencia tiene que vigilar todo eso, todos los días, y aun así no puede probar que no se le escapó nada.
Pizote convierte esa vigilancia en un sistema. Cada inquilino define perfiles de búsqueda. La plataforma escanea SICOP según el calendario del operador, cruza los avisos con esos perfiles, extrae el detalle de cada licitación y le empuja los mejores hallazgos al operador, que los marca como viables o los descarta. El producto corre en pizote.bid.
El problema
La vigilancia manual no escala más allá de unos pocos perfiles. Una cadena de búsqueda mal escrita esconde una licitación en silencio. Las fechas se mueven. Los documentos detrás de un aviso viven en páginas separadas, así que revisar una lista corta implica abrir cada uno a mano. Y la notificación termina en el correo de una sola persona, donde se pierde con facilidad.
El requisito del negocio no era recibir más licitaciones. Era tener la confianza de que una licitación relevante llegaría al operador a tiempo, con la evidencia necesaria para decidir.
El enfoque
FastAPI y PostgreSQL en el backend, Next.js en el frontend, Redis para colas y caché, un stack de Docker Compose por ambiente. Los inquilinos están aislados en la capa de datos y cada perfil de búsqueda se evalúa contra avisos recién obtenidos.
El pipeline de extracción consulta SICOP según un calendario, normaliza los campos y deduplica entre corridas. El detalle de la licitación se extrae bajo demanda, para que el operador lea la especificación sin salir de la aplicación. La detección de cambios usa un diff en Redis como acelerador y un registro durable como fuente de verdad, de modo que una caché vencida no pueda hacer que un documento cambiado parezca igual.
Las notificaciones son por inquilino: en la app, Telegram y Signal, cada canal verificado por el operador durante la configuración. El esquema se entrega como migraciones numeradas e idempotentes, y producción corre las mismas imágenes que desarrollo.
El resultado
Pizote está en producción en pizote.bid para empresas clientes. La suite tiene 1,086 pruebas de backend más 109 de frontend, a lo largo de 51 migraciones. La construcción fue del primer commit el 2026-08-09 a producción en unos dos meses y medio, 195 commits.
El operador ahora revisa una lista corta en lugar de un mercado, y cada descarte es una decisión registrada en vez de una pestaña olvidada.
Abrir Pizote
Producto en producción. La página pública es abierta; cada espacio de trabajo de cliente se aprovisiona aparte y requiere cuenta.
Conclusión clave
El descubrimiento de licitaciones es un problema de corrección, no de scraping. El valor está en probar que nada relevante se quedó fuera.
¿Listo para construir su plataforma?
Una llamada de 30 minutos para ver si soy el aliado correcto. Sin discurso de venta. Sin presión. En español o inglés, solo una conversación sobre lo que necesita construir.
Cada proyecto se define y se cotiza de forma individual. No hay tarifario y no hay precio antes de entender el sistema. El primer paso es una llamada de 30 minutos, en español o inglés; de ahí sale una lectura clara del alcance, la secuencia y lo que requiere el trabajo.