Qué es un .xsig en realidad
Es un XML Facturae con la firma XAdES incrustada dentro del propio documento.
A diferencia del .p7m italiano, no es un sobre que envuelve otro archivo:
la firma vive en una rama del mismo XML. Por eso cambiarle la extensión a
.xml a veces «funciona» y a veces deja al visor a medias.
Aquí se lee la factura tal cual, con la firma donde esté. Se admiten las versiones 3.2, 3.2.1 y 3.2.2, que son las que circulan de verdad.
Una precisión honesta: la factura se lee, la firma no se valida. Comprobar una firma cualificada exige las listas de confianza europeas y hay que rehacerlo con el tiempo: es otro oficio. Si necesitas la validez jurídica de la firma, usa un validador dedicado. Aquí el objetivo son los datos.
El total no es base + IVA, y está bien que no lo sea
En una factura de un autónomo o de un servicio profesional hay retención de IRPF, y se resta del total:
1.000,00 base imponible
210,00 IVA 21 %
−150,00 retención IRPF 15 %
────────
1.060,00 total factura
Una comprobación genérica de «base + IVA = total» marcaría como incorrecta absolutamente todas las facturas de todos los profesionales de España. Aquí la cuenta se rehace con la fórmula de la propia Facturae, incluidos los importes retenidos: si cuadra, no se dice nada.
Marcar como error lo que es correcto es la forma más rápida de que alguien deje de fiarse de una herramienta. Después de la tercera falsa alarma ya no se mira la cuarta, que sí era de verdad.
Un archivo puede contener varias facturas
Facturae permite un lote: varias facturas en un mismo archivo, compartiendo emisor y receptor. Los lectores que suponen «un archivo, una factura» se quedan con la primera y descartan el resto en silencio — y ese es justo el error que no se ve, porque el archivo se abre y aparece una tabla con datos plausibles.
Aquí salen todas, una fila por factura. Además, la cabecera del lote declara cuántas
debería haber (InvoicesCount): si el número no coincide con las que
realmente hay dentro, se avisa. Un archivo truncado se nota ahora, no tres meses
después al cuadrar.
Qué sale en la tabla
Una fila por factura: número, fecha, vencimiento, emisor y su NIF, receptor, moneda, base, IVA desglosado por tipos, retenciones, total y tipo de documento. Los abonos salen en negativo y con la referencia a la factura rectificada; si no, en el libro registro son un importe que aparece sin explicación.
Los importes se leen del XML, no se recalculan a partir de precios unitarios. La diferencia importa justo cuando más importa: si la factura tiene un redondeo, en la tabla aparece el redondeo de la factura, no uno nuevo inventado por nosotros.
La descarga es .xlsx — se abre en Excel, LibreOffice o Google Sheets.
También hay CSV si va a un programa de contabilidad.
Y lo que llega de fuera de España
En la misma carpeta pueden ir facturas que no son Facturae: Factur-X / ZUGFeRD
(PDF con el XML dentro, de Francia y Alemania), Peppol UBL, XRechnung,
FatturaPA en sobre .p7m de Italia, e-Factura de Rumanía,
KSeF FA(2)/FA(3) de Polonia. Todas acaban en la misma tabla, con las mismas
columnas.
También se pueden arrastrar los correos .eml o .msg
directamente: se buscan los adjuntos dentro. No hace falta ir guardando uno a uno.
No se sube nada
Los archivos se leen en tu navegador. No «se transmiten de forma segura»: no se transmiten, y puedes comprobarlo. Abre la pestaña Red de las herramientas de desarrollador y arrastra una factura: no sale ni una petición. Tras la primera carga la página funciona también sin conexión.
Para una asesoría eso significa que los datos de los clientes no llegan a un tercero — no porque lo prometamos, sino porque no tienen a dónde ir.
Pruébalo
Arrastra los archivos a la página principal — hasta 10 facturas por exportación y 20 al día, gratis y sin cuenta. Para revisar una sola factura está la página de comprobación.