Validador de comprobantes Keyless Costa Rica Hacienda v4.4: XSD oficial para 8 tipos de documentos, la clave numérica de 50 dígitos, listas de códigos CABYS, cálculos de totales/IVA, verificación de firma XAdES-EPES. JSON codificado por reglas r
{
"status": "ok"
}
curl --location --request GET 'https://zylalabs.com/api/13427/costa+rica+e-invoice+validator+api+-+hacienda/29087/health+check' --header 'Authorization: Bearer YOUR_API_KEY'
{
"valid": true,
"wellFormed": true,
"inputFormat": "xml",
"documentType": "FacturaElectronica",
"version": "4.4",
"signatureValid": true,
"errorCount": 0,
"warningCount": 0,
"findings": [
{
"level": "info",
"ruleId": "CR-STRUCT-VERSION",
"text": "Namespace declares Hacienda comprobante schema v4.4 (https://cdn.comprobanteselectronicos.go.cr/xml-schemas/v4.4/facturaElectronica).",
"location": null,
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-STRUCT-XSD",
"text": "Document is valid against the Hacienda v4.4 FacturaElectronica structural XSD.",
"location": null,
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-SYSID-OK",
"text": "System Identification node <ProveedorSistemas> present (v4.4 requirement).",
"location": "ProveedorSistemas",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-CLAVE-CONSECUTIVO",
"text": "Clave consecutivo segment matches <NumeroConsecutivo>.",
"location": "Clave",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-CLAVE-TIPO",
"text": "Tipo de comprobante '01' matches the root <FacturaElectronica>.",
"location": "NumeroConsecutivo",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-MATH-COMPROBANTE",
"text": "ResumenFactura totals reconcile to TotalComprobante.",
"location": "ResumenFactura/TotalComprobante",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-SIG-CERT",
"text": "Embedded signing certificate: subject 'C=CR,O=Persona Juridica,CN=EMPRESA EJEMPLO SA', issuer 'C=CR,O=Persona Juridica,CN=EMPRESA EJEMPLO SA'.",
"location": "ds:X509Certificate",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-SIG-CERTDIGEST",
"text": "XAdES SigningCertificate/CertDigest matches SHA-256 of the embedded certificate.",
"location": "xades:SigningCertificate",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-SIG-EPES-POLICY",
"text": "XAdES-EPES SignaturePolicyIdentifier present (explicit signature policy referenced).",
"location": "xades:SignaturePolicyIdentifier",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-SIG-DOC-DIGEST",
"text": "Document digest VERIFIES: recomputed SHA-256 over the enveloped document (ds:Signature removed, inclusive Canonical XML) matches the signed DigestValue.",
"location": "ds:Reference[@URI='']",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-SIG-PROPS-DIGEST",
"text": "SignedProperties digest VERIFIES: recomputed SHA-256 over the canonicalized xades:SignedProperties matches the signed DigestValue.",
"location": "ds:Reference[@URI='#signed-props']",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-SIG-VALUE",
"text": "SignatureValue VERIFIES: RSA-SHA256 over the canonicalized SignedInfo checks out against the embedded certificate's public key.",
"location": "ds:SignatureValue",
"occurrences": 1
},
{
"level": "info",
"ruleId": "CR-SIG-TRUST",
"text": "Trust chain to a Costa-Rica CA (the 'Sistema Nacional de Certificacion Digital' / MICITT root and its policy CAs) is NOT verified here; that requires the SINPE/MICITT CA list and, for full assurance, an online Hacienda check. Structure and the embedded-certificate crypto are checked offline.",
"location": null,
"occurrences": 1
}
]
}
curl --location --request POST 'https://zylalabs.com/api/13427/costa+rica+e-invoice+validator+api+-+hacienda/29088/validate+e-invoice' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '
50615092500310112345600100001010000000001112345678
3101123456
620100
00100001010000000001
2025-09-15T10:00:00-06:00
Empresa Ejemplo Sociedad Anonima
02
3101123456
1
01
01
Direccion de ejemplo, edificio central
[email protected]
Cliente Ejemplo
01
0102030405
01
1
8511000000000
1.000
Unid
Servicio de ejemplo para prueba
10000.00000
10000.00000
10000.00000
10000.00000
01
08
13.00
1300.00000
0.00000
1300.00000
11300.00000
CRC
1.00000
10000.00000
10000.00000
10000.00000
0.00000
10000.00000
1300.00000
11300.00000
bAhSYwtm5VWtis0RL+Nc7RZ/ZgDpx2VBSPKtVGeGRnQ= 34a+NpJTPGRMmCV+ln29wdgoinHY08vm6/tCeTrZ4H8= rGxnpJEbB6M7EP9AJRZDj2IJVIA6cG6kWszdeLVBqpoztFWi/qWdgBEybntcKoxaJ3ayyIG9jx7niHTjOXnp/ndPvbbInXVycNQM2r3i/TIb5QpLvHBgqtY3OKI3HuTknBKQNJJgwczExMGYFG/wUCzn2bvPULkUwsURHC5/ovNIVjc91HZq3Vg64HGHnjcbo2zaIbozOweYn7hQ8NrssPGgCytJ3dZfCCLDMMK/cUqzHkv9NBrBd0O13C8NPGEVhaS2kavbsb2YFS4na2Hp9+rrqib/GtyMWMf96FkPiY47vBInqTmCnMMEdeHqxgbKBhoa+rZ3ms7bdSVBiFSgyw== MIIDHDCCAgSgAwIBAgIGAZ+oZv99MA0GCSqGSIb3DQEBCwUAMEUxGzAZBgNVBAMMEkVNUFJFU0EgRUpFTVBMTyBTQTEZMBcGA1UECgwQUGVyc29uYSBKdXJpZGljYTELMAkGA1UEBhMCQ1IwHhcNMjYwNzI4MTAwNTUwWhcNMjcwNzI4MTEwNTUwWjBFMRswGQYDVQQDDBJFTVBSRVNBIEVKRU1QTE8gU0ExGTAXBgNVBAoMEFBlcnNvbmEgSnVyaWRpY2ExCzAJBgNVBAYTAkNSMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4k7ACXaxt1+Sf6Q+JDI8bs9uxPY6m0JKuDdLbrkeDSUP8QVfBIq/dVOTJ8soq55A0Stz0feS86lS0HvP3MQESbYomwbHIaeD00p9m4KoPX5f4otzaI5nuCE90kj0SkNCiKJUmbiUlPdAUawhD/PfmffpcFh7GT9KNXlCXmwSCzg7GlCRCrPF/ysE9n7bpQvCzDeNY96GCvsEvMj3huopln+qlXILo+mA/WplGocVWUANfot9K7DWFeN+cRujfIW71HjL5eByvI0zySd1cF3DVtcxb3VHvLLqNZuaOEkPUsoL3umoTqad6AkXCjDiCzrO04QRX+MPQfho6Rce0etHjwIDAQABoxIwEDAOBgNVHQ8BAf8EBAMCBsAwDQYJKoZIhvcNAQELBQADggEBALLN1ekF/A6vVYktftYGbTCB3+GE/7ES0939UqBp+ZxRIn3kvi1diPzn0+MFNwjsexTj7xOg7M6TzJnK8ew91rSDGD6evfllcn8oAo8kxcEisAK/Zx/pAB5Ni9kcnnSVVWOnEGUMtrmv5eVvUFFGS7tDDpCcIEiQLRoQEIIeFw35d1R5pLC+zT872NnoO3jPk7DDGP8vYII5BZCW6JUkJymvrRLM/jLc/1owHXICSAVY7UUX/5ptKYf1A2R4yq79x/M5Yq9LETwy3mWAZ4hrMx2/2R0V3dU4vo3CAG/VWIxORJlFgv7jaVULtkb/CRZigBkUurgy75iUN+bmDZUNSi0= 2025-09-15T10:00:05-06:00 /qdHl5jxomu5xM4OC2BQt69+SgFUXVv4Ib8uEr8Qvo4= C=CR,O=Persona Juridica,CN=EMPRESA EJEMPLO SA 1785236750205 https://tribunet.hacienda.go.cr/docs/esquemas/2016/v4.4/Resolucion_General_MH-DGT-RES-0027-2024.pdf KN6/2eZEAduZ3t0sn4aWMv8nmpGdaIcSso99Bp9QT04= '
Después de registrarte, a cada desarrollador se le asigna una clave de acceso a la API personal, una combinación única de letras y dígitos proporcionada para acceder a nuestro endpoint de la API. Para autenticarte con el Validador de e-facturas de Costa Rica API - Hacienda API simplemente incluye tu token de portador en el encabezado de Autorización.
| Encabezado | Descripción |
|---|---|
Autorización
|
Requerido
Debería ser Bearer access_key. Consulta "Tu Clave de Acceso a la API" arriba cuando estés suscrito.
|
Sin compromiso a largo plazo. Mejora, reduce o cancela en cualquier momento. La Prueba Gratuita incluye hasta 50 solicitudes.
(Ahorra 2 meses pagando anualmente 🎉)
Keyless Costa Rica Hacienda v4.4 validador de comprobantes: XSD oficial para 8 tipos de documentos, la clave numérica de 50 dígitos, listas de códigos CABYS, matemáticas de totales/IVA, verificación de firma XAdES-EPES. JSON codificado por reglas r
El punto final de verificación de salud GET devuelve un objeto JSON simple que indica el estado del servicio mientras que el punto final POST Validar e-factura devuelve un informe de validación JSON detallado que incluye campos como validez tipo de documento versión validez de firma conteo de errores y hallazgos relacionados con el cumplimiento de las normas de Hacienda v4.4
Los campos clave en la respuesta de la validación de la e-factura POST incluyen "válido" "bienFormado" "tipoDeDocumento" "versión" "firmaVálida" "conteoDeErrores" "conteoDeAdvertencias" y "hallazgos" que brindan información sobre el estado de validación y problemas específicos de cumplimiento
Los datos de respuesta están estructurados en un formato JSON El estado de validación principal se presenta en el nivel superior seguido de hallazgos detallados categorizados por nivel (info advertencia error) que describen verificaciones de cumplimiento específicas y sus resultados
La verificación de salud GET proporciona el estado del servicio mientras que la validación POST de la e-factura ofrece detalles de validación comprensivos para facturas electrónicas incluyendo tipo de documento versión comprobaciones de firma y hallazgos de cumplimiento basados en los XSD oficiales
El endpoint POST Validar e-factura acepta el XML sin procesar del Comprobante Electrónico como el cuerpo de la solicitud No se requieren parámetros adicionales ya que el tipo de documento se detecta automáticamente del contenido XML
La precisión de los datos se mantiene a través de la adherencia a los esquemas XSD oficiales y las reglas de validación establecidas por la Hacienda Costarricense La API verifica el cumplimiento de estos estándares asegurando que los resultados de validación reflejen los requisitos regulatorios actuales
Los casos de uso típicos incluyen validar las facturas electrónicas para cumplir con las regulaciones fiscales costarricenses asegurar el formato adecuado de los documentos y verificar la integridad de las firmas digitales en las facturas electrónicas antes de enviarlas a la Hacienda
Los usuarios pueden utilizar los datos devueltos interpretando el informe de validación para identificar problemas de cumplimiento abordando cualquier error o advertencia y asegurándose de que sus facturas electrónicas cumplan con los estándares necesarios para la aceptación por parte de la Hacienda costarricense