CAUSA
La fecha y hora correspondiente al lugar de expedición del comprobante es superior en 5 minutos conforme a la hora actual del servicio web.
SUSTENTO
Anexo 20 CFDI 3.3
Guía de Llenado CFDI 3.3
DETALLE
La fecha y hora de expedición del comprobante se obtiene del atributo cfdi:Comprobante/@Fecha y la zona horaria correspondiente al código postal especificado en el atributo cfdi:Comprobante/@LugarExpedicion. Con el archivo "c_CodigoPostal_Referencias HusoHorario.xls" se obtiene que zona horaria corresponde a este código postal y si se encuentra en horario de verano o de invierno, de tal manera que podemos obtener la hora UTC (Tiempo Universal Coordinado) para compararse con la hora del servicio web de Timbrado.
EJEMPLO
Tenemos un CFDI que se generó en un servidor de la Ciudad de México a las 14:55:10 hrs. del día 01 de Enero del 2018 por lo que tomó el valor Fecha="2018-01-01T14:55:10". Pero la operación fiscal fue originada en Tijuana, Baja California Norte, con un C.P. 22000. Por lo que en el CFDI se debe poner LugarExpedicion="22000". Como lo muestra la siguiente imágen.
Al momento de enviarse al servicio web de timbrado, regresará el mensaje de error:
"Fecha y hora de generación fuera de rango {La fecha de emisión del Comprobante no puede ser posterior a 5 minutos. LugarExpedicion '22000' corresponde a fecha/hora de expedición '2018-01-01T22:55:10' UTC}"
Pero... ¿Por qué?
Lo primero que llama la atención en el mensaje de error es que nos regresa una hora muy posterior a la del CFDI. Esto es debido a que es la hora en UTC obtenida con la zona horaria correspondiente del LugarExpedicion.
Para obtener la hora UTC seguimos estos pasos:
Buscamos el código postal 22000 en la relación de Husos Horarios por código postal.
Obtenemos el valor correspondiente de la diferencia horaria. Aquí debemos considerar si se encuentra en horario de verano o de invierno. Para este ejemplo el 1 de Enero se encuentra en horario de invierno por lo que corresponde una diferencia horaria de -8.
Operamos la diferencia horaria con la Fecha del CFDI. Sabemos que el Tiempo del Noroeste en Frontera = UTC - 8 por lo que...
UTC = Tiempo del Nororeste + 8
2018-01-01T14:55:10 + 8 = 2018-01-01T22:55:10 UTC
Pero como la hora que se tomó para generar la factura fue del Tiempo del Centro (UTC - 6), la hora UTC sería 2018-01-01T14:55:11 + 6 = 2018-01-01T20:55:10 UTC. Lo cual significa que se está registrando una fecha 2 horas posterior de la hora UTC actual. Estas dos horas posteriores son generadas por la diferencia de la zona horaria de Tijuana con la de la Ciudad de México.
SOLUCIÓN
Si el lugar de expedición es en Tijuana, la hora de expedición debe corresponder a la hora local de Tijuana. Si la hora de expedición es de la Ciudad de México el código postal del lugar de expedición debe corresponder con uno de la Ciudad de México. Ambas soluciones funcionarán, pero deberá escogerse la que aplique fiscalmente.
Este error solo puede ocurrir cuando se ingresa una Fecha/Hora de expedición de una zona horaria con menor diferencia con un código postal que pertenece a una zona horaria con mayor diferencia. Como en el caso anterior se ingreso Fecha/Hora de expedición de la Ciudad de México (UTC-6) y un lugar de Expedición de Tijuana (UTC-8). Si ocurriera de forma inversa, se tiene un margen de hasta 72 horas inferiores por lo que no marcará un mensaje de error.
Post date: Apr 10, 2018 10:36:12 PM