← Volver a docs

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

CampoTipoDescripción
rifstring (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

CampoTipoDescripción
validbooleantrue si el dígito verificador es correcto.
typestringTipo de entidad: natural_person_national, legal_entity, etc.
type_codestringUna letra: V, E, J, G, P, C.
numberstringCuerpo numérico de 8 dígitos sin el verificador.
check_digitintegerDígito verificador correcto calculado vía módulo 11.
normalizedstringRIF sin separadores (formato canónico para guardar en DB).
formattedstringRIF con guiones, listo para mostrar (X-XXXXXXXX-X).

Errores posibles

HTTPcodeCausa
400missing_fieldEl campo rif es obligatorio.
400invalid_formatEstructura inválida (longitud incorrecta, caracteres no permitidos, prefijo desconocido).
401unauthorizedAPI Key inválida, faltante o revocada.
429rate_limit_exceededCuota mensual agotada o ráfaga excedida.

Atribución

Header X-Data-Source: normadata.io. Algoritmo y reglas mantenidas junto a normadata.io.