Datos del Cliente (Meta)

Se usarán para guardar este perfil en la Base de Datos

Parámetros del Sistema


Google Apps Script


Firebase SDK Config

Editor de Categorías

Personaliza las categorías que tendrá por defecto el cliente.

Principales

Subcategorías

¡Listo para Empezar!

Guarda el cliente en DB y descarga el paquete ZIP.

Panel de Clientes

Aquí se administran las instancias instaladas.

Fecha Cliente E-mail Auth URL Desplegada Proyecto Firebase Acciones
Cargando base de datos...

Guía de Montaje 🚀

Sigue estos pasos en orden para montar Finanzas Digitales en la cuenta de tu cliente, descargar el código parametrizado desde este Instalador y ponerlo en la web.

1 Proyecto en Firebase (Google)

Crea la base de datos de los movimientos del cliente.

  1. Ve a console.firebase.google.com y crea un nuevo proyecto con la cuenta del usuario.
  2. Desactiva Google Analytics para este proyecto.
  3. En el menú lateral, ve a Compilación > Realtime Database y haz clic en "Crear base de datos". Ubicación: Estados Unidos. Empieza en "Modo bloqueado".
  4. Ve a la pestaña Reglas de la DataBase y pega esto:
    {
      "rules": {
        "finanzasDB": {
          ".read": "auth != null && (auth.token.email === 'correo1@gmail.com' || auth.token.email === 'correo2gmail.com')",
          ".write": "auth != null && (auth.token.email === 'correo1@gmail.com' || auth.token.email === 'correo1@gmail.com')"
        },
        ".read": false,
        ".write": false
      }
    }
                                                
  5. En el menú lateral, ve a Compilación > Authentication y habilita "Google" como proveedor de acceso.
  6. En "General", registra una "App Web" (``).
  7. Copia las variables (`apiKey`, `projectId`, etc) de esa App Web y pégalas en la Pestaña 1 de este instalador.
2 Google Apps Script & Drive Folder

El script sirve para guardar los PDFs y Fotos en el Google Drive de tu cliente.

  1. En el Google Drive de tu cliente, crea una carpeta llamada `Recibos Finanzas` (o el nombre que gustes).
  2. Entra a la carpeta y fíjate en la URL. El ID de Carpeta es la parte larga. Ejemplo: https://drive.google.com/drive/folders/1ucIwoiejemploWOCiUdYFgM
  3. Pega este ID en el Configurador de esta app.
  4. Abre una nueva pestaña y ve a script.new.
  5. Nota: Copia y compara con el `Código.gs` ya modificado con el ID. Ábrelo, y pega su contenido allí.
  6. const FOLDER_PROCESADOS = "1ucIwoiejemploWOCiUdYFgM";
    
    function doPost(e) {
      try {
        const data = JSON.parse(e.postData.contents);
        
        if (data.action === "save_backup_processed") {
          const folder = DriveApp.getFolderById(FOLDER_PROCESADOS);
          const blob = Utilities.newBlob(Utilities.base64Decode(data.base64), data.mimeType, data.name);
          folder.createFile(blob);
          return ContentService.createTextOutput(JSON.stringify({success: true})).setMimeType(ContentService.MimeType.JSON);
        }
        
        return ContentService.createTextOutput(JSON.stringify({success: false, error: "Acción no reconocida"})).setMimeType(ContentService.MimeType.JSON);
        
      } catch (error) {
        return ContentService.createTextOutput(JSON.stringify({success: false, error: error.toString()})).setMimeType(ContentService.MimeType.JSON);
      }
    }
                                            
  7. En el Script, haz clic en el botón azul "Implementar" (Deploy) > "Nueva Implementación".
  8. Tipo: Aplicación Web. Ejecutar como: . Quién tiene acceso: Cualquier persona.
  9. Autoriza los permisos y copia la URL de la Aplicación web.
  10. Pega esa URL en el Configurador (URL de Despliegue Apps Script).
3 Generación y Despliegue en Netlify
  1. Asegúrate de llenar todos los campos de la Pestaña 1 y haz clic en Generar ZIP.
  2. Opcional: Descomprime el ZIP, pasa `index.html` por phpkobo.com HTML Obfuscator, y reemplázalo. Vuelve a compactar todo si quieres.
  3. Inicia sesión en Netlify.
  4. Ve a "Sites" y arrastra la carpeta (descromprimida) hacia el recuadro Drag and drop your site output folder here.
  5. ¡Listo! Tu web está en línea. Ve a Settings y cambia el nombre de dominio a algo como finanzas-cliente.netlify.app.
4 Habilitar Dominio en Firebase
  1. Vuelve al proyecto de Firebase del cliente.
  2. Ve a Authentication - Método de acceso - Habilitar Google.
  3. Ve a Authentication > Pestaña Configuración (o Settings).
  4. Busca la sección Dominios Autohorizados (Authorized domains).
  5. Agrega el nuevo dominio que acabas de crear en Netlify (ej: finanzas-cliente.netlify.app).
  6. Sin este paso, el inicio de sesión con Google lanzará error bloqueando el acceso.
🛠️ [Admin] Configurar el Panel de Clientes (Instalador)

Para que este Instalador guarde el historial de tus clientes en la nube (Pestaña 2), debes conectarlo a tu propia base de Firebase Central.

  1. Crea un proyecto Firebase para ti (Ej: NexusInstalador).
  2. Habilita Database en modo prueba o usa reglas de lectura/escritura abiertas temporalmente si solo usas localmente.
  3. Abre tu editor de código fuente. Modifica el archivo app.js que acompaña a este instalador.
  4. Localiza la constante FIREBASE_ADMIN_CONFIG cerca del inicio.
  5. Reemplaza los valores con los de tu proyecto NexusInstalador.
  6. A partir de ahí, guardar la info de los clientes será persistente y global.

Acceso Administrador

Ingresa tus credenciales para usar el instalador.