Información operativa de la Fase 1
Privacidad y tratamiento de archivos
Factura Bonita procesa temporalmente el XML que eliges para validar un CFDI 4.0 de ingreso, mostrar su vista previa y generar el PDF que solicites.
Información que procesamos y para qué
XML y datos fiscales
El XML puede contener identificadores y datos fiscales, personales, patrimoniales o comerciales: emisor, receptor, conceptos, importes, impuestos, forma de pago, certificados, sellos y timbre fiscal.
Se envía al servidor para comprobar que el archivo es seguro y compatible, normalizarlo y devolver al mismo navegador los datos necesarios para la vista previa y el QR. Al descargar, el XML actual se envía nuevamente y se vuelve a validar; el navegador no propone datos fiscales por separado.
Logotipo y diseño
El logotipo se mantiene en el navegador mientras editas. Solo se envía al servidor al solicitar un PDF, donde se valida nuevamente. La propuesta, plantilla, paleta, tipografía, ajustes seguros del logotipo, fondo y texto del pie se envían como una configuración restringida.
Vista previa, QR y PDF
La vista previa se construye en tu navegador con la respuesta del servidor. El QR y el PDF se generan dentro de la aplicación. El PDF se devuelve directamente como descarga; Factura Bonita no adjunta el XML ni conserva una copia deliberada.
Uso sin cuenta
No necesitas crear una cuenta y la aplicación no crea un perfil de usuario. Eso hace anónimo el acceso respecto de una cuenta, pero no vuelve anónimo el XML: su contenido puede identificar a personas o empresas.
Comentarios y contacto
Si usas el formulario de comentarios, recibimos el tipo de mensaje, nombre opcional, correo electrónico, asunto y mensaje. Los usamos exclusivamente para atender tu duda o comentario y no los mezclamos con las métricas técnicas agregadas.
El mensaje se conserva en SQL Server y se programa una notificación interna por correo. Cuando exista un proveedor SMTP configurado, el contenido y tu dirección como Reply-To podrán transmitirse a ese proveedor. No enviamos una confirmación automática ni usamos tu correo para publicidad.
El plazo legal de conservación, proveedor de correo y canal para solicitar eliminación siguen pendientes de la definición legal y operativa previa al lanzamiento. Esta información no sustituye el aviso de privacidad integral.
Duración lógica y memoria
- En el navegador, las referencias al XML, logotipo, diseño, vista previa y descarga viven mientras la página las necesita. Reemplazar, quitar, reiniciar o cerrar la página cancela trabajo vigente y libera las referencias correspondientes.
- En el servidor, archivos, modelos, QR, imágenes y PDF existen durante la solicitud necesaria. Los flujos y recursos se cierran al terminar, fallar o cancelarse la operación; un render nativo de PDF que ya comenzó puede terminar antes de liberar su cupo.
- El código actual no guarda deliberadamente XML, logotipo, diseño, QR o PDF en base de datos, sesión documental, caché de aplicación ni archivos temporales. No usa localStorage o IndexedDB. Si se habilita la medición privada, sessionStorage conserva solamente el identificador aleatorio y estado técnico de esa pestaña.
- Las respuestas dinámicas y fiscales llevan instrucciones no-store. El PDF descargado sí queda en el dispositivo y bajo el control del usuario y su sistema operativo.
Liberar referencias o cerrar recursos no significa que la memoria física administrada o nativa se sobrescriba inmediatamente. El entorno de ejecución y el sistema operativo deciden cuándo reutilizarla. El proveedor de hospedaje, sus diagnósticos, volcados, respaldos y retención deben definirse antes del lanzamiento.
Medición privada del recorrido
Esta función está deshabilitada por defecto. Cuando operación la habilite, crea un identificador aleatorio por pestaña mediante crypto.randomUUID() y lo conserva solo en sessionStorage. Una recarga puede conservar la sesión; una pestaña nueva crea otra. No usamos cookies analíticas, localStorage, IP, navegador o huella digital.
Se guardan en SQL Server hitos cerrados como apertura del editor, selección o resultado de XML y logotipo, primera personalización, solicitud, generación e inicio de descarga del PDF y reinicio. No se registran cada color, fuente o zoom ni se incluyen datos fiscales, archivos, nombres, correo, importes, URLs o texto libre.
Los conteos son indicadores seudónimos y aproximados, no usuarios únicos. Pueden incluir automatizaciones o eventos manipulados. pdfDownloaded solo indica que el navegador inició la descarga, no que el archivo se abrió o conservó. La retención inicial de Development/Testing es 90 días; Production exige una decisión explícita y permanece deshabilitado hasta cerrar la revisión de privacidad.
QR de verificación y portal del SAT
Factura Bonita genera localmente el contenido del QR a partir del CFDI normalizado. La URL de verificación incluye, en este orden, el UUID, RFC del emisor, RFC del receptor, total y el fragmento requerido del sello del emisor.
Factura Bonita no consulta automáticamente al SAT. La información del QR se comunica al portal oficial del SAT únicamente cuando tú decides escanearlo o abrirlo. Ese portal es un sitio externo sujeto a sus propias prácticas y aviso de privacidad.
Cookie técnica, conexión y registros
Cookie estrictamente necesaria
La aplicación usa la cookie de sesión .FacturaBonita.Antiforgery para ayudar a impedir que otro sitio ordene cargas o descargas en tu nombre. Es HttpOnly, no se expone a JavaScript, usa SameSite=Strict, no tiene dominio compartido ni fecha de persistencia y es segura bajo HTTPS fuera de los entornos locales.
Registros operativos
El código propio registra códigos de resultado, duración y un correlationId para relacionar una falla técnica. No registra XML, RFC, UUID, sellos, certificados, nombres de archivos, logotipos, texto del pie ni direcciones IP. El correlationId no es una identidad de usuario.
La aplicación produce métricas técnicas agregadas mediante contadores e histogramas en memoria: cargas del editor, resultados y duración de XML/PDF, primera interacción de personalización, límites, capacidad y errores clasificados. Sus dimensiones son categorías cerradas; no incluyen correlationId, datos fiscales, archivos, importes, IP, navegador ni valores escritos por el usuario. Sin identificadores persistentes, estos conteos por etapa no permiten reconstruir un recorrido individual.
Todo servicio en Internet recibe metadatos técnicos de la conexión, como la dirección de red, aunque la aplicación no la escriba en sus propios logs. El acceso, retención y posible registro por el proveedor o proxy todavía no están definidos.
Lo que no existe actualmente
No hay analítica de marketing, publicidad, rastreadores, cookies analíticas o de marketing, CORS, sesión documental ni solicitudes automáticas a Google Fonts, al SAT u otros terceros. Las métricas técnicas no tienen exportador; la medición privada, cuando se habilite, usa exclusivamente SQL Server propio.
Errores, cancelaciones y reemplazos
Si un XML se rechaza, puedes reemplazarlo desde el mismo recuadro. Un error al generar el PDF conserva en el navegador el XML, logotipo y diseño que sigan siendo válidos para permitir un reintento manual. Un logotipo rechazado no reemplaza el anterior.
Reiniciar o cerrar cancela las solicitudes que aún son cancelables y libera referencias transitorias. Reemplazar un archivo invalida respuestas anteriores para que una respuesta tardía no cambie el trabajo actual. Los errores enviados al navegador usan mensajes seguros y un identificador de correlación cuando ayuda al soporte, sin devolver el contenido fiscal.
Alcance y responsabilidades
- Factura Bonita crea una representación visual; no es el SAT ni un PAC.
- No timbra, cancela ni modifica el XML, no valida criptográficamente los sellos y no garantiza el estado fiscal del comprobante.
- Quien carga un archivo debe contar con autorización o facultades suficientes para procesar la información que contiene.
- Las funciones y métricas técnicas actuales sirven para operar, validar, previsualizar y generar el PDF. No existen finalidades secundarias de publicidad o analítica de marketing que debas aceptar para usar el editor.
Aviso de privacidad legal pendiente
La Ley Federal de Protección de Datos Personales en Posesión de los Particulares vigente define el tratamiento de forma amplia y exige informar sus características. El aviso integral debe identificar al responsable, su domicilio, datos y finalidades, opciones para limitar uso, mecanismos ARCO y cómo se comunicarán cambios.
Antes del lanzamiento faltan decisiones que no pueden inferirse del código:
- identidad legal y domicilio del responsable;
- persona o área y canal autorizado para solicitudes ARCO, revocación y limitación de uso;
- medio para comunicar cambios al aviso;
- proveedor y ubicación de hospedaje, encargados y posibles transferencias;
- retención y acceso de logs, respaldos, volcados, observabilidad y soporte;
- revisión jurídica de la base y mecanismo de consentimiento aplicable a datos fiscales, financieros o patrimoniales.
No se ha agregado un checkbox ni se presume consentimiento tácito. Esta información operativa debe revisarse profesionalmente y completarse con datos reales autorizados antes de presentarse como aviso de privacidad legal definitivo.
Fuentes oficiales consultadas el 1 de septiembre de 2026: texto vigente de la LFPDPPP (Cámara de Diputados) y catálogo de leyes federales vigentes. Los enlaces llevan a sitios externos.