Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Davidmallega/Gastos-App/llms.txt

Use this file to discover all available pages before exploring further.

El módulo Respaldo de Datos protege la información de GastosApp ante cualquier imprevisto: reinstalación del sistema operativo, cambio de equipo, actualización de la aplicación o simplemente como práctica periódica de seguridad. Dado que todos los datos viven en localStorage del proceso Electron, exportar un backup es la única forma de mover o respaldar la información fuera del dispositivo actual. El archivo exportado incluye un campo schemaVersion que permite al sistema aplicar migraciones automáticas al importar backups de versiones anteriores, garantizando que ningún dato se pierda ante cambios en la estructura de la aplicación.
Se recomienda exportar un backup antes de cada actualización de GastosApp para proteger los datos ante cambios de esquema.

Exportar datos

Para generar un backup, ve a Administración → Respaldo y haz clic en Descargar Respaldo. El archivo se descarga automáticamente con el nombre:
gastosapp_backup_YYYY-MM-DD.json
donde YYYY-MM-DD es la fecha actual en formato ISO. El archivo incluye los siguientes campos:
CampoContenido
schemaVersionVersión del esquema de datos (actualmente 4).
exportedAtMarca de tiempo ISO de cuándo se generó el backup.
appNameSiempre "GastosApp". Se usa para validar el archivo al importar.
gastosCajaArray con todos los gastos por caja registrados.
facturasArray con todas las facturas SII y notas de crédito.
compromisosArray con todos los compromisos recurrentes.
categoriasArray de strings con las categorías del catálogo.
proveedoresArray con todos los proveedores del directorio.
papeleraArray con los elementos eliminados que aún no han sido purgados.
La estructura del encabezado del archivo JSON exportado es la siguiente:
{
  "schemaVersion": 4,
  "exportedAt": "2025-06-15T10:30:00.000Z",
  "appName": "GastosApp",
  "gastosCaja": [...],
  "facturas": [...],
  "compromisos": [...],
  "categorias": [...],
  "proveedores": [...],
  "papelera": [...]
}
El archivo se genera y descarga completamente en local. Ningún dato se envía a internet en ningún momento del proceso.

Importar datos

1

Ir a Respaldo

Abre Administración → Respaldo en el menú lateral.
2

Seleccionar o arrastrar el archivo JSON

Arrastra el archivo .json exportado por GastosApp a la zona de carga, o haz clic en ella para abrirlo con el explorador de archivos. Solo se aceptan archivos .json con el campo appName: "GastosApp".
3

Revisar el preview con conteo de registros

Antes de confirmar, GastosApp muestra una vista previa con el conteo de registros por tipo que contiene el backup, así como la versión de esquema y la fecha de exportación. Esto permite verificar que el archivo es el correcto antes de reemplazar los datos actuales.
4

Confirmar la importación

Haz clic en Importar y Reemplazar datos actuales y confirma en el diálogo de seguridad. El sistema aplica automáticamente las migraciones de esquema necesarias si el backup es de una versión anterior, y luego reemplaza todos los datos en memoria y en localStorage.
Importar un backup reemplaza completamente todos los datos actuales. Se recomienda exportar primero un backup de los datos vigentes si deseas conservarlos.

Versionado de esquema

Cada backup incluye el campo schemaVersion que identifica con qué versión de GastosApp fue generado. Al importar, la función migrateData() compara la versión del archivo con la versión actual de la aplicación y aplica secuencialmente todas las transformaciones necesarias. El historial de migraciones es el siguiente:
MigraciónCambio aplicado
v0 → v1Los proveedores que estaban guardados como strings simples se convierten a objetos con campos id, rut, razonSocial, nombreFantasia, contacto, categoria y observaciones.
v1 → v2Se agrega el campo facturaRefId: null a todas las facturas existentes, necesario para vincular notas de crédito a facturas.
v2 → v3Se inicializa el array papelera: [] si no existe en los datos.
v3 → v4Se agrega el campo plazoPago: null a todos los proveedores existentes para soportar la funcionalidad de plazo de pago.
Las migraciones se aplican en cascada: un backup de schemaVersion: 1 pasará por las migraciones v1→v2, v2→v3 y v3→v4 antes de ser cargado.
Los backups de versiones anteriores se migran automáticamente al importar. No se pierde ningún dato.
La versión actual del esquema es 4. Este número se incrementa cada vez que se agregan o modifican campos en los modelos de datos de GastosApp.

Build docs developers (and LLMs) love