Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/entreunosyceros/lefa/llms.txt

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

LEFA centraliza todo el flujo de facturación en la pestaña Nueva Factura y el Listado. Un borrador se puede editar libremente hasta que pulses Emitir Factura, momento en que se asigna el número oficial, se generan el PDF y el XML Facturae, y se crea el registro VeriFactu encadenado, todo dentro de una única transacción atómica en SQLite. A partir de ese instante la factura queda bloqueada y solo puede corregirse mediante una factura rectificativa.

Ciclo de vida de una factura

Las facturas en LEFA siguen un camino lineal definido por el enum EstadoFactura:
EstadoColor en el ListadoDescripción
BorradorGris claroLa factura está en edición. No tiene número oficial (numero_factura es NULL). Se puede modificar en cualquier momento.
EmitidaNaranja claroNumerada y bloqueada. Tiene fecha de emisión, PDF, XML Facturae y registro VeriFactu. Puede marcarse como Cobrada o enviarse por correo.
CobradaVerde claroEmitida y confirmada como pagada. El vencimiento deja de mostrarse como pendiente.
Un borrador no aparece en ningún registro fiscal. Solo al emitir se asigna número correlativo y se genera el registro VeriFactu inmutable.

Crear un borrador

1

Abrir la pestaña Nueva Factura

Haz clic en la pestaña Nueva Factura en la ventana principal. LEFA recuerda automáticamente el último cliente utilizado y lo selecciona por defecto.
2

Seleccionar cliente y serie

Elige el cliente en el desplegable. Si aún no existe, créalo en Clientes → Nuevo cliente…. Selecciona también la serie de facturación (por ejemplo FACT, WEB o MANT; las series se configuran en Herramientas → Preferencias).
3

Añadir líneas

Puedes agregar líneas de cuatro formas:
  • Manual: escribe descripción, cantidad y precio directamente.
  • Servicio del catálogo: pulsa Añadir servicio y elige un servicio guardado; la línea y el IVA se rellenan solos.
  • Plantilla de línea: elige una plantilla en el desplegable y pulsa Añadir plantilla.
  • Plantilla de factura completa: usa Nueva factura desde plantilla para cargar cliente, líneas e impuestos de una sola vez.
4

Configurar IVA, IRPF y vencimiento

Ajusta los porcentajes de IVA e IRPF si difieren de tus valores por defecto. Indica la fecha de vencimiento o deja que LEFA la calcule automáticamente según los días configurados en Preferencias.
5

Guardar borrador

Pulsa Guardar para almacenar el borrador sin emitirlo. Podrás volver a editarlo cuando quieras.

Emitir una factura

1

Revisar el borrador

Abre el borrador en Nueva Factura y comprueba que cliente, líneas e importes son correctos.
2

Pulsar Emitir Factura

Haz clic en Emitir Factura. LEFA ejecuta una transacción BEGIN IMMEDIATE en SQLite que, de forma atómica:
  1. Asigna el número correlativo siguiente dentro de la serie (por ejemplo FACT-2026-0044).
  2. Calcula y encadena el hash SHA-256 VeriFactu con el registro anterior.
  3. Guarda fecha de emisión, estado Emitida y hashes en la base de datos.
  4. Hace commit; solo después persiste el JSON VeriFactu en ~/.lefa/verifactu/registros/.
3

Archivos generados automáticamente

Tras la emisión encontrarás en disco:
  • PDF en ~/.lefa/facturas_pdf/ (con QR tributario AEAT de 35 × 35 mm).
  • XML Facturae en ~/.lefa/facturas_xml/.
La transacción BEGIN IMMEDIATE garantiza que, incluso si dos ventanas intentan emitir simultáneamente, los números correlativos sean siempre únicos e irrepetibles, sin huecos ni duplicados.

Acciones en el Listado

En la pestaña Listado dispones de las siguientes acciones sobre las facturas seleccionadas:
AcciónDisponible enDescripción
Guardar PDF…Emitida / CobradaGuarda una copia del PDF en la ubicación que elijas. Permite seleccionar varias facturas a la vez.
Abrir carpetaEmitida / CobradaAbre el explorador de archivos en ~/.lefa/facturas_pdf/ para acceder al PDF y al XML.
DuplicarEmitida / CobradaCrea un borrador nuevo con los mismos datos (ver sección siguiente).
RectificarEmitida / CobradaCrea un borrador rectificativo en serie RECT vinculado a la original (ver sección siguiente).
Marcar como CobradaEmitidaCambia el estado a Cobrada y actualiza el indicador de vencimiento.
Enviar por emailEmitida / CobradaEnvía el PDF al correo del cliente usando la cuenta SMTP configurada y registra el envío.

Duplicar una factura

La acción Duplicar crea un borrador nuevo copiando el cliente, las líneas, la serie y los porcentajes de IVA e IRPF de la factura original. El vencimiento se recalcula desde la fecha actual según los días configurados en Preferencias, y el historial de envío no se arrastra. El nuevo borrador se abre automáticamente en Nueva Factura para que puedas revisarlo antes de emitir.
Solo se pueden duplicar facturas ya emitidas o cobradas. Un borrador no puede duplicarse.

Facturas rectificativas

Las rectificativas permiten corregir o anular una factura ya emitida manteniendo la trazabilidad fiscal.
1

Seleccionar la factura a rectificar

En el Listado, selecciona una factura en estado Emitida o Cobrada. Una factura que ya sea rectificativa no puede volver a rectificarse.
2

Pulsar Rectificar

Haz clic en Rectificar. LEFA crea un borrador en serie RECT con las mismas líneas e impuestos que la original, el campo factura_rectificada_id apuntando a la factura corregida, y lo abre en Nueva Factura.
3

Ajustar las líneas

Modifica las líneas según lo que debas corregir. Si quieres devolver importe al cliente, usa importes negativos en los precios unitarios.
4

Emitir la rectificativa

Pulsa Emitir Factura. La rectificativa recibe su propio número correlativo dentro de la serie RECT y genera su PDF y XML Facturae. El PDF indica expresamente qué factura original rectifica.
La cadena de hashes VeriFactu es única e ininterrumpida para todo el programa. Una factura rectificativa (serie RECT) encadena con la última factura emitida cronológicamente en el sistema, independientemente de la serie.

Vencimientos

Cada factura puede llevar una fecha de vencimiento. En el Listado, la columna de vencimiento muestra una etiqueta de estado calculada en tiempo real por texto_estado_vencimiento(), sin ningún automatismo ni aviso emergente:
EtiquetaCondición
La factura es un borrador.
CobradaLa factura está en estado Cobrada, independientemente de la fecha.
PendienteEmitida sin fecha de vencimiento asignada, o con vencimiento a más de 5 días vista.
VencidaLa fecha de vencimiento ya pasó y la factura sigue emitida.
Vence hoyLa fecha de vencimiento es hoy mismo.
Vence en N díasQuedan entre 1 y 5 días para el vencimiento (N puede ser 1 a 5).
Para configurar el número de días de vencimiento por defecto, ve a Herramientas → Preferencias y ajusta el campo Vencimiento por defecto.

Historial de envío

Cada factura almacena tres campos relacionados con el envío por correo:
CampoTipoDescripción
enviadaBooleanotrue tras un envío completado correctamente.
fecha_envioFechaFecha en que se realizó el envío.
destinatarioTextoDirección de correo a la que se envió.
En el Listado, la columna Envío muestra ✓ Enviada (DD/MM/AAAA) si la factura ya fue enviada, o Pendiente de enviar en caso contrario. Los borradores muestran . Esto permite saber de un vistazo, meses después, si una factura concreta ya salió por correo.

Build docs developers (and LLMs) love