Certifactu Volver
Protección empresarial

Seguridad

Última actualización: 1 de diciembre de 2025

Contenido
0%

Cifrado en Tránsito

TLS 1.2+

Cifrado en Reposo

AES-256

Hash Seguro

Bcrypt + SHA-256

Chain Hashing

Inmutable

Firma XAdES

X.509

Auditoría

24/7

01

Cifrado de Datos

Cifrado en tránsito

Todas las comunicaciones entre tu aplicación y nuestra API utilizan HTTPS con TLS 1.2 o superior. Esto incluye tanto las peticiones a la API REST como las conexiones WebSocket para webhooks. Los certificados SSL son renovados automáticamente y monitorizados continuamente.

Cifrado en reposo

Los datos almacenados en nuestra base de datos PostgreSQL están cifrados a nivel de disco utilizando AES-256. Esto incluye todos los datos de facturas, información de usuarios y registros de auditoría.

Comunicación con la AEAT

La comunicación con los servidores de la Agencia Tributaria se realiza mediante SOAP sobre HTTPS con autenticación mediante certificados digitales X.509.

02

Autenticación y Credenciales

Contraseñas de usuario

Las contraseñas nunca se almacenan en texto plano. Utilizamos bcrypt con un factor de coste adaptativo para el hash de contraseñas, lo que las hace resistentes a ataques de fuerza bruta incluso si la base de datos fuera comprometida.

Claves API

Las claves API se generan con 64 bytes de entropía criptográfica y se almacenan como hash SHA-256 unidireccional. La clave en texto plano solo se muestra una vez en el momento de la creación.

# Formato de clave API
sk_live_a1b2c3d4e5f6...(64 caracteres hex)

Tokens de sesión (JWT)

Las sesiones web utilizan tokens JWT firmados con HMAC-SHA256. Los tokens tienen una expiración corta (~1 hora) y se almacenan en cookies HTTP-only con flags Secure y SameSite.

03

Integridad de Facturas

Cada factura procesada por Certifactu incluye múltiples garantías de integridad según los requisitos del sistema Veri*factu:

Huella digital (Fingerprint)

Cada factura recibe una huella digital única calculada mediante SHA-256 sobre los campos críticos: NIF del emisor, serie, número, fecha, tipo, importes, hash anterior y timestamp.

Encadenamiento (Chain Hashing)

Cada factura incluye el hash de la factura anterior, creando una cadena inmutable similar a una blockchain.

Factura #1
hash: 8f4b...
prev: (vacío)
→
Factura #2
hash: 2a1c...
prev: 8f4b...
→
Factura #3
hash: 9c3d...
prev: 2a1c...

Firma electrónica XAdES-BES

Los documentos XML de factura se firman electrónicamente utilizando el estándar XAdES-BES, que cumple con los requisitos de la AEAT y proporciona validez legal.

04

Infraestructura Segura

Proveedores de confianza

Nuestra infraestructura se ejecuta en proveedores cloud de primer nivel con certificaciones SOC 2 Type II, ISO 27001 e ISO 27017.

Aislamiento de datos

Los datos de cada cliente están lógicamente aislados. Cada petición a la API se valida para asegurar que solo puedes acceder a los datos de los NIFs emisores asociados a tu cuenta.

Copias de seguridad

Realizamos copias de seguridad automáticas con frecuencia diaria. Las copias se almacenan cifradas en ubicaciones geográficamente separadas con una retención mínima de 30 días.

Monitorización continua

Monitorizamos la disponibilidad, rendimiento y seguridad de todos los componentes 24/7. Las alertas automáticas notifican al equipo de operaciones ante cualquier anomalía.

05

Auditoría y Trazabilidad

Mantenemos registros detallados de todas las operaciones:

Operaciones de facturación: Firma, verificación, envío a AEAT, cancelaciones
Autenticación: Intentos de acceso exitosos y fallidos
Gestión de claves: Creación, rotación y revocación de API keys
Webhooks: Intentos de entrega, respuestas y reintentos

Privacidad en logs: Las direcciones IP se almacenan parcialmente anonimizadas y los NIFs se redactan (formato: XXXX****).

06

Seguridad de Webhooks

HTTPS obligatorio

Solo aceptamos URLs de webhook que utilicen HTTPS. Las URLs con HTTP serán rechazadas.

Firma HMAC-SHA256

Cada petición de webhook incluye una cabecera X-Certifactu-Signature con una firma HMAC-SHA256 verificable:

signature = HMAC-SHA256(webhook_secret, request_body)

Protección contra fallos

Los webhooks que fallen consistentemente (10 fallos consecutivos) se desactivan automáticamente. Recibirás una notificación por email cuando esto ocurra.

07

Recomendaciones de Seguridad

1

Protege tus claves API

Nunca expongas claves API en código cliente, repositorios públicos o logs. Utiliza variables de entorno.

2

Rota las claves periódicamente

Regenera tus claves API cada 90 días o inmediatamente si sospechas que han sido comprometidas.

3

Verifica las firmas de webhooks

Siempre valida la firma HMAC antes de procesar notificaciones de webhook.

4

Monitoriza el uso de tu API

Revisa regularmente los logs de actividad para detectar patrones anómalos.

5

Usa el entorno sandbox

Nunca uses datos reales de producción en desarrollo.

08

Cumplimiento Normativo

RGPD

Reglamento General de Protección de Datos de la UE

LOPDGDD

Ley Orgánica de Protección de Datos española

Veri*factu

Sistema de facturación electrónica de la AEAT

Ley Antifraude

Ley 11/2021 de medidas contra el fraude fiscal

09

Reporte de Vulnerabilidades

Valoramos la colaboración de la comunidad de seguridad. Si descubres una vulnerabilidad, te pedimos que nos la comuniques de forma responsable:

  • Envía un email a security@certifactu.com
  • Incluye una descripción detallada del problema y pasos para reproducirlo
  • Danos tiempo razonable para corregir el problema antes de divulgarlo
  • No accedas ni modifiques datos de otros usuarios

Nos comprometemos a investigar todos los reportes y a mantener informado al investigador sobre el progreso de la corrección.

Certifactu
Privacidad Términos Seguridad Documentación

© 2025 Certifactu Solutions S.L. Todos los derechos reservados.