Skip to content

Certificates

VeriFactu · Certificates

VeriFactu requires X.509 certificates issued by Spanish CAMs (CAs).

TypeUse CaseIssuer
FNMT Class 2IndividualsFNMT-RCM
DNIeSpanish citizensDNIe
CamerfirmaBusinessesCamerfirma
FirmaprofesionalProfessionalsFirmaprofesional
Terminal window
POST /verifactu/v1/certificates
Content-Type: multipart/form-data
file: certificate.pfx
password: your_pfx_password

Kreyo securely stores certificates:

  • Encrypted at rest — AES-256 encryption
  • Memory-only during signing — Never written to disk unencrypted
  • Access controlled — Only your API key can use your certificates

When submitting a record, reference your certificate by ID:

{
"certificate_id": "cert_abc123",
"invoice": { ... }
}
  1. Upload new certificate
  2. Update your integrations with new certificate_id
  3. Old records remain valid (signed with previous cert)
  • Use strong PFX passwords (12+ characters)
  • Rotate certificates annually
  • Revoke compromised certificates immediately