💼 Validación de RFC
El reporte de validación RFC (Registro Federal de Contribuyentes) recupera y valida el número del Registro Federal de Contribuyentes de México del Servicio de Administración Tributaria (SAT). Este reporte es esencial para la verificación de cumplimiento fiscal y verificaciones de antecedentes financieros en México.
Descripción General
Sección titulada «Descripción General»La validación RFC proporciona acceso al sistema fiscal de México para verificar el registro de contribuyentes, estado de cumplimiento fiscal y legitimidad empresarial. Este reporte es crucial para la verificación financiera y cumplimiento con las regulaciones fiscales mexicanas.
Requisitos de Entrada
Sección titulada «Requisitos de Entrada»Campos Obligatorios
Sección titulada «Campos Obligatorios»Campo | Tipo | Descripción | Ejemplo |
---|---|---|---|
document_id | string | CURP (Clave Única de Registro de Población) | ABCD123456EFGHIJ78 |
Campos Opcionales
Sección titulada «Campos Opcionales»Campo | Tipo | Descripción | Por Defecto |
---|---|---|---|
full_name | string | Nombre completo esperado para verificación | Auto desde CURP |
rfc | string | RFC conocido para validación directa | Auto-recuperado |
report_settings | object | Opciones de configuración | {} |
Fuente de Datos
Sección titulada «Fuente de Datos»Registro: Servicio de Administración Tributaria (SAT) Autoridad: Secretaría de Hacienda y Crédito Público (SHCP) Cobertura: Todos los contribuyentes mexicanos (individuos y empresas) Frecuencia de Actualización: Tiempo real para contribuyentes activos, diaria para cambios de estado
Esquema de Salida
Sección titulada «Esquema de Salida»RFC Activo Encontrado
Sección titulada «RFC Activo Encontrado»{ "rfc": { "state": "COMPLETED", "created_at": "2021-03-30T03:18:36.801902", "updated_at": "2021-03-30T03:19:53.536683", "outcome": "PASSED", "details": { "success": true, "rfc": "ABCD123456EF7H", "registration_year": "2001", "taxpayer_type": "INDIVIDUAL", "status": "ACTIVE", "regime": "SUELDOS_Y_SALARIOS", "validation": { "rfc_format_valid": true, "check_digit_valid": true, "active_in_system": true, "document_type": "RFC" }, "registration_info": { "initial_registration": "2001-03-15", "last_update": "2023-12-01", "taxpayer_name": "JUAN MIGUEL DOE ROE" }, "_spider": "mx_sat_rfc_by_curp", "_timestamp": "2021-03-30T03:19:51.292766" } }}
RFC Inactivo
Sección titulada «RFC Inactivo»{ "rfc": { "state": "COMPLETED", "created_at": "2021-03-30T03:18:36.801902", "updated_at": "2021-03-30T03:19:53.536683", "outcome": "PASSED", "details": { "success": true, "rfc": "ABCD123456EF7H", "registration_year": "2001", "taxpayer_type": "INDIVIDUAL", "status": "INACTIVE", "regime": "SUELDOS_Y_SALARIOS", "validation": { "rfc_format_valid": true, "check_digit_valid": true, "active_in_system": false, "document_type": "RFC" }, "registration_info": { "initial_registration": "2001-03-15", "last_update": "2020-06-30", "deactivation_date": "2020-06-30", "deactivation_reason": "VOLUNTARY_CANCELLATION" }, "_spider": "mx_sat_rfc_by_curp", "_timestamp": "2021-03-30T03:19:51.292766" } }}
RFC No Encontrado
Sección titulada «RFC No Encontrado»{ "rfc": { "state": "COMPLETED", "created_at": "2021-03-30T03:18:36.801902", "updated_at": "2021-03-30T03:19:53.536683", "outcome": "FAILED", "details": { "success": false, "rfc": null, "message": "No se encontró registro RFC para el CURP proporcionado", "possible_reasons": [ "La persona nunca se registró como contribuyente", "Ingresos por debajo del umbral de registro fiscal", "Recién graduado sin obligaciones fiscales", "Trabajador de economía informal" ], "_spider": "mx_sat_rfc_by_curp", "_timestamp": "2021-03-30T03:19:51.292766" } }}
Formato y Validación RFC
Sección titulada «Formato y Validación RFC»Estructura RFC para Individuos
Sección titulada «Estructura RFC para Individuos»El RFC para individuos (personas físicas) es un código de 13 caracteres:
ABCD123456EF7
Estructura RFC para Empresas
Sección titulada «Estructura RFC para Empresas»El RFC para empresas (personas morales) es un código de 12 caracteres:
ABC123456EF7
Desglose del Formato (Individuos)
Sección titulada «Desglose del Formato (Individuos)»Posición | Caracteres | Descripción | Ejemplo |
---|---|---|---|
1-4 | Letras | Iniciales de nombre y apellidos | ABCD |
5-10 | Números | Fecha de nacimiento (AAMMDD) | 123456 |
11-12 | Letras | Diferenciador de homónimos | EF |
13 | Número/Letra | Dígito verificador | 7 |
Desglose del Formato (Empresas)
Sección titulada «Desglose del Formato (Empresas)»Posición | Caracteres | Descripción | Ejemplo |
---|---|---|---|
1-3 | Letras | Iniciales de razón social | ABC |
4-9 | Números | Fecha de registro (AAMMDD) | 123456 |
10-11 | Letras | Diferenciador de homónimos | EF |
12 | Número/Letra | Dígito verificador | 7 |
Algoritmo de Dígito Verificador
Sección titulada «Algoritmo de Dígito Verificador»function validateRFCCheckDigit(rfc) { const isIndividual = rfc.length === 13; const isBusiness = rfc.length === 12;
if (!isIndividual && !isBusiness) return false;
const weights = [13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2]; const startPos = isIndividual ? 1 : 0; const checkDigitPos = isIndividual ? 12 : 11;
let sum = 0; for (let i = 0; i < weights.length; i++) { const char = rfc[startPos + i]; const value = isNaN(char) ? char.charCodeAt(0) - 55 : parseInt(char); sum += value * weights[i]; }
const remainder = sum % 11; const calculatedCheckDigit = remainder < 2 ? remainder : 11 - remainder; const expectedCheckDigit = rfc[checkDigitPos];
return calculatedCheckDigit.toString() === expectedCheckDigit;}
Lógica de Negocio y Uso
Sección titulada «Lógica de Negocio y Uso»Cuándo Usar Validación RFC
Sección titulada «Cuándo Usar Validación RFC»- Verificación de Cumplimiento Fiscal: Confirmar estado de registro de contribuyente
- Verificaciones de Antecedentes Financieros: Verificar historial de cumplimiento fiscal
- Legitimidad Empresarial: Validar registro y estado empresarial
- Validación de Facturas: Verificar RFC para propósitos de facturación
- Verificación de Empleo: Confirmar registro fiscal para empleados
Interpretación del Estado Fiscal
Sección titulada «Interpretación del Estado Fiscal»Estado Activo
Sección titulada «Estado Activo»- Contribuyente Actual: La persona está registrada y activa con el SAT
- Obligaciones Fiscales: Sujeto a requisitos de declaración fiscal
- Autoridad de Facturación: Puede emitir facturas fiscalmente válidas
- Estado de Cumplimiento: Cumple con requisitos de registro fiscal
Estado Inactivo
Sección titulada «Estado Inactivo»- Dado de Baja: Ya no está activo en el sistema fiscal
- Registro Histórico: Registro fiscal previo disponible
- Autoridad Limitada: No puede emitir facturas fiscales válidas
- Problemas de Cumplimiento: Puede indicar problemas de cumplimiento fiscal
Estado No Encontrado
Sección titulada «Estado No Encontrado»- Sin Registro Fiscal: Nunca registrado con el SAT
- Por Debajo del Umbral: Los ingresos pueden estar por debajo de los requisitos de registro
- Economía Informal: Puede trabajar sin registro fiscal
- Estado Reciente: Puede ser nuevo en la fuerza laboral
Regímenes Fiscales
Sección titulada «Regímenes Fiscales»Código de Régimen | Descripción | Usuarios Típicos |
---|---|---|
SUELDOS_Y_SALARIOS | Sueldos y Salarios | Empleados |
ACTIVIDAD_EMPRESARIAL | Actividad Empresarial | Dueños de negocios |
ARRENDAMIENTO | Ingresos por Arrendamiento | Propietarios |
HONORARIOS | Honorarios Profesionales | Freelancers |
DIVIDENDOS | Dividendos | Inversionistas |
REGIMEN_SIMPLIFICADO | Régimen Simplificado | Pequeñas empresas |
Opciones de Configuración
Sección titulada «Opciones de Configuración»Configuración Básica
Sección titulada «Configuración Básica»{ "report_settings": { "rfc": { "include_regime_details": true, "include_registration_history": true } }}
Configuración Avanzada
Sección titulada «Configuración Avanzada»{ "report_settings": { "rfc": { "include_regime_details": true, "include_registration_history": true, "include_compliance_status": false, "verify_business_status": true, "historical_depth_years": 5 } }}
Parámetros de Configuración
Sección titulada «Parámetros de Configuración»Parámetro | Tipo | Descripción | Por Defecto | Opciones |
---|---|---|---|---|
include_regime_details | boolean | Incluir información de régimen fiscal | true | true/false |
include_registration_history | boolean | Incluir cronología de registro | true | true/false |
include_compliance_status | boolean | Incluir detalles de cumplimiento fiscal | false | true/false |
verify_business_status | boolean | Verificar estado de entidad empresarial | false | true/false |
historical_depth_years | integer | Años de historial a recuperar | 3 | 1-10 |
Manejo de Errores
Sección titulada «Manejo de Errores»Problemas Comunes
Sección titulada «Problemas Comunes»Tipo de Error | Descripción | Resolución |
---|---|---|
INVALID_CURP | Formato CURP inválido o no encontrado | Verificar CURP con RENAPO primero |
SAT_TIMEOUT | Timeout de base de datos SAT | Reintentar después de 15-30 minutos |
ACCESS_RESTRICTED | Acceso limitado a información fiscal | Contactar soporte para acceso mejorado |
PRIVACY_RESTRICTION | Detalles fiscales restringidos por leyes de privacidad | Remover configuraciones sensibles |
SYSTEM_MAINTENANCE | Sistema SAT en mantenimiento | Verificar estado del servicio SAT |
Mejores Prácticas
Sección titulada «Mejores Prácticas»- Validación CURP Primero: Siempre validar CURP antes de búsqueda RFC
- Cumplimiento de Privacidad: Manejar datos fiscales según leyes de privacidad mexicanas
- Retención de Datos: Seguir políticas de retención de datos para información fiscal
- Manejo de Errores: Implementar lógica de reintento adecuada para timeouts del sistema
- Monitoreo de Cumplimiento: Verificaciones regulares para cambios de estado fiscal
Integración API
Sección titulada «Integración API»Crear Persona con Verificación RFC
Sección titulada «Crear Persona con Verificación RFC»curl -X POST "https://api.emptor.io/v3/mx/persons" \ -H "X-Api-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "document_id": "ABCD123456EFGHIJ78", "city_locode": "MX MEX", "pipeline": { "name": "standard_background_check" }, "report_settings": { "rfc": { "include_regime_details": true, "include_registration_history": true, "verify_business_status": false } } }'
Obtener Detalles del Reporte RFC
Sección titulada «Obtener Detalles del Reporte RFC»curl -X GET "https://api.emptor.io/v3/mx/details/{person_id}/rfc" \ -H "X-Api-Key: YOUR_API_KEY"
Consideraciones Legales y de Cumplimiento
Sección titulada «Consideraciones Legales y de Cumplimiento»Ley Fiscal Mexicana
Sección titulada «Ley Fiscal Mexicana»- Código Fiscal de la Federación: Requisitos de registro fiscal
- Ley del Impuesto Sobre la Renta: Obligaciones de impuesto sobre la renta
- Protección de Datos: Cumplimiento LFPDPPP para datos fiscales
- Derechos del Contribuyente: Respeto por privacidad y derechos de datos del contribuyente
Casos de Uso de Verificación Fiscal
Sección titulada «Casos de Uso de Verificación Fiscal»Verificación de Empleo
Sección titulada «Verificación de Empleo»- Verificar registro fiscal del empleado
- Confirmar estado de cumplimiento fiscal
- Validar autoridad de emisión de facturas
- Evaluar participación en economía formal
Verificación Empresarial
Sección titulada «Verificación Empresarial»- Validar legitimidad empresarial
- Confirmar estado de registro fiscal
- Verificar capacidad de emisión de facturas
- Evaluar cumplimiento empresarial
Servicios Financieros
Sección titulada «Servicios Financieros»- Verificación de cumplimiento fiscal
- Evaluación de legitimidad empresarial
- Validación de facturas para pagos
- Evaluación de riesgo para préstamos
Endpoints API Relacionados
Sección titulada «Endpoints API Relacionados»- Crear Persona - Iniciar validación RFC
- Obtener Reportes - Recuperar resultados RFC
- Obtener Detalles del Reporte - Datos detallados RFC
- Actualizar Reportes - Actualizar validación RFC
Documentación Relacionada
Sección titulada «Documentación Relacionada»- Validación CURP - Validación de ID de México
- Validación NSS - Validación de seguridad social de México
- Registros Federales - Verificación de antecedentes penales
- Guía de Selección de Pipeline - Elegir estrategias de verificación
- Glosario Legal - Terminología legal