Search APIs
Add Your API
Verifier API thumbnail

Verifier

0 Popularity
0% Service Level
438ms Latency
N/A Test

API Overview

Verifier es un servicio especializado para la prevención de fraude que valida datos personales en México.

Actualmente valida RFCs, en los próximos meses también se podrán validar CURPs, INEs y ubicaciones por IP.

Verifica que un RFC tenga el formato correcto y está registrado ante SAT. Visita la sección "About" para más información.

Verifier logo

Bienvenido a Verifier. Ayudamos a los desarrolladores con herramientas para prevenir el fraude y validar datos personales en México.

Con Verifier podrás:

  • Validar que un RFC esté registrado ante el SAT.

**Seguimos desarrollando más servicios. Pronto agregaremos verificación para CURPs, INEs y ubicaciones por IP.

Autenticación

Para acceder a Verifier deberás hacerlo mediante RapidAPI. Es muy fácil:

  1. Crea una cuenta en RapidAPI.
  2. Suscríbete a Verifier
  3. Comienza a hacer requests. Envía el API Key en el header X-RapidAPI-Key.

Más detalles sobre la autenticación en RapidAPI aquí.

Endpoints

POST /rfc/verify

Este endpoint permite verificar el formato de un RFC y consultar si está registrado ante el SAT.

Parámetros

Los siguientes parámetros se deberán enviar en el body del request:

ParámetroTipoDescripción
rfcStringEl RFC a validar.

Respuesta

El endpoint regresará un objeto con los siguientes parámetros:

ParámetroTipoDescripción
isValidBooleanIndica es el string ingresado es un RFC válido.
isRegisteredBooleanIndica si el RFC está dado de alta en el SAT.
rfcStringEl RFC formateado (en mayúsculas, sin espacios ni símbolos). Regresa null en caso de que el RFC sea inválido.
typeStringEl tipo del RFC ingresado. Los valores pueden ser person para personas físicas, company para personas morales, generic para el RFC genérico "XAXX010101000" o foreign para el RFC "XEXX010101000" para residentes en el extranjero. Regresa null en caso de que el RFC sea inválido.
blacklist69ObjetoProvee detalles en caso de que el RFC esté incluído en la lista negra de contribuyentes incumplidos y condonados (69). Se regresará null si el RFC no está incluído en ninguna lista. Ver la sección "Lista negra 69" para conocer más detalles sobre este objeto.
blacklist69bObjetoProvee detalles en caso de que el RFC esté incluído en la lista negra de contribuyentes con operaciones presuntamente inexistentes (69-B). Se regresará null si el RFC no está incluído en la lista negra. Ver la sección "Lista negra 69-B" para conocer más detalles sobre este objeto.
validation ErrorsArray[String]En caso de que el RFC no sea válido, aquí se indican los motivos por los que no fue válido.

Los posibles valores que puede contener validation Errors y su descripción son:

ErrorDescripción
INVALID_FORMATEl formato es inválido, es decir, no cuenta con la longitud o estructura de caracteres esperado. Ej: XYZ porque claramente no es un RFC.
INVALID_DATEEl string tiene el formato adecuado, pero los dígitos para la fecha generan una fecha inválida. Ej: MHTR815511A70 porque refiere al mes 55.
INVALID_VERIFICATION_DIGITEl string tiene el formato adecuado, pero el último caracter (dígito verificador) es inválido. Ej: MHTR810511A79 termina en 9 pero se espera que termine en 2.

Ejemplo

POST /rfc/verify
 
Body:
{
  "rfc": "ais9610302u1"
}

Respuesta:
{
  "isValid": true,
  "isRegistered": true,
  "rfc": "AIS9610302U1",
  "type": "company",
  "blacklist69": {
    "name": "AISLANTECH, S.A. DE C.V.",
    "state": "GUERRERO",
    "lists": [
      {
        "type": "CONDONADOS_ART_74",
        "firstPublicationDate": "2014-10-01T05:00:00.000Z",
        "publicationDate": null,
        "amount": null,
        "reason": null
      },
      {
        "type": "CONDONADOS_2007_2015",
        "firstPublicationDate": "2014-01-01T06:00:00.000Z",
        "publicationDate": null,
        "amount": 283027,
        "reason": "Por cumplir con los requisitos previstos en el artículo 74 del Código Fiscal de la Federación y las reglas de la Resolución Miscelánea Fiscal"
      }
    ]
  },
  "blacklist69b": {
    "id": "546",
    "name": "AISLANTECH, S.A. DE C.V.",
    "status": "definitive",
    "allegedDetails": {
      "ogId": "500-05-2017-16054",
      "ogPublicationDate": "2017-04-28T05:00:00.000Z",
      "satPublicationDate": "2017-05-01T05:00:00.000Z",
      "dofPublicationDate": "2017-05-29T05:00:00.000Z"
    },
    "detractedDetails": null,
    "definitiveDetails": {
      "ogId": "500-05-2018-13465",
      "ogPublicationDate": "2018-05-16T05:00:00.000Z",
      "satPublicationDate": "2018-05-16T05:00:00.000Z",
      "dofPublicationDate": "2018-05-31T05:00:00.000Z"
    },
    "favorableDetails": null
  }
}

POST /rfc/generate

Este endpoint genera un RFC a partir de los datos de una persona física o moral y verifica si el RFC generado está registrado ante el SAT.

Parámetros

Los siguientes parámetros se deberán enviar en el body del request:

| Parámetro | Tipo | Descripción para personas físicas | Descripción para personas morales | | --------- | ---- | ----------- | |type| String | El tipo del RFC ingresado. El valor debe ser person para una persona física. | El tipo del RFC ingresado. El valor debe ser company para una persona moral. | |name| String | Nombre o nombre(s). | Razón social. | |lastName1| String | Apellido paterno. | No enviar este parámetro. | |lastName2| String | Apellido materno. Si la persona tiene más de 2 apellidos se deben incluir en este campo. | No enviar este parámetro. | |day| Integer | Día de nacimiento. | Día de creación de la empresa. | |month| Integer | Mes de nacimiento. | Mes de creación de la empresa. | |year| Integer | Año de nacimiento. | Año de creación de la empresa. |

Respuesta

El endpoint regresará un objeto con los siguientes parámetros:

ParámetroTipoDescripción
isValidBooleanIndica es el string ingresado es un RFC válido.
isRegisteredBooleanIndica si el RFC está dado de alta en el SAT.
rfcStringEl RFC formateado (en mayúsculas, sin espacios ni símbolos). Regresa null en caso de que el RFC sea inválido.
typeStringEl tipo del RFC ingresado. Los valores pueden ser person para personas físicas, company para personas morales, generic para el RFC genérico "XAXX010101000" o foreign para el RFC "XEXX010101000" para residentes en el extranjero. Regresa null en caso de que el RFC sea inválido.
blacklist69ObjetoProvee detalles en caso de que el RFC esté incluído en la lista negra de contribuyentes incumplidos y condonados (69). Se regresará null si el RFC no está incluído en ninguna lista. Ver la sección "Lista negra 69" para conocer más detalles sobre este objeto.
blacklist69bObjetoProvee detalles en caso de que el RFC esté incluído en la lista negra de contribuyentes con operaciones presuntamente inexistentes (69-B). Se regresará null si el RFC no está incluído en la lista negra. Ver la sección "Lista negra 69-B" para conocer más detalles sobre este objeto.
validation ErrorsArray[String]En caso de que el RFC no sea válido, aquí se indican los motivos por los que no fue válido.

Los posibles valores que puede contener validation Errors y su descripción son:

ErrorDescripción
INVALID_FORMATEl formato es inválido, es decir, no cuenta con la longitud o estructura de caracteres esperado. Ej: XYZ porque claramente no es un RFC.
INVALID_DATEEl string tiene el formato adecuado, pero los dígitos para la fecha generan una fecha inválida. Ej: MHTR815511A70 porque refiere al mes 55.
INVALID_VERIFICATION_DIGITEl string tiene el formato adecuado, pero el último caracter (dígito verificador) es inválido. Ej: MHTR810511A79 termina en 9 pero se espera que termine en 2.

Ejemplo

POST /rfc/generate
 
Body:
{
  "type": "company",
  "name": "Bimbo S.A. de C.V.",
  "day": 8,
  "month": 11,
  "year": 2001
}

Respuesta:
{
  "isValid": true,
  "isRegistered": true,
  "rfc": "BIM011108BF8",
  "type": "company",
  "blacklist69": null,
  "blacklist69b": null
}

Lista negra 69

En caso de que el RFC esté incluído en la lista negra de contribuyentes incumplidos y condonados (69) se regresará un objeto blacklist69 con las siguientes propiedades:

ParámetroTipoDescripción
nameStringEl nombre o razón social de la persona física o moral.
stateStringEl estado de México en que fue registrada la razón social.
lists[Objeto]El detalle de todas las listas de contribuyentes incumplidos y condonados en que está incluído el RFC.

Cada objeto incluído en lists tendrá las siguientes propiedades:

ParámetroTipoDescripción
typeStringEl tipo o nombre de la lista en que está incluído el RFC. Más delante se listan todos los posibles valores.
firstPublicationDateStringLa primera fecha en que se publicó este RFC en la lista.
publicationDateStringLa fecha en que se publicó este RFC en la lista ya con el monto actualizado (campo amount).
amountFloatLa cantidad de dinero en pesos mexicanos ($MXN) involucrada según la operación listada (condonación, adeudo, retorno de inversión, etc).
reasonStringExplicación provista por el SAT de por qué el RFC se encuentra en la lista.

Los diferentes tipos (type) que puede tener la lista 69 son:

  • CANCELADOS: Cancelados.
  • CONDONADOS_ART_74: Condonados de multas (Artículo 74 del Código Fiscal de la Federación).
  • CONDONADOS_ART_146B: Condonados de concurso mercantil (Artículo 146B del Código Fiscal de la Federación).
  • CONDONADOS_ART_21: Condonados de recargos (Artículo 21 del Código Fiscal de la Federación).
  • CONDONADOS_DECRETO_2015: Condonados por Decreto (Del 22 de enero y 26 de marzo de 2015).
  • CONDONADOS_2007_2015: Condonados del 01 de enero de 2007 al 04 de mayo de 2015.
  • CANCELADOS_2007_2015: Cancelados del 01 de enero de 2007 al 04 de mayo de 2015.
  • RETORNO_INVERSIONES: Retorno de inversiones.
  • EXIGIBLES: Exigibles.
  • FIRMES: Firmes.
  • NO_LOCALIZADOS: No localizados.
  • SENTENCIAS: Sentencias.
  • ELIMINADOS_NO_LOCALIZADOS: Eliminados de la relación de no localizados.

El documento técnico provisto por el SAT con información de cada tipo se puede descargar aquí.

*Nuestra base de datos se actualiza cada 24 horas con la información más reciente disponible en el SAT.

Lista negra 69-B

En caso de que el RFC esté incluído en la lista negra de contribuyentes con operaciones presuntamente inexistentes (69-B se regresará un objeto blacklist69b con las siguientes propiedades:

ParámetroTipoDescripción
idStringEl número o identificador asignado por el SAT para el RFC dentro de la lista.
statusStringEl estatus en que se encuentra el RFC dentro de la lista. Los valores correspondientes con el SAT son alleged (Presunto), detracted (Desvirtuado), definitive (Definitivo) y favorable (Sentencia Favorable).
nameStringEl nombre o razón social de la persona física o moral.
allegedDetailsObjetoInformación adicional en caso de que el RFC esté o haya pasado por el estatus "alleged".
detractedDetailsObjetoInformación adicional en caso de que el RFC esté o haya pasado por el estatus "detracted".
definitiveDetailsObjetoInformación adicional en caso de que el RFC esté o haya pasado por el estatus "definitive".
favorableDetailsObjetoInformación adicional en caso de que el RFC esté o haya pasado por el estatus "favorable".

Los detalles de cada estatus serán null si el RFC no está o estuvo en dicho estado, de lo contrario tendrá las siguientes propiedades:

ParámetroTipoDescripción
ogIdStringNúmero de oficio global en que se publicó.
ogPublicactionDateStringFecha en que el estatus del RFC se publicó en el oficio global.
satPublicactionDateStringFecha en que el estatus del RFC se publicó en el SAT.
dofPublicactionDateStringFecha en que el estatus del RFC se publicó en el Diario Oficial de la Federación.

Los estatus que puede tener un RFC en la lista 69-B significan:

  • alleged (Presunto): Se cree que el RFC tiene operaciones inexistentes, pero no se ha comprobado. Riesgo: medio.
  • detracted (Desvirtuado): No se pudo comprobar el que RFC realiza operaciones inexistentes. Riesgo: bajo.
  • definitive (Definitivo): Se comprobó que el RFC realiza operaciones inexistentes. Riesgo: alto.
  • favorable (Sentencia Favorable): Ya se había marcado como Definitivo pero el acusado demostró su inocencia y resultó favorable. Riesgo: bajo.

*Nuestra base de datos se actualiza cada 24 horas con la información más reciente disponible en el SAT.

Sobre el plan gratuito (Basic)

Verifier ofrece un plan gratuito de hasta 50 requests al mes, con la finalidad probar la funcionalidad de la API.

Desafortunadamente RapidAPI requiere que ingreses los datos de una tarjeta de crédito para poder suscribirte al plan gratuito (Basic); eso es algo que no podemos cambiar. Sin embargo, puedes estar seguro que ni Verifier ni RapidAPI harán algun cargo a menos que cambies al plan de paga (Pro).

Datos

Los datos del RFC son obtenidos directamente del SAT (Servicio de Administración Tributaria) por lo que son confiables y siempre están actualizados.

Ayuda / Comentarios

Si tienes algún comentario, pregunta o te gustaría pedir una nueva función, contáctanos en info@verifier.mx o mediante el chat de RapidAPI.