SAT · Validar RFC

Validar un RFC, del formato al padrón del SAT.

Prueba gratis la validación estructural aquí mismo. Cuando necesites saber si el RFC existe en el SAT, está activo y puede facturar, el API te lo responde en milisegundos —con un nivel de riesgo listo para tu lógica.

estatus oficial SATnivel de riesgo por respuestacero retención
valida-un-rfcGRATIS · EN TU NAVEGADOR

Validación estructural en tu navegador — no enviamos tu RFC a ningún servidor. El estatus en el SAT lo responde el API.

La respuesta del API

No solo "válido": un nivel de riesgo listo para decidir.

Cada validación regresa el estatus del RFC en el padrón del SAT y lo clasifica en un nivel de riesgo. Tu código lo usa directo para aprobar, marcar o frenar —sin interpretar mensajes.

NONE Válido y facturable Existe en el padrón y está autorizado a emitir y recibir facturas. Seguro para aprobación automática. type: "SUCCESS" · isBillable: true
LOW Existe, pero restringido Está en el padrón pero no puede facturar hoy —típicamente una empresa sin onboarding fiscal completo o suspendida. El contribuyente es real. type: "RFC_NOT_INVOICEABLE"
CRITICAL No registrado El RFC no está en el padrón del SAT: nunca se emitió, o es un error de captura o un dato inventado. No factures ni des crédito sin verificar. type: "RFC_NOT_FOUND"

Además del riesgo, la respuesta trae el tipo de contribuyente (persona física o moral), la marca isBillable y el mensaje oficial del SAT. Un solo switch sobre el nivel de riesgo y tu onboarding decide solo.

Infraestructura cruda · 100% API REST

Una llamada. Datos siempre en vivo.

Consultamos el SAT en cada llamada, sin cache: el estatus es el de este momento, no una copia de ayer. Mismo envelope que todos los servicios de OrigoID.

Nivel de riesgo, no solo un datoNONE / LOW / CRITICAL — tu lógica de aprobación lo consume directo.
Formato inválido = sin cobroUn RFC mal formado se rechaza con INVALID_REQUEST y billable: false — no gastas crédito en basura.
Cero retenciónLa consulta se valida, se responde y se descarta. Ni base de datos, ni logs, en ninguna región.
valida-rfc
const res = await fetch("https://api.origoid.com/mex/fiscal/v1/rfc-validations", {
  method: "POST",
  headers: {
    "x-api-key": process.env.ORIGOID_API_KEY,
    "content-type": "application/json",
  },
  body: JSON.stringify({ rfc: "GARM900101HDF" }),
});

const result = await res.json();
import os, requests

res = requests.post(
    "https://api.origoid.com/mex/fiscal/v1/rfc-validations",
    headers={
        "x-api-key": os.environ["ORIGOID_API_KEY"],
        "content-type": "application/json",
    },
    json={"rfc": "GARM900101HDF"},
    timeout=30,
)
result = res.json()
curl -X POST https://api.origoid.com/mex/fiscal/v1/rfc-validations \
  -H "x-api-key: $ORIGOID_API_KEY" \
  -H "content-type: application/json" \
  -d '{"rfc": "GARM900101HDF"}'
Respuesta con el riesgo ya clasificado
{
  "status": "OK",
  "type": "SUCCESS",
  "data": {
    "rfc": "GARM900101HDF",
    "isValid": true, "isBillable": true,
    "taxpayerType": "PERSONA_FISICA",
    "riskLevel": "NONE",
    "officialMessage": "RFC válido, y susceptible de recibir facturas"
  },
  "billable": true
}
Por qué OrigoID

El dato oficial es el mismo. La diferencia es todo lo demás.

Varios proveedores validan RFC. Lo que cambia: qué tan fresco llega el dato, si lo convierten en una decisión lista, y qué pasa con los datos de tu contraparte después.

Datos siempre en vivoSin cache: el estatus en el SAT es el de este momento. Un RFC que cambia hoy, tu consulta de hoy lo sabe.
Riesgo, no solo estatusNONE / LOW / CRITICAL: la respuesta ya viene lista para tu lógica de aprobación, sin que interpretes mensajes del SAT.
Cero retenciónLa consulta se valida, se responde y se descarta. Ni base de datos, ni logs.
$
Precios publicadosEl precio por validación baja con tu volumen — todo público, sin "contáctanos". Ver precios
Preguntas frecuentes

Lo que suelen preguntarnos.

¿Cómo validar un RFC contra el SAT?

Dos niveles: la validación estructural (formato de 12 o 13 caracteres, fecha y homoclave) se hace sin conexión — la demo de arriba la hace gratis en tu navegador. La validación real contra el SAT — si existe en el padrón, está activo y puede facturar — la responde el API en milisegundos.

¿Qué me dice la respuesta del API?

Si el RFC es válido, el tipo de contribuyente (física o moral), si puede facturar (isBillable) y un nivel de riesgo: NONE (válido y facturable), LOW (existe pero restringido) y CRITICAL (no registrado en el SAT).

¿Por qué validar antes de facturar o dar crédito?

Un RFC con formato perfecto puede no existir en el SAT o no poder facturar. Validarlo antes evita rechazos del SAT y operar con contrapartes que no son quienes dicen ser.

¿Guardan los datos que valido?

No. Cada consulta se valida, se responde y se descarta: sin base de datos de consultas, sin rastro en logs. Cero retención en todas nuestras regiones.

¿Cuánto cuesta?

Empiezas gratis: créditos de cortesía, sin tarjeta. Después el precio por validación baja con tu volumen. Todos los planes publicados. Formato inválido = billable: false, sin cobro.

Empieza gratis, sin tarjeta.

Créditos de cortesía para validar RFCs reales en producción. El acceso se habilita tras una breve validación de tu empresa.

Solicitar acceso