Technical Articles
Ajuste Subsidio Causado CFDi 2020
Hola!
De acuerdo al Apéndice 7 de la nueva Guía de Llenado para el complemento de Nómina en el CFDi, a partir del 01.01.2020 será posible reportar los Ajustes al Subsidio Causado cuando éste fue aplicado en el mes y que, de acuerdo a los ingresos acumulados mensuales, no le corresponde al trabajador.
Para ello, el SAT ha incluido tres nuevas claves a considerar en estos casos al generar el XML. Estas son (entre paréntesis la clave correspondiente en SAP):
- Deducción 107 (CFDD-107) para indicar el ajuste al subsidio causado aplicado en exceso (en los periodos anteriores del mes en curso).
- Otros Pagos 007 (CFDO-007) para reportar el impuesto que se dejó de retener en periodos anteriores por el subsidio causado aplicado en exceso.
- Otros Pagos 008 (CFDO-008) para ajustar el subsidio pagado que se entregó en exceso.
Para cubrir este cambio legal es necesario hacer algunas modificaciones en el reporte RPCPAYMX_CFDI_MANAGER.
Ahora no identificamos que haya necesidad de cambiar la configuración del CFDi que se realiza en la tabla T596J.
Tampoco identificamos que sea necesario modificar el cálculo de los impuestos en la función MXTAX.
La manera en que SAP detecta que hay un ajuste a tratar en el CFDi es cuando se genera un importe negativo. En este caso el Subsidio Causado. En esa situación se generará lo siguiente:
- Deducción 107 Con el subsidio causado aplicado en exceso.
- Deducción 002 aquí Con el impuesto que se dejó de aplicar en el pasado por el subsidio aplicado en exceso.
- Deducción 002 Con el impuesto calculado en el periodo actual.
- Otros Pagos 007 Con el Impuesto que se dejó de retener por el Subsidio aplicado en exceso.
- Deducción 071 Con el Subsidio pagado en exceso.
- Deducción 008 Con el Subsidio pagado en exceso (igual a Deducción 071).
- Deducción 002 igual a cero.
- Subsidio causado será igual a cero.
Para generar ajustes en los conceptos de ISR aplicados en el pasado, SAP dispone del método de cálculo 4 “Ajuste por periodo”. Al aplicar este método en el cálculo del impuesto se generarán los conceptos que identificarán un caso de ajuste al subsidio aplicado en exceso. Básicamente se identifican cuando en la tabla RT del cluster se generan los conceptos técnicos /481 y /484 en negativo (subsidio al empleo causado y pagado, respectivamente).
Con esa información será suficiente para que el reporte del CFDi aplique el tratamiento ya descrito al ajuste del subsidio causado.
Si no se aplica el método 4, entonces el cálculo de los impuestos no generará los conceptos necesarios para identificar que se trata de un ajuste de subsidio. En este caso se pueden crear reglas de cliente para generar tales conceptos.
Algunas ideas para estas reglas: comparar la base gravada ordinaria del mes, cc-n /470, vs. el límite superior del último renglón con subsidio y verificar si se generó un subsidio causado en el mes, cc-n /485 en MXCRT. Si es el caso, entonces se deben generar los conceptos /481 y /484 en negativo con los correspondientes acumulados mensuales de /482 y /485. El efecto resultante será el necesario para que sea reportado el Ajuste al subsidio causado en el CFDi como se indicó arriba.
Esperamos esta información les sea de utilidad.
Buenos días,
Tendrá algunos ejemplos de este proceso ya con números o xml que me puedan orientar, la verdad que no me queda del todo claro el tema de los ajustes, sobre todo que el SAT en su anexo 20 no expone todos los escenarios que se pueden dar en la nómina.
Muchas gracias por su atención, excelente día.
Hola Arturo.
No puedo compartir archivos por este medio pero sí imágenes. Éste es un ejemplo de cómo espera el SAT que reportemos estos ajustes (empleado quincenal). Los datos los obtuve de la nueva guía de llenado, Apéndice 7.
Hola, buen día...
Nosotros olo hacemos ajuste anual, voy realizar pruebas cambiando ya sea el el user-exit 004 o en la tabla T7MX03.
A lo que quiere entender es:
1) El ajuste se hace sobre la ordinaria y no una nómina especial de ajuste ?
2) A solicitud de Depto. de nóminas, por medida dinamica estoy creando IT561 para excluir a los empleados de nuevo ingresos de ajuste anual si no iniciaron desde el 1er. día del ejecicio ( en curso ), esto es sano ? , afecta al ajuste por periodo ?
De antemano, gracias por sus comentarios
Saludos,
Rogelio
Hola Rogelio,
Saludos,
Gerardo.
Gracias Gerardo por tus comentarios.
Que tengas un buen día 🙂
Hola Roger.
No estás obligado a aplicar el método 4. Puedes seguir con el método 2. En este último caso deberás crear reglas de cliente para reflejar los ajustes del subsidio en los conceptos /481 y /484.
Si deseas probar el método 4 en la tabla T7MX03 es suficiente con que lo hagas para el tipo de impuesto "O" (Ordinario). No afectará otros tipos de impuestos, sino sólo al ordinario mensual.
Lo que haces con el IT0561 es la mejor práctica. Eso sólo afecta al Ajuste Anual pero no el Ajuste mensual ordinario.
Gracias Hugo, Desce hace mucho tiempo ( años ) en lugar de utilizar el metodo 2 , nominas solicito que se aplicara el metodo 3.
Con la información publicada, se lo pase a Nóminas y discutimos al respecto, ahora quieren ver el efecto del metodo 2 en la ordinaria y ver el 3, ya que temen que lo tome mal el sindicato , exponerlo y ponerlo a la practica.
De antemano, gracias por la atención
Saludos,
Rogelio
Hola Hugo,
tengo mis dudas respecto a la solucion por reglas si se sigue usando un método diferente al ajuste por periodo:
Desde mi punto de vista la solucion optima es la que mencionas de cambiar a "ajuste por periodo" en el ultimo periodo del mes dado que con ello si se cumple lo que menciona el SAT.
Saludos,
Gerardo.
Hola Gerardo.
sigo pensando que la solución por reglas es posible para quienes desean seguir aplicando el método 2. Pero no tengo plena certeza.
Obvio que la tabla MXCRT no está actualizada al término de la función MXTAX. Eso ocurre al procesar la función ADDCU que se encuentra casi al final del esquema. Así que, no sólo se debe considerar la MXCRT sino también la RT al final de MXTAX para saber si el trabajador tiene derecho al subsidio o no. Con esa información ya se pueden tomar las acciones que proceden.
En el caso que mencionas (que no se genere subsidio en la Q.1 pero sí en la Q.2), entonces, las reglas anularían la aplicación del subsidio en la Q.2 y generarían impuesto.
Habría que realizar algunas de estas reglas a manera de prueba para verificar si es viable la solución. Espero poder realizar esto en las siguientes semanas. Si lo consigo, les informo los resultados.
Saludos!
Hola Hugo,
tendrás los niveles de LSP's minimos que se van a necesitar para aplicar la nota que liberes y ya tienes fecha para ello?
Saludos y gracias.
Gerardo.
Contesto abajo, Gerardo, como comentario general del blogpost.
Hola. IMPORTANTE!!!
Estos son los niveles mínimos requeridos para aplicar, con la transacción SNOTE, la nota con el cambio legal cuando sea liberada: HRSP 49 para ECC 6.08, nivel C1 (121) para 6.04 y nivel F5 (155) para 6.00.
Los Support Packages en referencia fueron liberados en Diciembre del 2017, así que, si alguien no está en un nivel de HRSP igual o superior al de Diciembre de 2017 no podrá utilizar la transacción SNOTE para aplicar la nota con el cambio legal. En ese caso, deberán validar si es posible aplicarla manualmente (no podemos garantizar esto último).
Hugo.
Con la finalidad de implementar a través de SNOTE los cambios, te pido apoyo para identificar el número de HRSP que debemos tener instalado dado que tenemos lo siguiente:
Producto instalados:
Componentes instalados
Componente SAP_HR:
Componente EA-HR:
De antemano te agradezco el apoyo.
Saludos.
Hola, Como tal en la tabla MXCRT cambie mi entrada al metodo 2 hasta el infinito, en el exit 0004, integre codigo para verificar si es la ultima nómina del mes para cambiar al metodo 4.
* Begin 01/01/2020
IF ultper EQ 'X' AND
ocrsn IS INITIAL AND
tipo_cal EQ 'O' AND
endda(4) GE '2020'.
met_cal = '4'.
clase_tbl = 'ME01'.
ENDIF.
Con esto esta calculando un ISR a favor
En mis primeras pruebas antes de integrar el exit 0004, en la tabla MXCRT manualmente en la ultima nómina del mes tenia la entrada 4 ME01 y no me calculaba un ISR a favor
Sin User exit y MXCRT 13/01/2019 - 31/01/2019 ( 4 ME01 ) ISR calculado 637.83 ( Negativo )
Con User exit y MXCRT 13/01/2019 - 31/01/2019 (2 - CA01 ) ISR calculado 331.99 ( positivo , a favor )
No encuentro explicación
Saludos,
Rogelio
Hola Rogelio,
Dicuslpa, que User Exit es el que utilizas para identificar si es la última nómina del mes?? En que Include se encuentra??
Gracias
Saludos
Hola Jonathan, EXIT_HMXCISR0_004 ( por la SE37 )
Muchas gracias Rogelio!!!!
Hola Cesar,
Los números que mandas son, estas en la versión 6.0 con EHP 7. con un Nivel 137 del Support
Package D7, los requisitos para esa versión nos indican son: Para la Versión 6, el Nivel es 155 con
Support Package F5
Saludos.
Que tal María, estamos viendo la posibilidad de llegar hasta el nivel 168 con Support Package G7, aunque es muy justo el tiempo.
Gracias por el apoyo, saludos.
Hola Hugo buenos dias
se tiene que cambiar para todos el método de cálculo de impuestos?, nosotros manejamos el método 3 con tabla mensual
saludos
gracias
Hola Jesy,
No. No será obligatorio cambiar de método de impuestos. Si usas el 3 o el 4, de manera estándar se podrán generar los conceptos /481 y /484 en negativo. Eso ya sucede hoy en día. Con esos conceptos en negativo, el cambio que estamos haciendo en el CFDi sabrá qué hacer y cómo tratarlos.
Si usas el método 2, entonces la función MXTAX generará el /481 y /484 negativos, cuando aplique. Con estos conceptos negativos en la RT el CFDi hará lo correspondiente para cumplir con el Apéndice 7 de la nueva guía de llenado del complemento de nómina.
Hola Hugo,
¿Sabéis cuándo liberaréis esta nota en la que trabajas?
Muchas gracias de antemano,
Un saludo
Hola que tal.
Alguien ya implemento la nota 2860748 ? Yo tengo una nómina mensual que en teoría no requiere de ajuste por ser pago único donde por el importe pagado no se generó el concepto /484, sin embargo al timbrar el PAC me manda un mensaje que dice:
(301:Error en complemento Nómina. [Error #NOM227] El elemento OtroPago no contiene un atributo TipoOtroPago con la clave 002. Para TipoRegimen=02 debe existir el campo TipoOtroPago con las posibles claves: 002, 007, 008)
Saludos.
Justamente este error tenemos nosotros tambien despues de implementar todas las notas liberadas.
Parece que existen condiciones que no cuadran aqui en la validacion:
tipo regimen 2 debe de generar siempre un codigo 002 en otros pagos, pero cuando existe codigo 002 y tambien 007 o 008 el nodo subsidio al empleo no debe de generarse. Y en nuestro caso si se genera...
Hola Miroslav. ¿Tus empleados son mensuales? Si lo son ¿me puedes enviar por correo la RT y el XML correspondientes? Para revisar tu caso. Saludos!
Hola Oliver.
también tienes que aplicar las notas 2875506 y 2875507
Luego de eso, avísame qué resultados obtienes.
Saludos!
Hugo Rodriguez
Hola Hugo, buenas tardes
Disculpa, tú sabes que User Exit o BAdI podríamos utilizar para identificar que el período de nómina que se está calculando es el último del mes y así poder crear de manera automática el infotipo 561??
Muchas gracias
Saludos
Hola Jonathan.
el user exit es el que te menciona Roger: EXIT_HMXCISR0_004
No sé puede crear el IT0561 en automático pero en ese user exit puedes decidir, por código, el método y la taba de ISR que vas a aplicar.
Saludos!
Muchas gracias Hugo!!!!!!!
Hola Hugo;
Tengo el escenario de un empleado quincenal que no genera /481 ni /484, solo genera ISR /440, al generar el XML aparece una linea
OtroPago Importe "0.00" Concepto "Subsidio al empleo efvo" Clave "_481" Tipo Otro pago "002"
Sin embargo al intentar timbrar con el PAC en la nueva versión 2020, genera error.
Solo permite timbrar si debajo de esa línea se agrega.
SubsidioAlEmpleo SubsidioCausado "0.01"
De momento se ha ingresado el dato antes de generar el XML. Tendrán referencia de que se esté presentando este error? y de ser así como lo están solucionando?
Saludos!!!
Hola Jaime.
ese error lo han reportado algunos PACs que siguen aplicando el Apéndice 5 de la Guía de llenado. Pero algunos otros PACS ya permiten que la clave 002 de Otros Pagos se pueda reportar en cero, tal y como hacemos por estándar.
De hecho, el SAT publicó que a partir del 01.Feb.2020 el Apéndice 5 (el del 0.01 en la clave 002) queda derogado a partir del 1o de Febrero, 2020. Puedes encontrar el comunicado en esta página: http://omawww.sat.gob.mx/tramitesyservicios/Paginas/complemento_nomina.htm primer párrafo. Textualmente dice:
"El 11 de diciembre de 2019, fue publicada una revisión al complemento de nómina versión 1.2 que impacta a las validaciones que llevan a cabo los Proveedores de Certificación de CFDI, la cual entrará en vigor el 1 de enero del 2020 de forma opcional, siendo ya de forma obligatoria a partir del 1 de febrero 2020. En esta última fecha queda sin efectos el “Apéndice 5 Procedimiento para el registro de Subsidio para el empleo causado, cuando no se entregó en efectivo” de la “Guía de llenado del comprobante del recibo de pago de nómina y su complemento” el cual será eliminado en la siguiente actualización a dicha guía.".
Supongo que todos los PACs ya está cumpliendo con esta indicación de la autoridad.
Saludos!
Borro mensaje, encontre la solucion.
gracias
Hola!
Por favor consideren los comentarios de este blog de acuerdo a su fecha de publicación. Posterior a la primer publicación he enviado algunos correos para informar cómo vamos mejorando nuestra solución.
La solución que ahora tenemos disponible se va afinando gracias a las aclaraciones que la autoridad va publicando y a los resultados que ustedes nos van proporcionando de acuerdo a los diferentes escenarios que van generando.
Al respecto, he recibido algunas consultas con relación a los cambios que hemos hecho en el cálculo estándar de los impuestos (función MXTAX).
Para no entrar en detalles acerca de las mejoras que hemos hecho a la solución original, ahora les comento en qué consta la solución que tenemos vigente al día de hoy:
Qué hacemos ahora en MXTAX diferente a lo que hacíamos antes de este cambio legal?:
Así es como está establecido en el ejemplo que provee el SAT en su Guía de llenado. Esto es, se retira todo lo aplicado o sólo se aplica lo que corresponde al periodo. No se hacen ajustes parciales.
Lo anterior, como ya mencioné, con el método 2. Los otros métodos de impuestos siguen funcionando como antes hacían.
Qué no hacemos en MXTAX con el método 2?:
1. No se le ajusta el subsidio aplicado vs el subsidio real del mes. Por ejemplo, si al trabajador se le han aplicado 110 pesos de subsidio durante el mes y sólo le corresponden 100. No se le retiran esos 10 pesos que se le aplicaron de más durante el mes.
2. Otro ejemplo, al trabajador se le aplicaron 90 de subsidio pero al final del mes resulta que tiene derecho a 100 pesos. En este caso, con el método 2, no se le aplicarán esos 10 pesos adicionales a los que tiene derecho según la tabla mensual. Por consecuencia tampoco se ajusta el impuesto con el método 2 a menos que sea por retirarle el subsidio aplicado como explico en lo que Sí hacemos ahora en MXTAX.
En consultas con el chat 1a1 del SAT se ha dicho que sí es permitido realizar y reportar esos ajustes de los dos ejemplos anteriores, pero no hay un comunicado oficial por parte de la autoridad. Por lo mismo no hemos hecho esas adecuaciones.
Algunos de ustedes han decidido seguir aplicando el método 4 o el 3 para impuestos. Al respecto tengo los siguientes comentarios:
A FAVOR:
* Sólo aplicando estos métodos en el último periodo del mes: para los dos ejemplos descritos arriba, y aplicando un factor de proyección = 1, se generarán los ajustes del subsidio e impuesto en las cantidades que corresponden en el mes.
EN CONTRA:
* Si se aplica durante el mes, el SAT no prevé que se apliquen ajustes al subsidio sino sólo hasta el último periodo del mes. Es decir, se pueden generar ajustes negativos en /484 y /481 antes del último periodo del mes. Por ejemplo, a un trabajador se le aplica subsidio en la primer semana pero luego se le retira en la segunda, se le vuelve a entregar subsidio en la tercer semana, etc.
* Se puede generar un importe de subsidio que supere la cantidad a que tiene derecho según la tabla de subsidio del periodo ordinario correspondiente.
* Se puede generar una combinación de ajustes que el SAT no está permitiendo: /481 negativo con /484 positivo (pagado negativo con causado positivo). Hasta ahora no hay forma de timbrar estos casos.
Por lo anterior, y siendo conservadores, al día de hoy, el método sugerido es el 2 ya que los métodos 3 y 4 pueden generar escenarios ahora no previstos por el SAT. Al final, ésta es sólo una sugerencia, la decisión de cuál método aplicar debe ser indicada por el área fiscal de cada empresa.
Lo que queda pendiente de definir es si se debe ajustar el subsidio/impuesto según el par de ejemplos mencionados arriba. Esperemos que haya un comunicado oficial del SAT para estos casos.
Eso es lo que hoy tenemos. Ya les haremos saber cualquier cambio importante al respecto.
Saludos!
Buen dia a todos,
Me gustaria preguntar a la comunidad si alguien mas tiene el escenario de subsidio causado positivo /484 y subsidio neto /481 negativo?
Esto se señala como una situacion que no se puede timbrar. Entonces la unica alternativa aqui seria evitar que estos casos succeded por medio de nomina? Encontraron alguna otra alternativa de acomodar el XML para estos casos para que se puedan timbrar?
Gracias,
Miroslav
Hola Miroslav,
tengo el mismo escenario que mencionas ¿ya encontraste alguna alternativa de solucion? si no es asi yo estoy buscándola y si encuentro alguna te lo hare saber.
Saludos.
Gerardo Bailón.
Hola Hugo
entonces nos recomiendas el metodo 2 ???? pero la generacion de los conceptos tecnicos /481 y /484 y la diferencia a favor o en contra se vera reflejado en el recibo de nomina ??? es decir sumara o restara en el neto a pagar?
saludos
Hola Jesica,
perdón que me entrometa en tu conversación con Hugo. Si aplicaste las notas y utilizas el método 2 (tabla directa) el ajuste se realiza perfectamente siempre y cuando tengas la configuración adecuada en la T596J y en la V_T5F99K2 tengas la opción AJSUB con el valor de "1".
El ajuste (/481 y /484) se suma o resta sin problemas.
Saludos.
GBU.
Gracias Gerardo
Lo que comenta Gerardo es correcto.
Buenos dias Hugo
Mi duda ahora es aunque no maneje el CFDI con SAP va a tener la funcionalidad de los conceptos /481 y /483 manejando el metodo 2???
Saludos
Gracias
Hola Hugo,
un cliente me comenta que no debe aparecer el nodo de "OtrosPagos" con el subsidio causado en nominas especiales ¿crees que esto sea correcto o según tu conocimiento este nodo debe aparecer en cualquier tipo de nomina (aunque sea en cero)?.
Si me baso en lo que dice la ley se menciona:
Por lo que puedo intuir es que no importa el tipo de nomina sino mas bien es obligatorio cuando se incluyan conceptos de sueldos y salarios y asimilados a salarios y en caso contrario NO debe aparecer ¿cierto?
Saludos.
Gerardo Bailón.
Grupo Turance.
Hola Gerardo.
lo que comenta tu cliente no es correcto. Existe la obligación de incluir la clave 002 de OtrosPagos y el subnodo SubsidioAlEmpleo en los CFDis del Régimen 02 (no importa si las nóminas son ordinarias o extraordinarias). Tampoco es relevante si el subsidio es igual a cero.Se debe incluir esa información.
De hecho los PACs están rechazando los xmls con TipoNomina="E" que no incluyen esa información.
saludos!
Hola Hugo,
El dato TotalOtrosPagos desaparece del nodo Nomina cuando el nodo OtrosPagos es cero, que es cuando los empleados no tienen subsidio al empleo.
Que puedo hacer para que no desaparezca porque el PAC me los rechaza?
Ya lo resolvimos, una nota no fue aplicada correctamente.
Muchas gracias
Muy bien!
Hola!
he publicado el siguiente blog donde pueden encontrar una sugerencia para aplicar el ajuste de subsidio al final del mes: https://blogs.sap.com/2020/02/19/ajuste-de-subsidio-mensual/
Espero les sea de utilidad.
Saludos!
Tengo un caso en el que el total de impuesto no coincide
Algun caso similar ?
Saludos,
Rogelio