Últimamente, hemos detectado un incremento de errores durante la validación de las facturas electrónicas enviadas a través de la plataforma eFACT, de acuerdo a las políticas de firma definidas en FACTURAe. A continuación, detallamos los problemas más habituales y ofrecemos algunas recomendaciones para su resolución:
- invalid:untrustedKey-Invalid signing certificate
- Solución: Revisar la validez del certificado utilizado para firmar la factura. Asegúrese de que el certificado sea vigente y emitido por una autoridad de certificación reconocida.
- invalido:untrustedKey-X509IssuerName en el certificado certificado atributo de firma y no está formado.
- problema: El campo X509IssuerName tiene una codificación incorrecta o utiliza prefijos que no siguen el estándar. Ejemplos:
- Mala codificación:
<ds:X509IssuerName>CN=AC Representaci�n,OU=CERES,O=FNMT-RCM,C=ES</ds:X509IssuerName>
- Fuera del estándar:
<ds:X509IssuerName>OrganizationID=VATES-A66*****, CN=UANATACA CA1 2016, OU=TSP-UANATACA, O=UANATACA S.A., L=Barcelona (see current address at www.uanataca.com/address), C=ES</ds:X509IssuerName>
- Solución: Verificando que los prefijos y estructura del campo X509IssuerName cumplan con los estándares de codificación X.509.
- XPathEvaluationError-Malformed request: the request debe no firmar to validate.
- Solución: Debe asegurarse que el esquema correspondiente a la firma (simple o avanzada) cumple con el estándar XMLDSig y XAdES. Revisar la estructura de la firma y su presencia en el documento XML.
- SignaturePolicyNotFound-Firma Policy null y SignPolicyImplied found but not supported.
- problema: El campo SignaturePolicyIdentifier está mal informado o en blanco.
<etsi:SignaturePolicyIdentifier>
<etsi:SignaturePolicyImplied/>
</etsi:SignaturePolicyIdentifier>
- Solución: Es necesario especificar correctamente la política de firma en el campo
SignaturePolicyIdentifier
en lugar de dejarlo en blanco.
- SignaturePolicyNotFound-Given commitment cannot be found on the
requested signature policy
- problema: Se ha incorporado el campo
<xades:CommitmentTypeId>
- Solución: No debe incorporarse.
- InternalServerError-Cannot recover the given signature policy and it's asociated commitment.
- problema: El campo SignaturePolicyIdentifier está mal informado o en blanco.
<etsi:SignaturePolicyIdentifier>
<etsi:SignaturePolicyImplied/>
</etsi:SignaturePolicyIdentifier>
- Solución: Es necesario especificar correctamente la política de firma en el campo
SignaturePolicyIdentifier
en lugar de dejarlo en blanco.
- invalido:incorrectSignature-Signature pdu is not válido
- problema: Falta un atributo obligatorio,
SigningCertificate
, en las firmas avanzadas.
- Solución: Incluir el atributo
SigningCertificate
en las firmas avanzadas conforme a los requisitos de FACTURAe.
- Unknown:certificate:PathValidationFails-Certification path could no be validated.Read timed out
- problema: Se ha producido un error de timeout.
- Solución: Volver a intentar la validación. Si el error persiste, revisar la cadena de certificación y asegurar que todos los certificados intermedios sean accesibles.
Política de firma:
Recordemos que entre las validaciones que se detallan en el anexo delOrden HAP/1650/2015, en el Anexo 2.a, se indica que es necesario verificar la política de firma vigente asociada al formato “FACTURAe”. Es necesario revisar la política de firma de las facturas que se envían a eFACT, teniendo en cuenta el documento técnico publicado en la web de FACTURAe.
Para prevenir estos errores, recomendamos realizar pruebas exhaustivas de las firmas electrónicas antes del envío, para asegurar su conformidad con el estándar de políticas de firma definidas en FACTURAe.