Valida la cadena de hashes de VeriFactu
Recalcula la cadena de huellas VeriFactu (`huella`) de tu empresa y la compara con los valores persistidos sin mutar datos. Devuelve si la cadena está íntegra y, si no, el primer registro corrupto. Limitado a 1 petición/minuto y rechazado con 422 `dataset_too_large` para conjuntos de más de 50,000 registros.
En: header
Cuerpo de la respuesta
application/json
application/json
application/json
application/json
application/json
{
"data": {
"object": "verifactu_chain_validation",
"is_valid": true,
"total_records": 1284,
"validated_records": 1284,
"first_invalid_record_id": null,
"validation_year": 2026,
"validated_at": "2026-04-15T10:35:00+02:00"
}
}{
"error": {
"type": "authentication_error",
"code": "missing_api_key",
"message": "No se ha proporcionado una API key válida en el header Authorization.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#missing_api_key",
"request_id": "req_01HKQS5N8VR7QXJ9K3T6BWPMZA"
}
}{
"error": {
"type": "authorization_error",
"code": "insufficient_scope",
"message": "Esta API key no tiene el scope requerido para esta operación.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#insufficient_scope",
"request_id": "req_01HKQS5NBC3P8M1KX4V7SLNHQD"
}
}{
"error": {
"type": "rate_limit_error",
"code": "rate_limit_exceeded",
"message": "Has excedido el rate limit de 60 peticiones por minuto. Reintenta tras 30 segundos.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#rate_limit_exceeded",
"request_id": "req_01HKQS5NKW1C6W9T4G5H0JBZVL"
}
}{
"error": {
"type": "api_error",
"code": "internal_error",
"message": "Ha ocurrido un error inesperado. Si persiste, contacta con soporte adjuntando el request_id.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#internal_error",
"request_id": "req_01HKQS5NLX2D7X0U5H6J1KCAWM"
}
}Sube un certificado de empresa
Sube un certificado FNMT (PKCS#12, `.p12`/`.pfx`) como `multipart/form-data` con `certificate_file` y `certificate_password`. El fichero se valida por magic bytes (ASN.1 DER) y se limita a 100 KB; la contraseña se cifra en reposo. El certificado subido se activa automáticamente (los anteriores se desactivan). El header `Location` apunta a `/v1/verifactu/certificates/active`.
Recupera la configuración de VeriFactu
Devuelve la configuración VeriFactu de tu empresa (modo, entorno, estado de alta). La contraseña del certificado nunca se expone. Se devuelve como `{ "data": VeriFactuConfig }`.