Ver Mensaje Individual
  #2620  
Antiguo 19-01-2022
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 233
Reputación: 16
espinete Va camino a la fama
Cómo proceder tras error en los envíos

Tengo dudas sobre cómo proceder cuando se produzca un error en los envíos o en la firma (ya sea por fallo del servidor, no tener internet en ese momento o incluso fallos en el certificado en el momento de firmar).
Sé que se ha hablado varias veces en el foro pero no consigo encontrar una respuesta clara.

Me queda claro que, antes de hacer nada, lo ideal es comprobar manualmente que se cumplen todos los requisitos para que la factura pueda firmarse y enviarse:
- campos obligatorios (por ejemplo, "código postal" y "dirección" para Gipuzkoa/Araba y otros más)
- que el certificado esté seleccionado y sea válido
- resto de campos obligatorios, etc.

Una vez eso esté comprobado, procederíamos a generar Y firmar la factura.
Este paso es necesario para poder obtener el identificativo TicketBAI y el QR, que debemos incluir en la factura o tícket impreso que se le entrega al cliente. Por lo tanto, lo importante es poder llegar al menos a este paso: generar y firmar la factura.

Ahora es cuando tengo la duda... ¿cómo gestionáis vosotros un error en el envío?

La factura ya está generada, con su código tbai, su QR, el XML firmado, etc.
Si el envío falla, siempre podremos reenviarla más tarde, pero para ello necesitaremos el XML firmado original.
Es decir, no podemos volver a generar y firmar el XML porque será distinto (la firma no coincidirá).

Por lo tanto, mi pregunta es... ¿qué dato(s) guardáis en la base de datos del software para poder enviar las facturas más adelante sin tener que volver a firmarlas? ¿Guardáis TODO el XML firmado en un campo Blob? ¿Guardáis todos los archivos en alguna carpeta? ¿marcáis las facturas como "generada", "firmada", "enviada" para saber en qué paso se quedó cada una?

Para Gipuzkoa y Araba los envíos los hago sobre la marcha (en el momento de hacer la venta).
¿Lo hacéis en segundo plano o mostráis alguna ventana de "progreso de envío" avisando de los posibles errores al usuario?

¿O ninguna de estas opciones es necesaria y realmente es más sencillo y me estoy liando?

Gracias y perdón por el tostón.
Responder Con Cita