21 perfiles por país preconfigurados

Selector de perfil en una línea para facturación electrónica europea Y firmas de contratos laborales de la UE. Cada perfil preconfigura el algoritmo de hash, la canonicalización, el nivel de firma y la política para cumplir con los requisitos de la jurisdicción de destino.

12 perfiles de facturación electrónica
9 perfiles de contratos laborales
Reglamento eIDAS 910/2014

Perfiles de facturación electrónica (12)

Configuraciones XAdES listas para usar destinadas a las principales autoridades tributarias europeas y participantes Peppol.

Constante País Sistema Formato Nivel
spVeriFactu España VeriFactu (AEAT) XAdES-EPES B-B
spTicketBAI España (País Vasco) TicketBAI XAdES-EPES B-B
spFacturaeB2B España Facturae 3.x / FACe XAdES-EPES B-T
spFatturaPA Italia FatturaPA (SDI) XAdES-BES B-B
spSAFTPT Portugal SAF-T PT RSA-SHA256 B-B
spKSeF Polonia KSeF XAdES B-T
spFacturX Francia / Alemania Factur-X / ZUGFeRD XAdES B-B
spEFactura Rumania e-Factura (ANAF) XAdES B-T
spNAVOnline Hungría NAV Online XML-DSig B-B
spFiskalizacija Croacia Fiskalizacija XML-DSig B-B
spPeppolBE Bélgica Peppol UBL 2.0 XAdES B-T
spPeppolBG Bulgaria Peppol UBL 2.1 XAdES B-T
spMyDATA Grecia myDATA (AADE) XAdES B-B

Perfiles de contratos laborales de la UE (9)

Perfiles de firma compatibles con eIDAS ajustados a los requisitos del derecho laboral de cada Estado miembro. AdES o QES, el hash adecuado, la C14N adecuada y las expectativas de OCSP/sello de tiempo adecuadas.

País Perfil Nivel Hash C14N TS OCSP Notas
Alemania spEmploymentDE slBLT SHA-256 exclusive El § 126a del BGB exige QES para contratos en forma escrita (por ejemplo, temporales > 24 meses, pacto de no competencia poscontractual).
Italia spEmploymentIT slBLT SHA-256 c14n10 QES (FEQ) habitual. CAdES (.p7m) muy utilizado; XAdES también aceptado. Los portales del INPS aceptan ambos.
España spEmploymentES slBT SHA-256 exclusive no Basta con AdES. Los portales SEPE / TGSS exigen certificado FNMT o DNIe; CRL mediante lista de confianza FNMT.
Francia spEmploymentFR slBT SHA-256 exclusive no AdES sirve. Se prefiere QES para flujos de firma remota bajo DSP2 / RGS.
Austria spEmploymentAT slBLT SHA-256 exclusive Habitual usar QES mediante Handy-Signatur / ID Austria.
Bélgica spEmploymentBE slBLT SHA-256 exclusive QES mediante tarjeta eID (BeID).
Portugal spEmploymentPT slBLT SHA-256 exclusive QES mediante Cartão do Cidadão / Chave Móvel Digital.
Países Bajos spEmploymentNL slBT SHA-256 exclusive no AdES suele ser aceptada; QES para algunos portales de RR. HH. (UWV).
Polonia spEmploymentPL slBT SHA-256 exclusive no QES mediante Profil Zaufany o certificado cualificado cuando el contrato va a ZUS / PUE. No hay URI central de política laboral.

Cambio en una línea

Cambia de jurisdicción cambiando una sola constante. El hash, la canonicalización, el nivel y las expectativas de OCSP y sello de tiempo se reconfiguran automáticamente.

Intercambia perfiles sobre la marcha

  • Pasar de spVeriFactu a spFatturaPA es una edición de una línea. El firmador reconfigura cada flag interno.
  • Los perfiles de contratos laborales se cargan en TsgcXAdESSigner mediante Profile.LoadProfile(spEmploymentXX).
  • Anula flags individuales tras LoadProfile cuando un despliegue imponga reglas más estrictas que las predeterminadas.
  • El mismo proveedor de claves, la misma instancia del firmador y los mismos bytes de entrada — solo cambia el perfil.
switch-profile.pas
// E-invoicing profiles: assign to .Profile
vSigner.Profile := spVeriFactu;       // Spanish VeriFactu
vSigner.Profile := spFatturaPA;       // Italian FatturaPA
vSigner.Profile := spKSeF;            // Polish KSeF

// Employment profiles: use Profile.LoadProfile
vSigner.Profile.LoadProfile(spEmploymentDE);  // German QES B-LT
vSigner.Profile.LoadProfile(spEmploymentES);  // Spanish AdES B-T

// Override defaults if deployment requires it
vSigner.Profile.LoadProfile(spEmploymentES);
vSigner.Profile.IncludeOCSP := True;     // SEPE requires OCSP
vSigner.Profile.IncludeTimestamp := True;
vSigner.Profile.PolicyIdentifier :=
  'http://my.example/policy/v1';

Contexto eIDAS

El Reglamento (UE) 910/2014 define tres niveles de firma. Los perfiles por país hacen corresponder cada jurisdicción con el nivel adecuado.

Firma electrónica simple (SES)

Cualquier dato electrónico adjunto a otros datos electrónicos y utilizado para firmar. Es el de menor peso legal; suele no ser suficiente para contratos laborales ni facturación electrónica.

Firma electrónica avanzada (AdES)

Vinculada de manera única al firmante, capaz de identificarlo, creada con medios que el firmante controla en exclusiva y con detección de manipulación. El estándar habitual en la mayoría de sistemas de facturación electrónica y muchas jurisdicciones laborales de la UE.

Firma electrónica cualificada (QES)

Una AdES respaldada por un certificado cualificado creado en un dispositivo cualificado de creación de firma (QSCD). Legalmente equivalente a una firma manuscrita en todos los Estados miembros de la UE. Obligatoria para los contratos alemanes en forma escrita (§ 126a BGB) y muchos flujos de alto valor.

Quién valida

Autoridades tributarias (AEAT, ANAF, AADE, NAV), tribunales laborales, verificadores de la administración pública y puntos de acceso Peppol. Los perfiles por país se distribuyen con los parámetros que esperan esos validadores.

España — FacturaeB2B / FACe

Una cuestión transversal específica que sorprende a los despliegues españoles de facturación electrónica.

RSA-SHA1 para envíos a FACe

El perfil spFacturaeB2B produce firmas XAdES-EPES sobre facturas Facturae 3.x enviadas al portal español FACe. Los certificados respaldados por PFX producen correctamente firmas RSA-SHA1 para el perfil FacturaeB2B.

Versiones anteriores de sgcSign tenían fijado SHA-256 en TsgcPFXKeyProvider, lo que provocaba que FACe rechazara los envíos con INVALID_INVOICE-122 "los datos de la firma no son correctos". El perfil actual selecciona automáticamente SHA-1 para FacturaeB2B y SHA-256 para VeriFactu y TicketBAI.

spain-facturae.pas
var
  vSigner: TsgcDocumentSigner;
begin
  vSigner := TsgcDocumentSigner.Create(nil);
  try
    vSigner.Profile := spFacturaeB2B;
    vSigner.KeyProvider := vPFXProvider;
    // PFX provider auto-uses RSA-SHA1
    vSigner.SignXML(vInvoiceXML);
  finally
    vSigner.Free;
  end;
end;

Firma en tu jurisdicción local

Elige el país, cambia una constante y lanza una firma conforme. AEAT, SDI, KSeF, INPS, SEPE: todo incluido.