Lumbre Software
Software de Lumbre · pago único, sin suscripción Cómo tratamos tus datos Más proyectos de Lumbre

Pide datos, documentos y firmas sin construir otra app

DataCollector es el servicio que recibe una solicitud de tu microapp, entrega a la persona una liga personal por correo o WhatsApp y devuelve la respuesta completa por API. Formularios con adjuntos, fotos, audio, video y firma; panel de administración, recordatorios y acuse en PDF. Se instala en tu propio hosting.

DataCollector

Una instalación atiende a todas las aplicaciones de la empresa. Cada una tiene su clave de API, su marca y su propio correo de envío; las solicitudes de una no se mezclan con las de otra.

PHP 8.1 o superior MySQL/MariaDB Servidor propio

Lumbre Software / Gestión / Captación de datos

DataCollector

Captador de datos para microapps: ligas personales, formularios con archivos y firmas, recordatorios y API JSON, todo en tu servidor.

Cuando una app necesita algo de una persona —una copia del INE, la autorización de una asamblea, los datos de un paciente, una foto del medidor o la firma de un contrato— el problema no es el formulario: es entregarlo, saber si lo abrieron, recordarlo sin parecer cobrador y recibir la respuesta ordenada. DataCollector hace ese trabajo y deja la app libre para lo suyo.

La app crea una solicitud por API y DataCollector devuelve una liga personal con token, el texto listo para WhatsApp y un botón para enviarla. La persona abre la liga en el teléfono, contesta y adjunta lo que haga falta. El panel muestra quién ya respondió y quién no; la app consulta el resultado o recibe un webhook firmado. No hay cuentas para las personas ni apps que instalar.

Para quién es

  • Administración de condominios Cuotas, asambleas, autorizaciones, comprobantes y datos de vecinos sin perseguir mensajes en tres grupos distintos.
  • Escuelas y guarderías Inscripciones, permisos de salida, fichas médicas y autorizaciones de imagen con acuse de lo que firmó cada familia.
  • Recursos humanos Documentación de ingreso, cartas, encuestas internas y firmas de políticas antes del primer día.
  • Despachos, clínicas y constructoras Expedientes, consentimientos, evidencias de obra y reportes con foto, audio o video desde el teléfono.
  • Equipos que ya tienen una app Si la microapp sabe qué pedir, DataCollector pone la captación, el correo, los recordatorios y el panel. No hay que programar el formulario otra vez.

Cómo funciona

  1. Tu app crea la solicitud Un POST /api/v1/solicitudes con el correo, el título y el esquema de campos. Si ya existe una referencia igual, la devuelve en vez de duplicarla.
  2. DataCollector entrega la liga La respuesta incluye la liga personal, el mensaje para WhatsApp y el botón wa.me. Si el correo de la empresa está configurado, también la envía por SMTP.
  3. La persona contesta El formulario se adapta al teléfono, guarda un borrador en el navegador y acepta archivos, fotos, audio, video y firma. Sin JavaScript sigue funcionando por POST normal.
  4. La app recibe la respuesta Consulta la solicitud, el historial o el paquete en ZIP; o espera el webhook con firma HMAC. El panel muestra avance, recordatorios y vencimientos.

El panel y el formulario, con capturas reales

Estas imágenes salen de una instalación real con datos de ejemplo: un condominio que pide la aprobación de la cuota y los datos de cada vivienda. Los nombres y las cifras son de muestra; la pantalla es la que entrega el producto.

Panel de DataCollector: pendientes, vistas, respondidas, vencidas y las últimas solicitudes con su estado.
Inicio del panel: cuántas solicitudes esperan, cuántas ya abrieron la liga, cuántas respondieron y cuáles vencieron. Abajo, las últimas solicitudes con su folio y estado.
Lista de solicitudes con buscador, filtros por aplicación y estado, y recordatorios enviados.
Solicitudes: buscador por título, correo, folio o referencia; filtros por aplicación y estado; y cuántos recordatorios lleva cada una.
Formulario público en el teléfono: datos de la vivienda, decisión sobre la cuota, comentario, comprobante y consentimiento.
El formulario público tal como lo ve la persona: marca de la empresa, solicitud, campos, adjuntos y consentimiento. Se ve igual en escritorio y en teléfono.

Lo que trae

  • Ligas personales con token Cada solicitud tiene su liga única, con caducidad y clave de acceso opcional. En la base sólo se guarda el hash del token y una copia cifrada para poder reenviarla sin crear otra.
  • Formularios completos, sin programar Texto, párrafo, correo, teléfono, número, moneda, fecha, hora, opciones, sí/no, casillas, tabla, ubicación, consentimiento, archivo y firma. El esquema viaja en la misma llamada de la API.
  • Adjuntos desde el teléfono Fotos, PDF, audio y video; el navegador comprime las fotos y permite grabar cámara o micrófono antes de enviar. Límite por archivo y total configurables.
  • Seis temas y tu marca Claro, oscuro, marino, bosque, atardecer o automático según el teléfono. El color, el nombre y el logo de la empresa mandan en el formulario, el correo y el acuse.
  • Correo desde tu propio SMTP Cada aplicación configura su remitente y servidor SMTP, con STARTTLS o SSL. También existe el modo registro para probar sin enviar nada.
  • Recordatorios y vencimientos El cron revisa cada cinco minutos: reenvía, recuerda, cancela o purga según la política de cada aplicación. Sin recordatorios infinitos ni correos duplicados.
  • Acuse y paquete de respuesta La persona recibe un acuse en PDF de una hoja y la empresa puede descargar la respuesta con todos sus adjuntos en un ZIP.
  • Panel con varias aplicaciones Una instalación atiende a todas las apps o empresas del grupo. Cada aplicación tiene su clave de API, su marca, su correo, su retención y sus webhooks.
  • API JSON y webhooks firmados Crear, consultar, recordar, reenviar, cancelar, descargar y borrar por /api/v1. Los avisos salen firmados con HMAC y con destinos validados.
  • Sin dependencias raras PHP 8.1 con PDO y funciones. No necesita Composer, Node, Redis ni colas: se copia, se configura y funciona.

Datos, seguridad y control

Los datos quedan en tu servidor. DataCollector no es un servicio alojado por Lumbre: tú eliges dónde vive la base, dónde se guardan los adjuntos y quién entra al panel. Nosotros no vemos ni administramos tus datos.

Todo va por HTTPS. El servicio exige TLS por omisión. Las ligas usan tokens de 32 bytes; los adjuntos y los tokens se cifran en reposo con AES-256-GCM; las contraseñas del panel se guardan con bcrypt.

Lo que sí hace

  • Exigir HTTPS y hashear tokens y contraseñas.
  • Cifrar adjuntos, firmas y tokens en reposo.
  • Aislar cada aplicación y su clave de API.
  • Auditar accesos y cambios del panel.
  • Firmar los webhooks y validar su destino.
  • Purgar datos según la retención que definas.

Lo que no hace por sí solo

  • No cifra por dentro los campos de MySQL: eso rompería búsquedas y la API.
  • No sustituye el cifrado de disco del proveedor ni sus respaldos.
  • No es un servicio en la nube: hay que instalarlo y mantenerlo.
  • No envía nada sin un SMTP o una liga compartida a mano.

Nuestra recomendación: activa el cifrado de disco o volumen del proveedor, usa un usuario de base de datos con permisos mínimos, sirve el panel detrás de HTTPS y conserva respaldos de la base y de la carpeta datos/ fuera del servidor. La carpeta de adjuntos debe quedar fuera de public/; el paquete ya viene preparado así.

Instalación

Servidor
Linux con Apache y mod_rewrite (o nginx con la regla equivalente). Hosting compartido con PHP o VPS.
PHP
8.1 o superior con pdo_mysql, openssl, mbstring, json y fileinfo.
Base de datos
MySQL 5.7 o superior, o MariaDB 10.3 o superior. El usuario necesita permiso para crear tablas en su base.
Disco
Una carpeta datos/ con permiso de escritura para el usuario del servidor web, fuera de public/.
HTTPS y cron
Certificado válido en el dominio del servicio y una tarea cada cinco minutos para recordatorios, webhooks y purga.
  1. Sube el paquete Descomprime el ZIP en una carpeta del servidor. El DocumentRoot del sitio apunta a public/; la configuración y los datos quedan fuera del alcance del navegador.
  2. Crea la base y su usuario Desde el panel del hosting o por consola. El instalador aplica el esquema y la migración es idempotente: también sirve para actualizar.
  3. Abre el instalador Visita https://tu-dominio/instalar. Revisa requisitos, escribe los datos de la base y crea la cuenta del panel. Al terminar muestra la clave de API una sola vez.
  4. Conecta tu app y el cron Pega la URL y la clave cap_… en la microapp. Programa php tools/cron.php todo cada cinco minutos con el usuario de PHP.
# en el servidor unzip datacollector-1.0.0.zip -d /var/www/datacollector chown -R www-data:www-data /var/www/datacollector/datos # DocumentRoot del sitio: /var/www/datacollector/public

Si prefieres la consola, el instalador acepta todos los datos por argumento:

php tools/instalar.php --host=127.0.0.1 --base=capta \ --usuario=capta --clave=... \ --admin=admin --admin-clave=... \ --url=https://capta.miempresa.mx --app="Mi Condominio"

Para actualizar, descomprime la versión nueva encima sin borrar config.php ni datos/; la migración de esquema corre sola al abrir el servicio. El manual completo va en LEEME.txt dentro del ZIP.

Precio y licencia

…, pago único. La licencia cubre una instalación de DataCollector con todas las aplicaciones, solicitudes y usuarios del panel que quieras dentro de ella, sin cobro por persona ni mensualidad. Incluye las actualizaciones de la versión 1.x y la asistencia en español.

La compra se cierra con Lumbre: pago con PayPal o transferencia, según el caso. El paquete que recibes incluye el manual paso a paso (LEEME.txt), el instalador web y de consola, el panel, la API y el cron. El software no vence y no llama a casa: el servicio funciona aunque Lumbre desaparezca.

¿Tienes varias empresas o clientes? Cada instalación necesita su propia licencia, pero dentro de una instalación no hay límite de aplicaciones ni de solicitudes.

Preguntas frecuentes

¿Necesito un servidor propio?

Sí. DataCollector se instala en un hosting con PHP 8.1 o superior y MySQL/MariaDB. Un hosting compartido decente alcanza para una empresa; si crece el volumen de adjuntos, se muda a un VPS sin cambiar la API ni las apps.

¿Sirve para varias aplicaciones a la vez?

Sí. Cada aplicación tiene su clave de API, su marca, su correo y su retención. Las solicitudes de una no se mezclan con las de otra, aunque compartan la misma base de datos y el mismo panel.

¿La persona tiene que instalar algo?

No. Recibe una liga por correo o WhatsApp y la abre en el navegador. Puede contestar sin cuenta y sin app. Si el envío no está configurado, la aplicación entrega la liga y el texto listo para compartir.

¿Cómo se enteran mis sistemas de que ya respondieron?

De dos maneras: consultando GET /api/v1/solicitudes/{id} o la lista filtrada por estado, o recibiendo un webhook firmado con HMAC en la URL que configures. El panel también muestra el avance en tiempo real al recargar.

¿Qué pasa con los archivos y las fotos?

Se guardan fuera de public/, con nombre de disco generado y validación por extensión y contenido. Pueden cifrarse en reposo con AES-256-GCM. La empresa los descarga uno por uno o en un ZIP con la respuesta completa; la persona recibe su acuse en PDF.

¿Los datos se guardan cifrados?

Los adjuntos, las firmas, los tokens de las ligas y las claves SMTP se cifran con AES-256-GCM. Los campos de texto quedan en MySQL tal como se capturan, porque cifrarlos rompería búsquedas, filtros y la API. Para el resto, combina el producto con cifrado de disco del proveedor, permisos mínimos de base y respaldos fuera del servidor.

¿Puedo usarlo con mi propio correo?

Sí. Cada aplicación configura su remitente, su servidor SMTP y su seguridad (STARTTLS o SSL). El correo sale a tu nombre, no desde un dominio de Lumbre. También hay un modo registro que escribe los mensajes en disco para probar sin enviar.

¿Hay demo en línea?

Las capturas de esta página son de una instalación real con datos de ejemplo; no publicamos una demo abierta porque cada instalación contiene información de personas. Si quieres verlo funcionando antes de comprar, escribe a la mesa de ayuda y coordinamos una demostración.

¿Cómo se actualiza?

Descomprime la versión nueva encima de la instalación, sin tocar config.php ni datos/. Al abrir el servicio corre la migración idempotente del esquema. Antes de actualizar, guarda una copia de la base y de la carpeta de datos.