POST /v1/rif/validate
Valida la estructura y el dígito verificador (módulo 11) de un Registro de Información Fiscal (RIF) venezolano. Soporta los prefijos V (venezolano), E (extranjero), J (jurídico), G (gobierno), P (pasaporte) y C (consejo comunal).
Disponible desde el plan Starter. El plan Free no tiene acceso a las utilities venezolanas.
Request
POST /v1/rif/validate HTTP/1.1
Host: api.cotizave.com
X-API-Key: ctz_live_aB3cD8fG2hJ5kL9mN1pQ4rS7tU0vWxYzA6bC3d
Content-Type: application/json
{ "rif": "J-12345678-4" }Body
| Campo | Tipo | Descripción |
|---|---|---|
rif | string (requerido) | RIF a validar. Acepta con o sin guiones (J-12345678-4, J123456784). |
cURL
curl -X POST https://api.cotizave.com/v1/rif/validate \
-H "X-API-Key: ctz_live_aB3cD8fG2hJ5kL9mN1pQ4rS7tU0vWxYzA6bC3d" \
-H "Content-Type: application/json" \
-d '{"rif":"J-12345678-4"}'Response
200 OK — válido
{
"valid": true,
"type": "legal_entity",
"type_code": "J",
"number": "12345678",
"check_digit": 4,
"normalized": "J123456784",
"formatted": "J-12345678-4"
}200 OK — inválido
Cuando el dígito verificador no coincide, devolvemos 200 con valid: false:
{
"valid": false,
"type": "legal_entity",
"type_code": "J",
"number": "12345678",
"check_digit": 4,
"normalized": "J123456787",
"formatted": "J-12345678-7"
}Schema
| Campo | Tipo | Descripción |
|---|---|---|
valid | boolean | true si el dígito verificador es correcto. |
type | string | Tipo de entidad: natural_person_national, legal_entity, etc. |
type_code | string | Una letra: V, E, J, G, P, C. |
number | string | Cuerpo numérico de 8 dígitos sin el verificador. |
check_digit | integer | Dígito verificador correcto calculado vía módulo 11. |
normalized | string | RIF sin separadores (formato canónico para guardar en DB). |
formatted | string | RIF con guiones, listo para mostrar (X-XXXXXXXX-X). |
Errores posibles
| HTTP | code | Causa |
|---|---|---|
400 | missing_field | El campo rif es obligatorio. |
400 | invalid_format | Estructura inválida (longitud incorrecta, caracteres no permitidos, prefijo desconocido). |
401 | unauthorized | API Key inválida, faltante o revocada. |
429 | rate_limit_exceeded | Cuota mensual agotada o ráfaga excedida. |
Atribución
Header X-Data-Source: normadata.io. Algoritmo y reglas mantenidas junto a normadata.io.