Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Envío de registros y sus respuestas (https://www.clubdelphi.com/foros/forumdisplay.php?f=66)
-   -   Prefacturacion, Proformas y Borradores de facturas (Faq Verifactu) (https://www.clubdelphi.com/foros/showthread.php?t=96979)

novatico 08-11-2024 11:11:35

Cita:

Empezado por ermendalenda (Mensaje 559445)
Hola
Si emites 2 tiques dentro del mismo minuto y sólo envías 1 cuando envíes el segundo estará fuera de tiempo y te dará el error 2004 mejor manda todo lo qie tebgas en el mismo paquete

Hay ejemplos más claros que mercadona, hay muchos negocios que emiten tiques más rápidos que un supermercado. Por ejemplo una autopista, una panadería, algun tipo de negocios de juegos...

Si repasas los procesos que voy a realizar, verás que digo "El módulo de "Control de Flujo", estará revisando este fichero de "envios pendientes", y en mi caso, cada vez que detecte 1 pendiente, tomará el "datetime" de ese instante y actualizando el "registro de facturación de alta", realizará el envío, controlando en la respuesta los posibles errores."

Esto evita el error por superar el tiempo.
Por supuesto también me supone actualizar a la vez la "huella".

CarlosArjonomia 08-11-2024 11:28:26

¿Controlan ya lo de los 60"?, lo digo porque puedo enviar registros sin esperar ese tiempo y no devuelve ningún error.

edari 08-11-2024 11:32:07

Cita:

Empezado por CarlosArjonomia (Mensaje 559453)
¿Controlan ya lo de los 60"?, lo digo porque puedo enviar registros sin esperar ese tiempo y no devuelve ningún error.

Creo que todavía no porque a mí también me dejó el otro día

sglorka 08-11-2024 12:08:47

Cita:

Empezado por novatico (Mensaje 559452)
Si repasas los procesos que voy a realizar, verás que digo "El módulo de "Control de Flujo", estará revisando este fichero de "envios pendientes", y en mi caso, cada vez que detecte 1 pendiente, tomará el "datetime" de ese instante y actualizando el "registro de facturación de alta", realizará el envío, controlando en la respuesta los posibles errores."

Esto evita el error por superar el tiempo.
Por supuesto también me supone actualizar a la vez la "huella".

Quiero entender bien lo que hace tu proceso, creas la factura, creas el registro de facturación, salvas en una tabla de envíos pendientes los registros de facturación y luego un módulo aparte, verifica si tiene que enviar algún registro. Si hay que enviar, controlas ese instante para volver a generar el nodo de fecha de creación, si fuera el caso ya que puedes estar fuera de los 60 segundos, y reconstruyes la huella de ese registro.

Bueno, si es así como funciona, bajo mi punto de vista, no es correcto porque el pilar principal de Verifactu es que una vez creado el registro de facturación este es "inmutable"
No puedes modificar un registro de facturación una vez emitido. De todas formas, este error no tienes que subsanarlo.

rci 08-11-2024 12:14:09

Cita:

Empezado por sglorka (Mensaje 559457)
Quiero entender bien lo que hace tu proceso, creas la factura, creas el registro de facturación, salvas en una tabla de envíos pendientes los registros de facturación y luego un módulo aparte, verifica si tiene que enviar algún registro. Si hay que enviar, controlas ese instante para volver a generar el nodo de fecha de creación, si fuera el caso ya que puedes estar fuera de los 60 segundos, y reconstruyes la huella de ese registro.

Bueno, si es así como funciona, bajo mi punto de vista, no es correcto porque el pilar principal de Verifactu es que una vez creado el registro de facturación este es "inmutable"
No puedes modificar un registro de facturación una vez emitido. De todas formas, este error no tienes que subsanarlo.

Estoy de acuerdo con sglorka: No puedes cambiar el registro de facturación, por lo tanto no puedes modificar FechaHoraHusoGenRegistro ni tampoco la Huella

Si un programa hace esto no cumpliría la ley

novatico 08-11-2024 12:14:42

Cita:

Empezado por sglorka (Mensaje 559457)
Quiero entender bien lo que hace tu proceso, creas la factura, creas el registro de facturación, salvas en una tabla de envíos pendientes los registros de facturación y luego un módulo aparte, verifica si tiene que enviar algún registro. Si hay que enviar, controlas ese instante para volver a generar el nodo de fecha de creación, si fuera el caso ya que puedes estar fuera de los 60 segundos, y reconstruyes la huella de ese registro.

Bueno, si es así como funciona, bajo mi punto de vista, no es correcto porque el pilar principal de Verifactu es que una vez creado el registro de facturación este es "inmutable"
No puedes modificar un registro de facturación una vez emitido. De todas formas, este error no tienes que subsanarlo.

Trabajando de esta manera, para la AEAT no existe el registro de facturación hasta que lo envío, pues mi SIF va a ser "SOLO VERIFACTU", y estamos hablando de unos minutos, porque que pasaría si en la respuesta de un envío te devuelven t=180 ??. Pues si envías registros de facturación en espera, todos fallarían.

De hecho, he probado a enviar una factura con fecha del día anterior al envío y me la da correcta porque el dato "FechaHoraUsoGenRegistro" es el del momento.

sglorka 08-11-2024 12:18:58

Cita:

Empezado por novatico (Mensaje 559459)
Trabajando de esta manera, para la AEAT no existe el registro de facturación hasta que lo envío, pues mi SIF va a ser "SOLO VERIFACTU", y estamos hablando de unos minutos, porque que pasaría si en la respuesta de un envío te devuelven t=180 ??. Pues si envías registros de facturación en espera, todos fallarían.

Da igual que no exista en la Aeat. No puedes modificar un registro de facturación ya generado, no importa que lo hayas enviado o no. Míralo detenidamente por si debes cambiar algo en tu proceso. En el reglamento está expresado si ninguna duda.

novatico 08-11-2024 12:22:27

Cita:

Empezado por sglorka (Mensaje 559460)
Da igual que no exista en la Aeat. No puedes modificar un registro de facturación ya generado, no importa que lo hayas enviado o no. Míralo detenidamente por si debes cambiar algo en tu proceso. En el reglamento está expresado si ninguna duda.

De acuerdo, le daré una vuelta. Gracias.

Un momento... estoy pensando que, si el registro de facturación se ha generado hace 4 minutos, y sigue en espera por los motivos que sea, he de marcar ese envío como "incidencia" no ??
Eso no sería también modificar el registro de facturación ??

Vaya lio...

Faneka 08-11-2024 12:29:00

Si no se puede modificar el registro de facturación una vez creado, en el caso por ejemplo que lo generes, lo vayas a enviar y por cualquier problema, bien no tengas internet, el servidor de hacienda este ko, no se pueda enviar, tengo entendido que hay que marcarlo como incidencia y cuando se pueda volver a enviarlo, en este caso ¿el registro de facturación se modifica para añadir la etiqueta de incidencia a S?. Porque no creo que haya que generar otro registro de facturación igual pero con la etiqueta de incidencia, al crear otro la fecha creación, registro anterior, etc.. podrian ser otros. A este caso estoy dandole vuelvas desde ayer y aún no le he metido mano.

sglorka 08-11-2024 12:34:40

A ver, la marca de Incidencia va en el mensaje de envío que empaqueta los registros de facturación, no va en el registro de facturación. Cada vez que hay que enviar, se crea un mensaje de envío que empaqueta todo o un sólo registro.

Faneka 08-11-2024 12:38:18

Tienes razón, va en la cabecera, tema solucionado, jaja.

novatico 08-11-2024 12:38:49

Cita:

Empezado por sglorka (Mensaje 559463)
A ver, la marca de Incidencia va en el mensaje de envío que empaqueta los registros de facturación, no va en el registro de facturación. Cada vez que hay que enviar, se crea un mensaje de envío que empaqueta todo o un sólo registro.

Es verdad, tienes razón.
Gracias por aclarar.

Pues entonces controlaré el "datetime" que figura en el registro de facturación grabado, con el actual, y si supera el límite grabaré la marca de "incidencia=S"

ermendalenda 08-11-2024 15:42:07

Cita:

Empezado por sglorka (Mensaje 559463)
A ver, la marca de Incidencia va en el mensaje de envío que empaqueta los registros de facturación, no va en el registro de facturación. Cada vez que hay que enviar, se crea un mensaje de envío que empaqueta todo o un sólo registro.

Gracias por aclarar, pero entonces me crea una duda de "inconsistencia existencial"
Si tengo un paquete de envío que pasa a incidencia por que tuve caída de red o lo que sea, cuando vuelva la Red puede que tenga registros nuevos que estén dentro del tiempo, pero si envío los de incidencia nonpodre enviar los oks con lo cual me hacen enviar otro paquete fuera de hora con incidencia yyyy puedo entrar en bucle si estoy en horas de máxima generación de venta, navidades etc.. entonces solo se me ocurre meter lo que tenga ok en el de incidencia aunque no lo sea. Haré eso. Pero vaya tela de tonterías.

bmfranky 08-11-2024 16:20:06

Cita:

Empezado por ermendalenda (Mensaje 559479)
Gracias por aclarar, pero entonces me crea una duda de "inconsistencia existencial"
Si tengo un paquete de envío que pasa a incidencia por que tuve caída de red o lo que sea, cuando vuelva la Red puede que tenga registros nuevos que estén dentro del tiempo, pero si envío los de incidencia nonpodre enviar los oks con lo cual me hacen enviar otro paquete fuera de hora con incidencia yyyy puedo entrar en bucle si estoy en horas de máxima generación de venta, navidades etc.. entonces solo se me ocurre meter lo que tenga ok en el de incidencia aunque no lo sea. Haré eso. Pero vaya tela de tonterías.

Hola, los metes todos encadenados en el mismo envio poniendo incidencia,en la respuesta te respondera todo ok, sin mas otra cosa es que te pasase seguido, por ejemplo todos los envios de facturas fuera de hora, entonces si que habria un psible "Problema".

RUBEN_SP 12-11-2024 13:29:25

Sobre "Control de Flujo"
 
Cita:

Empezado por novatico (Mensaje 559440)
Partiendo de toda la documentación que hay sobre este tema, en mi caso, y teniendo en cuenta el volumen de mis clientes, yo voy a desarrollarlo como un módulo independiente.

La gestión de facturación podrá seguir emitiendo facturas si tener que realizar esperas, y además de los procesos habituales que teníamos hasta ahora, grabará en un fichero los datos de cada factura generada, de forma secuencial, marcados como pendientes de enviar.

El módulo de "Control de Flujo", estará revisando este fichero de "envios pendientes", y en mi caso, cada vez que detecte 1 pendiente, tomará el "datetime" de ese instante y actualizando el "registro de facturación de alta", realizará el envío, controlando en la respuesta los posibles errores.
Tras la respuesta, tendré una pausa de los segundos que esta me indique, y volveré a la revisión de pendientes.
Este módulo estará activo en todo momento, incluso a la entrada al programa de facturación revisaré si está activo.

Prefiero enviar uno a uno, porque me resulta más fácil controlar los errores.

Por cierto, no sé porque habéis nombrado a "Mercadona" o similares. Ellos no tienen que hacer nada, están sujetos al SII.

Pero si tienes un SIF que permite generar varias facturas de una sola vez, lo que tu propones no es posible, solo si el sistema emite facturas de una en una con una cadencia suficiente para poder hacer eso sin incumplir el RRSIF

novatico 12-11-2024 13:39:51

Cita:

Empezado por RUBEN_SP (Mensaje 559638)
Pero si tienes un SIF que permite generar varias facturas de una sola vez, lo que tu propones no es posible, solo si el sistema emite facturas de una en una con una cadencia suficiente para poder hacer eso sin incumplir el RRSIF

Las facturas emitidas se irán "encolando" como dicen por aquí, y sólo voy a comprobar, en el momento del envío, si la "FechaHoraUsoGenRegistro" que tengo grabada en el Registro de Facturación, supera la FechaHora actual, para marcar el envío "con incidencia" o no.

Neftali [Germán.Estévez] 12-11-2024 16:27:54

Cita:

Empezado por novatico (Mensaje 559440)
La gestión de facturación podrá seguir emitiendo facturas si tener que realizar esperas, y además de los procesos habituales que teníamos hasta ahora, grabará en un fichero los datos de cada factura generada, de forma secuencial, marcados como pendientes de enviar.

El módulo de "Control de Flujo", estará revisando este fichero de "envios pendientes", y en mi caso, cada vez que detecte 1 pendiente, tomará el "datetime" de ese instante y actualizando el "registro de facturación de alta", realizará el envío, controlando en la respuesta los posibles errores.


No había visto este mensaje.
Me queda una duda: ¿El registro de facturación a enviar a la AEAT quien lo genera?
(a) La gestión de facturación.
(b) El módulo de control de flujo.

Lo digo por lo siguiente.
Creo que según la reglamentación, debería generarlo (a), pero luego dices que (b) lo actualiza:
"tomará el "datetime" de ese instante y actualizando el "registro de facturación de alta", realizará el envío"
Eso no puedes hacerlo.

Seguramente es que no he entendido bien.

novatico 12-11-2024 17:01:01

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 559645)
No había visto este mensaje.
Me queda una duda: ¿El registro de facturación a enviar a la AEAT quien lo genera?
(a) La gestión de facturación.
(b) El módulo de control de flujo.

Lo digo por lo siguiente.
Creo que según la reglamentación, debería generarlo (a), pero luego dices que (b) lo actualiza:
"tomará el "datetime" de ese instante y actualizando el "registro de facturación de alta", realizará el envío"
Eso no puedes hacerlo.

Seguramente es que no he entendido bien.

Efectivamente, el Registro de Facturación lo graba (a), junto con un "envio pendiente" en el fichero para el "control de flujo".
Con respecto al otro tema, ya me avisaron del problema y comenté que lo que haría será comparar si la "FechaHoraUsoGenRegistro" de registro de facturación, comparada con el "datetime" del momento de enviar, supera el tiempo máximo, y si es así, marcaré en la cabecera del envío (que sí se puede), el dato "incidencia=S".

Neftali [Germán.Estévez] 12-11-2024 17:09:12

Cita:

Empezado por novatico (Mensaje 559650)
Efectivamente, el Registro de Facturación lo graba (a), junto con un "envio pendiente" en el fichero para el "control de flujo".
Con respecto al otro tema, ya me avisaron del problema y comenté que lo que haría será comparar si la "FechaHoraUsoGenRegistro" de registro de facturación, comparada con el "datetime" del momento de enviar, supera el tiempo máximo, y si es así, marcaré en la cabecera del envío (que sí se puede), el dato "incidencia=S".

Ok, había entendido que en el momento del envío modificabas el "registro de facturación".

razorxxx 25-11-2024 17:00:13

Cita:

Empezado por sglorka (Mensaje 559450)
Yo creo que como resumen para el tema de control de flujo, deberíamos estar de acuerdo en que cada "t" segundos se mira lo que está pendiente de enviar y se envía todo hasta la cantidad de 1000 registros como máximo. Luego actualizamos el valor de "t" que nos devuelve la última comunicación y volvemos a proceder de la misma manera

Menos mal que hay alguien que pide coherencia en el foro. Me he recorrido centenares de mensajes y he leído auténticos disparates, lo cual me da a pensar que la mitad ni se ha leído los dos BOE (el de la OM y el del Reglamento).

Sin ánimo de ofender a nadie, convendría por el bien de todos no publicar cosas sin contrastar con fuentes fiables primero para evitar desinformar al grupo, porque al final tendremos diferentes formas de hacer las cosas y tal vez la mayoría estén mal. Y para cuando te des cuenta de que están mal, a lo mejor ya Veri*Factu entró en vigor.

Hablan por aquí de prefacturas, borradores, enviar 1000 registros en 2 horas, enviar 1 cada minuto para facilitarme las cosas, etc. El Reglamento lo especifica bien claro: se envían todos los registros de facturación en un único envío cada 60 segundos, o menos si se alcanzan los 1000 registros antes de ese tiempo, y en la respuesta te devuelven el tiempo (que seguramente vuelvan a ser 60 segundos) en el que deberás enviar los nuevos registros de facturación generados desde el último envío. Las empresas que por su naturaleza suelan tener que acometer cambios en las facturas antes de entregárselas al cliente final, para evitar tener una maraña de rectificativas lo que harán será trabajar con albaranes o proformas como hasta ahora, los cuales no son documentos fiscalizados (no tienen validez lega, y por tanto se pueden modificar, borrar e incluso alterar sus contadores). Esas proformas se convertirán en factura definitiva cuando convenga y los grupos de albaranes se convertirán en lo que se suele llamar "factura resumen", y es entonces cuando pasará a ser documento legal y del que se generará su correspondiente registro de facturación.

Para tranquilidad de todos, si la AEAT actúa como con el SII, decir que de nuestra veintena de clientes acogidos por ser gran empresa, ninguno hasta ahora ha recibido una carta o multa de la AEAT por enviar fuera de plazo. No sé cómo harán con Veri*Factu pero si no quieren que se les vaya de las manos o mandarnos a todos al "talego" deberán de flexibilizar esto. Al final lo que les interesa es que la información que mandes sea correcta, no creo yo que importe tanto el tiempo como la forma.

Y recuerden que sólo se envían los registros de facturación, y no los de eventos (que también he visto algún hilo diciendo este disparate).


La franja horaria es GMT +2. Ahora son las 21:56:45.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi