Estas validaciones ayudan a preparar la base de datos para la adopción de CFDI 4.0.
Si quieres saber más sobre los nuevos requerimientos y proceso para generar CFDI en su versión 4.0, consulta el artículo CFDI 4.0
A continuación se presentan 2 sentencia a ejecutar en el buscador de MySQL para:
- La primera es una validación simple para detectar errores básicos.
- La segunda permite extraer la información con MySQL 8 generando un archivo en el formato adecuado para posteriormente hacer la validación ante el SAT.
Consideraciones importantes:
- Estas validaciones son útiles únicamente para empresas que no venden al público en general.
- En el caso de empresas que venden al público en general, ambas validaciones no son útiles porque se encontrarían demasiados errores como:
- probablemente casi ningún cliente tendrá código postal real o podría ser cualquiera,
- tendrán el RFC genérico (nacional o extranjero).
- No está contemplado el caso de empresas que llevan comas dentro de sus nombres, por ejemplo Mesas, Sillas y Manteles, S. A. de C. V. donde la razón social lleva una coma de separación entre las dos primeras palabras del nombre.
- No se valida cuando el RFC es genérico (nacional o extranjero).
- No se valida cuando el cliente está dado de baja (bloqueado).
- La validación del RFC es muy básica: sólo la longitud. Pero si al cliente se le ha facturado en los últimos años, debe estar correcto (aunque pudiera ya no estar en la lista del SAT).
Validación local
Esta consulta te permitirá obtener todos los registros de tu base de datos que presenten alguna discrepancia en los elementos a validar establecidos por el SAT: el RFC, Nombre o Razón social o el Código Postal.
Con el resultado obtenido al ejecutar este query, deberás realizar las correcciones directamente en el registro de tu cliente dentro de Proscai, para poder validarlo posteriormente ante el SAT.
1. Copia la siguiente consulta y ejecútala en el query Browser de MySQL:
SELECT CLICOD, CLIRFC, CLINOM, CLICP FROM FCLI WHERE ((CLIRFC<>'XEXX010101000') AND (CLIRFC<>'XAXX010101000') AND (CLIBAJA='1900-12-31')) AND((LENGTH(CLIRFC)<12) OR (LENGTH(CLIRFC)>13) OR ((LENGTH(CLIRFC)=12) AND (INSTR(CLINOM,',')=0)) OR (LENGTH(CLICP)<>5)) ORDER BY CLICOD LIMIT 1000; |
Un ejemplo de resultado podría ser parecido al siguiente, se pueden observar registros donde falta la coma separando la Razón social de las siglas de su Régimen societario (1); o donde falta el Código Postal (2), o dónde el registro del RFC está erróneo (3).
2. Corrige en Proscai los errores que hayas detectado como:
- faltantes de , (coma) en su nombre separando las siglas del régimen societario
- faltante o excedente de espacio en su nombre
- RFC mal estructurado: 12 posiciones para persona moral / 13 posiciones para persona física
- faltante de Código Postal, o que sea menor o mayor a 5 dígitos, etc.
3. Podrás ejecutar esta consulta tantas veces como consideres necesario, hasta completar la revisión y corrección de tus clientes.
Extracción de información con MySQL 8 para validar ante el SAT
Con esta consulta obtendrás un archivo que podrás utilizar en el portal del SAT para validar de forma masiva tu información, a fin de obtener la respuesta del SAT sobre la concordancia de tu información y sus registros fiscales.
IMPORTANTE
- Esta consulta está limitada a 5000 registros porque es lo máximo que puede procesar el validador del SAT.
- La información obtenida se debe guardar como Tab Separated y se debe quitar el encabezado (primera línea).
1. Copia la siguiente consulta y ejecútala en el Workbench de MySQL:
SELECT CONCAT(ROW_NUMBER() OVER(),'|',CLIRFC,'|',IF(LENGTH(CLIRFC)=12,UPPER(MID(CLINOM,1,INSTR(CLINOM,',')-1)),UPPER(CLINOM)),'|',CLICP) FROM FCLI WHERE (CLIRFC>='') AND (CLIRFC<>'XEXX010101000') AND (CLIRFC<>'XAXX010101000') AND (CLIBAJA='1900-12-31') AND ((LENGTH(CLIRFC)=12) OR (LENGTH(CLIRFC)=13)) AND ((LENGTH(CLIRFC)<>12) OR (INSTR(CLINOM,',')>0)) AND (LENGTH(CLICP)=5) ORDER BY CLIRFC LIMIT 5000; |
Un ejemplo de resultado podría ser parecido al siguiente (1).
2. Exporta la información haciendo clic en el botón Export (2) ,
3. Decide la ubicación, asigna un nombre al archivo y guárdalo como tipo Tab separated (1).
4. Posteriormente abre el archivo con el bloc de notas (1) y borra la primera línea que corresponde al encabezado (2).
Se sugiere el uso del bloc de notas en lugar de Excel, ya que éste modifica el texto cuando encuentra caracteres especiales como ñ o acentos.
5. Finalmente guarda el archivo.
Validar RFC, nombre, denominación o razón social y CP ante el SAT
1. Con el archivo obtenido desde MySQL, ingresa al siguiente enlace: https://agsc.siat.sat.gob.mx/PTSC/ValidaRFC/index.jsf e introduce el texto que te solicita (1).
2. Activa la casilla Validar RFC, nombre, denominación o razón social y CP (1), enseguida haz clic en el botón Validación masiva de RFC, Nombre y Código Postal (2).
3. Haz clic en el botón Seleccionar archivo (1). Busca en la ruta donde guardaste tu archivo (2) y selecciona el archivo a validar (creado con MySQL 8 o con MySQL 5.1 según sea tu caso) (3).
4. Cargado el archivo (1), haz clic en el botón Validar (2).
5. La página del SAT indicará que la consulta terminó (1) y debes esperar a que se descargue el archivo RESPUESTA_SAT_RFC (2), finalmente haz clic en el botón Terminar (3).
6. Abre el archivo que te envió el SAT (1) y revisa la respuesta de validación de cada registro de tus clientes (2).
7. Si alguno de los registros revisados por el SAT indica que hay información incorrecta (2) deberás realizar la modificación en Proscai o solicitar a tu cliente que te envíe la información correcta y volver a realizar el procedimiento.
Si alguno de tus clientes ya te está solicitando la emisión de CFDI en versión 4 y en tu listado ha sido aprobado por el SAT, estarás en posibilidades de emitirlo a tu cliente. Cuando entre en vigor de manera definitiva, Proscai estará listo para todos aquellos clientes que han sido aprobados.
Es importante que realices ante el SAT las validaciones necesarias del registro de tus clientes, antes de la entrada en vigor.
Comentarios
Inicie sesión para dejar un comentario.