Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   TICKET BAI (TicketBAI); Nuevo sistema de la Agencia Tributaria del Pais Vasco (https://www.clubdelphi.com/foros/showthread.php?t=94264)

ermendalenda 17-10-2021 19:00:38

Sincronizacion Hora Fecha
 
Una cosa que acabo de pensar, si el usuario final fuerza un cambio de hora/fecha en el equipo, por ejemplo para marcar alguna factura que se le habia quedado atras,etc...
LA LIA PARDA
Me pongo a buscar pero si alguien tiene un webservice para agregar al programa de sincronizador de hora/fecha, ya que la de windows todos los cuñados saben desactivarla.

Esto se hace eterno.:(

unomasmas 17-10-2021 21:55:43

Cita:

Empezado por edari (Mensaje 543543)
Entiendo que el proceso que tengo que hacer es (en Vizcaya, modelo 240)

1) Al imprimir las facturas, genero el XML
2) Firmo el XML y dejo el fichero ahí
No subo nada de manera "automática" y luego desde un proceso en el que el usuario selecciona las facturas que quiere/tiene que subir
1) Seleccionas las facturas que tiene pendientes para subir
2) busco cada XML firmado que generé en su día (que esperemos que siga estando en su sitio y que nadie lo haya borrado :eek: ) que ha elegido el usuairo
3) Paso todas las facturas en ese momento a Base64
4) genero el fichero que le he puesto a mi compi Ramon88
5) Y lo subo

Sería así el proceso lógico??

Alava y Guipuzcoa tienen menos "riesgo" porque en medio miunuto tienes cada factura impresa, generada en xml, firmada y subida y ya no hay más que hacer...ya no puede meter la mano el usuario pero en Vizcaya me da mucho más miedo que puede pasar con esos ficheros. :confused:

Me dan ganas, fíjate, de hacer todo el proceso de subida a la vez de imprimir todas las facturas como en Alava y Guipuzcoa pero no tengo claro que es mejor...


Creo que no hay nada que te impida hacerlo así; es decir, tal y como se hace en Gipuzkoa: Generar XML, firmarlo, generar QR y subir la factura. Lo único que cambia es que en vez de subir únciamente el fichero, has de empaquetarlo dentro de otro xml tal y como dices.

Pero también se puede subir un bloque de ellos; el plazo para ello depende del tipo de empresa, creo que hasta tres meses... pero no tienes que esperar, con independencia del tipo de empresa puedes ir subiendo uno a uno cada vez que se genere; eso creo, al menos.

rci 18-10-2021 09:12:02

Respuesta de Gipuzkoa
 
Cita:

Empezado por rci (Mensaje 543529)
Hola

Supongamos el caso que nuestro programa en algún momento tiene un problema para generar el fichero XML TicketBAI, por lo que sea, que el certificado está mal o que hay un error interno del programa que impide generar el fichero XML.
Tal como tenemos desarrollado el programa, si no se puede generar el fichero TicketBAI, no se puede salvar la factura ni imprimirla. Por lo tanto la tienda que utiliza nuestro programa, si ocurre algún problema de este tipo, tiene que dejar de vender porque no puede hacer facturas.
En una tienda grande con muchos TPVs y mucha clientela esto no es aceptable, no pueden dejar de trabajar.
Mientras no podamos solucionar el problema, ya sea del certificado o arreglando el programa... pueden pasar horas.:eek:

¿Cómo podemos gestionar en este caso? :confused:



Si desactivamos temporalmente TicketBAI para que puedan vender y facturar, las facturas que hagan en ése período no estarán firmadas y no tendran el QR y no se enviarán. Esto no es posible tampoco...



Es un tema que nos preocupa mucho. A ver como lo haceis vosotros.


Muchas gracias


Buenas, os envío la respuesta de Gipuzkoa, que es la única que ha contestado de momento. Viene a decir lo mismo que ya me habéis contestado vosotros.
Cita:

Egun on, buenos días

En el caso que nos comenta, no se podrían generar ficheros TicketBAI. Estas situaciones se regulan en el artículo 17 del Decreto Foral 32/2020 del 22 de diciembre:

Artículo 17. Incidencias de carácter técnico en el cumplimiento de la obligación TicketBAI.
1. En los supuestos excepcionales de interrupción del servicio eléctrico, de destrucción, fallo, avería, rotura u otras circunstancias en las que el contribuyente no pueda generar ficheros TicketBAI ni expedir factura o justificante empleando el software TicketBAI, y éstas deban ser expedidas en el momento de realizarse la operación, dicha circunstancia se notificará a la Administración tributaria y el contribuyente expedirá y entregará factura o justificante en papel a la persona o entidad destinataria, conservando copia del mismo.
La factura o justificante se consignará en una serie específica que se destinará únicamente a las facturas o justificantes expedidos en virtud de lo dispuesto en este artículo, y contendrá la expresión «factura o justificante expedido según lo dispuesto en el artículo 17 del Reglamento por el que se desarrolla la obligación TicketBAI, aprobado por el Decreto Foral 32/2020, de 22 de diciembre.»
2. El contribuyente, tan pronto desaparezca el motivo que imposibilite la generación de ficheros TicketBAI y la expedición de factura o justificante empleando el software TicketBAI, deberá introducir correlativa y sucesivamente en su software TicketBAI los datos de todas las facturas o justificantes expedidos, generando los ficheros TicketBAI y enviándolos a la Administración tributaria.
La factura o justificante expedido por el software TicketBAI tendrá la consideración de duplicado.
En cualquier caso, la persona o entidad destinataria de la operación podrá solicitar un duplicado de la factura o justificante emitido, que contemple el código TicketBAI y el código QR.
3. En los supuestos excepcionales de falta temporal de cobertura, interrupción del servicio telefónico o telemático, avería del sistema de envío u otras circunstancias en las que el contribuyente pueda generar ficheros TicketBAI pero no pueda enviarlos a la Administración tributaria, el software TicketBAI acumulará sucesivamente todos los ficheros TicketBAI generados y procederá a su envío tan pronto se restablezca la conexión.

En estos casos o cuando por otras circunstancias el contribuyente no pueda generar ficheros TicketBAI ni expedir factura o justificante empleando el software TicketBAI, se notificará dicha circunstancia a la Administración tributaria mediante remisión de correo electrónico a la dirección [email protected] y el contribuyente expedirá y entregará factura o justificante en papel a la persona o entidad destinataria, conservando copia del mismo. En dicho correo electrónico el contribuyente deberá indicar lo siguiente:
• Su identificación: Indicando su nombre o razón social y NIF/CIF.
• Causa que motiva la incidencia.
• En el asunto del correo electrónico se deberá indicar que se trata de una incidencia enumerada en el artículo 17.

La factura o justificante se consignará en una serie específica, y contendrá la expresión “factura o justificante expedida según lo dispuesto en el artículo 17”.

Tan pronto desaparezca el motivo que imposibilite la generación de ficheros TicketBAI y la expedición de factura o justificante empleando el software TicketBAI, deberá introducir correlativa y sucesivamente en su software TicketBAI los datos de todas las facturas generando los ficheros TicketBAI y enviándolos a la Administración tributaria.

La factura o justificante expedido por el software TicketBAI tendrá la consideración de duplicado.

Un saludo,

Gracias por las respuestas

JoseLeeTo 18-10-2021 09:32:21

[quote=edari;543543]En Vizcaya,creo por lo que entiendo, tienes que subir no un fichero xml con cada factura si no un fichero "resumen" con las facturas que quieras subir, pasadas a base64 y cada factura "incluida" dentro del campo <TicketBai> de este ejemplo

Buenos días,

Por lo que a mí me dieron a entender, en Vizcaya se puede enviar perfectamente un XML por factura o en bloque.
En Guipuzcoa y Alava hay que hacerlo obligatoriamente de forma inmediata y una por una.
Pero no creo que en Vizcaya haya limitación a enviar en bloques, sino que admite también una por una.

Pero ya tengo un follón en la cabeza que no sé de qué va cada cosa, y puedo estar equivocado. :confused:

¿Alguien me puede sacar de dudas?

Muchas gracias de antemano.
Un saludo

Eric Mtz 18-10-2021 09:38:17

Pequeña dudilla
 
Hola señores, buenos días, tengo una duda que probablemente ya haya sido resuelta pero que no he sabido localizar en el foro, así que si me estoy repitiendo pido disculpas.

Veréis, estoy a tiro piedra del lanzamiento y por ello ando verificando que todas las URLs reales sean correctas, mi duda surge con las direcciones QR, concretamente con:

Cita:

Araba/Álava: https://ticketbai.araba.eus/TBAI/QRTBAI (sin “/” para el cálculo del CRC).
Durante el desarrollo siempre utilicé la dirección de pruebas de Gipuzkoa, así que doy por hecho que los procesos están bien, pero lo de sin "/" me confunde un poco, ¿Se supone que se van a concatenar todos los datos sin la "/" inicial?, en plan:

Cita:

"https://ticketbai.araba.eus/TBAI/QRTBAI?id=XXXXXXXXXXXXXXX&s=SSSSSS&nf=NNNNNNNNN..."
Queda un poco raro, pero si lo especifican supongo que será así, ¿Cómo lo hacéis vosotros?, gracias de antemano :)

Ramon88 18-10-2021 10:25:23

Cita:

Empezado por edari (Mensaje 543543)
En Vizcaya,creo por lo que entiendo, tienes que subir no un fichero xml con cada factura si no un fichero "resumen" con las facturas que quieras subir, pasadas a base64 y cada factura "incluida" dentro del campo <TicketBai> de este ejemplo



https://www.batuz.eus/fitxategiak/ba..._B00000034.xml


Este es el fichero que creo que hay que subir y comprimir...pero ya te digo que con Vizcaya soy igual de profano que tú...


Y aprovecho para preguntar mi duda


Tengo claro que Alava y Guipuzcoa se suben factura a factura cada xml por separado en el momento de generar la factura. Y no hay que discutir.



Por contra Vizcaya funciona un poco como el SII, es decir, es al final de día, o mejor dicho hay un plazo de tiempo (¿3-4 días?) en el que debes subir todas las facturas generadas días atras.


Entiendo que el proceso que tengo que hacer es (en Vizcaya, modelo 240)



1) Al imprimir las facturas, genero el XML
2) Firmo el XML y dejo el fichero ahí


No subo nada de manera "automática" y luego desde un proceso en el que el usuario selecciona las facturas que quiere/tiene que subir


1) Seleccionas las facturas que tiene pendientes para subir
2) busco cada XML firmado que generé en su día (que esperemos que siga estando en su sitio y que nadie lo haya borrado :eek: ) que ha elegido el usuairo
3) Paso todas las facturas en ese momento a Base64

4) genero el fichero que le he puesto a mi compi Ramon88
5) Y lo subo


Sería así el proceso lógico??


Alava y Guipuzcoa tienen menos "riesgo" porque en medio miunuto tienes cada factura impresa, generada en xml, firmada y subida y ya no hay más que hacer...ya no puede meter la mano el usuario pero en Vizcaya me da mucho más miedo que puede pasar con esos ficheros. :confused:


Me dan ganas, fíjate, de hacer todo el proceso de subida a la vez de imprimir todas las facturas como en Alava y Guipuzcoa pero no tengo claro que es mejor...


p.d.
Odio a los vizcaínos


Firmado
Un vizcaíno


Buenos días... Por decir algo!
Por que tienen que complicarnos tanto? :(

Entonces de que sirve el QR?? si no lo van a poder comprobar no funcionará hasta que subas el fichero? y pueden pasar 3 meses como comentais...

misteradrian 18-10-2021 11:10:23

008 El mensaje ha sido modificado en tránsito o la firma no está bien realizada
 
Hola de nuevo señoras y señores,
lo primero de todo muchas gracias por toda la información subida a este foro, con mención especial a bilbur por todo el tema del firmador en php, que me ha venido genial.

Y precisamente al utilizar este firmador me da una serie de fallos a la hora de dar de altas facturas que quisiera corregir.

A la hora de enviar las facturas me da el siguiente aviso.
008 El mensaje ha sido modificado en tránsito o la firma no está bien realizada -- Reference URI="#xmldsig-ea406c2f-bf64-e988-ed62-0b8afb482297-signedprops" failed to verify. [src/xml2signatureobj.cpp(315)]

y comprobando el xml con la herramienta de chillkat, me dice lo siguiente:

Signature Verified
Number of Reference Digests = 3
Reference 1 digest is invalid because the computed digest differs from the digest in the XML.
Reference 2 digest is valid.
Reference 3 digest is valid.

Qué casualmente coincide con el mismo campo de la respuesta de Gipuzkoa.
Supongo que viene dado por el valor de la variable,
Código PHP:

$this->SignedProperties 

que a su vez llama al generateGUID de el XMLTools de bilbur.
Código PHP:

$this->signatureID             $tools->generateGUID('xmldsig-'); 

Pero revisando el foro no he sacado nada en claro sobre qué probar para modificar este error.
Supongo que tendré que modificar este XMLTools y generar un valor de digest válido, la cosa es que no sé cual.

Un saludo y gracias de antemano.

edari 18-10-2021 11:53:12

Cita:

Empezado por Ramon88 (Mensaje 543553)
Buenos días... Por decir algo!
Por que tienen que complicarnos tanto? :(

Entonces de que sirve el QR?? si no lo van a poder comprobar no funcionará hasta que subas el fichero? y pueden pasar 3 meses como comentais...




Eso ya se ha hablado por aquí y efectivamente...mientras no subas esos ficheros no se pueden comprobar el QR


El chiste se cuenta solo :mad:

rci 18-10-2021 12:06:39

Respuesta de Bizkaia
 
Cita:

Empezado por rci (Mensaje 543550)
Buenas, os envío la respuesta de Gipuzkoa, que es la única que ha contestado de momento. Viene a decir lo mismo que ya me habéis contestado vosotros.

Gracias por las respuestas


Hola, he recibido la respuesta de Bizkaia, en este caso entiendo que dan la opción de seguir facturando y imprimiendo sin el QR ni identificativo TBAI:


Cita:

Kaixo,

El hecho de que se rompa el dispositivo mediante el cual se expiden los tickets o facturas TicketBAI, o haya otro problema que impida su emisión, no implica que el empresario no pueda seguir vendiendo o facturando. Las implicaciones de este caso son las siguientes:

• Se deberá seguir cumpliendo con la obligación de entregarle al cliente una factura o justificante de la operación. Las facturas o tickets deberán expedirse en papel o electrónicamente sin código QR y sin identificativo TicketBAI.

La información de esas facturas emitidas sin software garante tendrá que remitirse a la Diputación Foral de Bizkaia mediante los siguientes esquemas:

o Para el LROE de las personas físicas (modelo 140): 1.2 - Ingresos con factura sin Software garante.
o Para el LROE de las personas jurídicas (modelo 240): 1.2 - Facturas emitidas sin Software garante.

Al tratarse de una situación de incumplimiento de las obligaciones TicketBAI, la Administración tributaria podrá requerir al contribuyente que justifique esta situación y el contribuyente deberá conservar y aportar la oportuna documentación probatoria.


Si el caso fuera una avería en el dispositivo, dicho dispositivo averiado ha podido generar ficheros TicketBAI antes de estropearse y no haber hecho el envío de dichos ficheros a la Administración antes de que ocurra la avería. En el caso de Bizkaia, si los ficheros TicketBAI de facturas expedidas pueden recuperarse, se tendrán que enviar a Hacienda, dentro de anotaciones de los siguientes esquemas del LROE:

o 1.1 - Ingresos con factura con Software garante (modelo 140).
o 1.1 - Facturas emitidas con Software garante (modelo 240).

Sin embargo, si no pudieran recuperarse los ficheros TicketBAI, la información correspondiente a esas operaciones debe remitirse igualmente. Esta remisión deberá realizarse con el mensaje web correspondiente a los subcapítulos 1.2 -Ingresos con factura sin Software garante (modelo 140) y 1.2 - Facturas emitidas sin Software garante (modelo 240) de los LROE.

Agur bat.
Saludos

misteradrian 18-10-2021 14:11:12

Cita:

Empezado por misteradrian (Mensaje 543554)
Hola de nuevo señoras y señores,
lo primero de todo muchas gracias por toda la información subida a este foro, con mención especial a bilbur por todo el tema del firmador en php, que me ha venido genial.

Y precisamente al utilizar este firmador me da una serie de fallos a la hora de dar de altas facturas que quisiera corregir.

A la hora de enviar las facturas me da el siguiente aviso.
008 El mensaje ha sido modificado en tránsito o la firma no está bien realizada -- Reference URI="#xmldsig-ea406c2f-bf64-e988-ed62-0b8afb482297-signedprops" failed to verify. [src/xml2signatureobj.cpp(315)]

y comprobando el xml con la herramienta de chillkat, me dice lo siguiente:

Signature Verified
Number of Reference Digests = 3
Reference 1 digest is invalid because the computed digest differs from the digest in the XML.
Reference 2 digest is valid.
Reference 3 digest is valid.

Qué casualmente coincide con el mismo campo de la respuesta de Gipuzkoa.
Supongo que viene dado por el valor de la variable,
Código PHP:

$this->SignedProperties 

que a su vez llama al generateGUID de el XMLTools de bilbur.
Código PHP:

$this->signatureID             $tools->generateGUID('xmldsig-'); 

Pero revisando el foro no he sacado nada en claro sobre qué probar para modificar este error.
Supongo que tendré que modificar este XMLTools y generar un valor de digest válido, la cosa es que no sé cual.

Un saludo y gracias de antemano.

Vale señor@s, me respondo a mí mismo por si a alguien le sirve.

He revisado de nuevo de arriba a abajo el foro y he encontrado el error. (Otra cosa es solucionarlo)

El error viene en concreto de un campo dentro de la firma
Código:

<ds:X509IssuerName>CN=AC Representación,  OU=CERES, O=FNMT-RCM, C=ES</ds:X509IssuerName>
El certificado es un certificado de la FNMT y en el campo CN, la palabra Representación es la que me da errores a la hora de verificar el xml por chillkat, por la tilde en la ó.

Supongo que tendré que encontrar la manera de codificarlo de manera correcta en php, ya que tengo puesto el visual studio code a ISO 8859-1 y ticketbai lo requiere en utf-8.

Si corregís esta tílde a la hora de pasarlo a chillkat no os da ningún error y los 3 digest son válidos.

Un saludo y espero que sirva a los nuevos que venís con esto.

rci 18-10-2021 15:50:06

Respuesta de Araba
 
Cita:

Empezado por rci (Mensaje 543558)
Hola, he recibido la respuesta de Bizkaia, en este caso entiendo que dan la opción de seguir facturando y imprimiendo sin el QR ni identificativo TBAI:


Saludos


Buenas tardes, me han contestado de Araba, la respuesta es muy parecida a la de Gipuzkoa.


Cita:

“Artículo 17. Incidencias de carácter técnico en el cumplimiento de la obligación TicketBAI
1. En los supuestos excepcionales de interrupción del servicio eléctrico, de destrucción, fallo, avería, rotura u otras circunstancias en las que la o el contribuyente no pueda generar ficheros
TicketBAI ni expedir factura o justificante empleando el software TicketBAI, y éstas deban ser expedidas en el momento de realizarse la operación, dicha circunstancia se notificará a la Administración
Tributaria y la o el contribuyente expedirá y entregará factura o justificante por otros medios a la persona o entidad destinataria, conservando copia del mismo.
La factura o justificante se consignará a una serie específica que se destinará únicamente a las facturas o justificantes expedidos en virtud de lo dispuesto en este artículo, y contendrá
la expresión “factura o justificante expedido según lo dispuesto en el artículo 17 del Decreto Foral por el que se desarrolla la obligación TicketBAI”.
2. La o el contribuyente, tan pronto como desaparezca el motivo que imposibilite la generación de ficheros TicketBAI y la expedición de factura o justificante empleando el software
TicketBAI, deberá introducir correlativa y sucesivamente en su software TicketBAI los datos de todas las facturas y justificantes expedidos, generando los ficheros TicketBAI y enviándolos a
la Administración Tributaria.
La factura o justificante expedido por el software TicketBAI tendrá la consideración de duplicado. En cualquier caso, la persona o entidad destinataria de la operación podrá solicitar un duplicado
de la factura o justificante emitido, que contemple el código TicketBAI y el código QR.”

Es decir: si no se puede generar el fichero XML se deberá generar la factura por cualquier otro medio: papel o electrónico, expidiendo una factura o justificante en una serie especial con el contenido antes indicado. Cuando se solucione la avería se deberá introducir todas esas facturas o justificantes, de forma correlativa, en el sistema para que se generen los ficheros XML, se encadenen, se firmen y remitan a la Hacienda Foral.
De este modo no se compromete la facturación de la empresa.


Un saludo
Saludos y gracias

ermendalenda 18-10-2021 18:55:58

Bueno ya tengo mi propia función para leer la hora y fecha actual y actualizar el equipo antes de cada factura de un webservice.
La única cosa que me falta en temas de verificación es un script php para saber la fecha de caducidad del certificado y ya redondeamos.
Decidme por favor que sabéis como sacar la fecha.
Gracias y saludos

YellowStone 18-10-2021 19:12:33

Buenas.
¿Cómo evitar que al subir un código al foro, sustituya donde pone :D por un smile?
Por ejemplo en xades:Digest
?

ermendalenda 18-10-2021 19:43:28

Cita:

Empezado por misteradrian (Mensaje 543559)
Vale señor@s, me respondo a mí mismo por si a alguien le sirve.

He revisado de nuevo de arriba a abajo el foro y he encontrado el error. (Otra cosa es solucionarlo)

El error viene en concreto de un campo dentro de la firma
Código:

<ds:X509IssuerName>CN=AC Representación,  OU=CERES, O=FNMT-RCM, C=ES</ds:X509IssuerName>
El certificado es un certificado de la FNMT y en el campo CN, la palabra Representación es la que me da errores a la hora de verificar el xml por chillkat, por la tilde en la ó.

Supongo que tendré que encontrar la manera de codificarlo de manera correcta en php, ya que tengo puesto el visual studio code a ISO 8859-1 y ticketbai lo requiere en utf-8.

Si corregís esta tílde a la hora de pasarlo a chillkat no os da ningún error y los 3 digest son válidos.

Un saludo y espero que sirva a los nuevos que venís con esto.

Buenas, yo uso firmador.php y tengo ese acento y no me da problemas
<ds:X509IssuerName>CN=AC Representación, OU=CERES, O=FNMT-RCM, C=ES</ds:X509IssuerName>

Chilkat valid en los 3 digest y sin errores al enviar.
Es extraño lo que dices, ya somos muchos los que lo usamos y hubiera dado más problemas.
Lo único que veo diferente es que entre la "," y "OU" (", OU=CERES") tienes 2 espacios, no creo que sea problema.
Tienes el XML con esta cabecera?
<?xml version="1.0" encoding="UTF-8"?>

ermendalenda 18-10-2021 20:46:09

Cita:

Empezado por ermendalenda (Mensaje 543563)
Bueno ya tengo mi propia función para leer la hora y fecha actual y actualizar el equipo antes de cada factura de un webservice.
La única cosa que me falta en temas de verificación es un script php para saber la fecha de caducidad del certificado y ya redondeamos.
Decidme por favor que sabéis como sacar la fecha.
Gracias y saludos

Listo, gracias.

hago_preguntas 18-10-2021 21:01:41

Cita:

Empezado por Eric Mtz (Mensaje 543552)
Hola señores, buenos días, tengo una duda que probablemente ya haya sido resuelta pero que no he sabido localizar en el foro, así que si me estoy repitiendo pido disculpas.

Veréis, estoy a tiro piedra del lanzamiento y por ello ando verificando que todas las URLs reales sean correctas, mi duda surge con las direcciones QR, concretamente con:



Durante el desarrollo siempre utilicé la dirección de pruebas de Gipuzkoa, así que doy por hecho que los procesos están bien, pero lo de sin "/" me confunde un poco, ¿Se supone que se van a concatenar todos los datos sin la "/" inicial?, en plan:



Queda un poco raro, pero si lo especifican supongo que será así, ¿Cómo lo hacéis vosotros?, gracias de antemano :)

Hasta donde yo entiendo la especificación, si es así como indicas, y además eso afecta al cálculo del código QR.

thinkows 19-10-2021 08:41:17

Certificado para firma de código
 
Buenos días estimados contribuyentes, estoy en proceso de adquirir el certificado de firma de código tanto del ejecutable como para el del instalable (.msi) y tengo cierto lio de cual y donde adquirirlo, podéis compartir vuestra experiencia.

En otro orden de cosas ayer recibí un email de Guipuzkoa con recomendaciones y errores habituales, el la última línea indicaban que pronto publicaran la especificaciones de ZUZENDU :cool::cool: a dos meses
vista de la puesta en marcha me parece una tomadura de pelo ....:(:(

HerensugeBeltz 19-10-2021 08:50:37

Cita:

Empezado por thinkows (Mensaje 543568)
Buenos días estimados contribuyentes, estoy en proceso de adquirir el certificado de firma de código tanto del ejecutable como para el del instalable (.msi) y tengo cierto lio de cual y donde adquirirlo, podéis compartir vuestra experiencia.

Nosotros compramos el de Sectigo (antiguo COMODO). Acabo de consultarlo y ahora lo tienes por 79$ (supongo que anuales).
https://sectigostore.com/page/cheap-...af6705f30498c5

thinkows 19-10-2021 08:53:24

Muchas gracias compañero^\||/^\||/^\||/

misteradrian 19-10-2021 10:28:30

Cita:

Empezado por ermendalenda (Mensaje 543565)
Buenas, yo uso firmador.php y tengo ese acento y no me da problemas
<ds:X509IssuerName>CN=AC Representación, OU=CERES, O=FNMT-RCM, C=ES</ds:X509IssuerName>

Chilkat valid en los 3 digest y sin errores al enviar.
Es extraño lo que dices, ya somos muchos los que lo usamos y hubiera dado más problemas.
Lo único que veo diferente es que entre la "," y "OU" (", OU=CERES") tienes 2 espacios, no creo que sea problema.
Tienes el XML con esta cabecera?
<?xml version="1.0" encoding="UTF-8"?>

Hola de nuevo lo primero de todo gracias por tu contestación.
Quizás no me expresé del todo bien. Efectivamente el firmador es una maravilla y funciona correctamente.
El caso es que yo tengo puesto mi editor de textos y los datos que obtengo en la base de datos en ISO8859-1 y el envío los requiere siempre en UTF-8.
Entonces cuando hay tildes se me transforman a caracteres extraños (Pasa lo mismo si en cualquier campo como el nombre lleva alguna tilde).
Y pues cuando lo visualizo y lo paso a chillkat o lo envío para ticketbai Gipuzkoa , los errores de la firma venían derivados de esos caracteres extraños por la codificación derivadas de las tildes.
Resumiendo, problemas de derivados de codifcación.

Lo único me ha surgido una duda nueva a ver si alguien me la puede responder.
¿La variable digest dentro del nuevo array POLITICA_FIRMA_ALAVA como lo puedo calcular?

Un saludo y mil gracias de nuevo de verdad,
sin este foro no podría estar tirando este proyecto hacia delante.

elcharlie 19-10-2021 11:33:00

Parece ser, que el Servidor de Pruebas de araba ya está operativo, y han habilitado la comprobación del código QR en la siguiente url base: https://pruebas-ticketbai.araba.eus/tbai/qrtbai/
Yo he hecho la prueba y me da el error 'Parámetros Incorrectos", estoy seguro que genero la url correctamente (no es por ser un sobrao, pero genero las url de los QR de las otras diputaciones de la misma manera, y no tengo problemas), pero por si acaso, ¿habéis probado vosotros si os funciona bien?

edari 19-10-2021 11:35:39

Cita:

Empezado por elcharlie (Mensaje 543576)
Parece ser, que el Servidor de Pruebas de araba ya está operativo, y han habilitado la comprobación del código QR en la siguiente url base: https://pruebas-ticketbai.araba.eus/tbai/qrtbai/
Yo he hecho la prueba y me da el error 'Parámetros Incorrectos", estoy seguro que genero la url correctamente, pero por si acaso, ¿habéis probado vosotros si os funciona bien?


Mismo caso que tú v\||/

elcharlie 19-10-2021 11:38:15

Cita:

Empezado por edari (Mensaje 543577)
Mismo caso que tú v\||/

Ok, gracias por la comprobación. Esperaremos a que lo arreglen...

YellowStone 19-10-2021 11:44:50

Cita:

Empezado por Noe277 (Mensaje 543200)
Esto es un problema de ellos habrá que decirles, el caso es que creo que esta en el redondo.
1 x 1,446 también da error pero 1, 44 lo hace bien. 1,45 también hace mal el problema es como redondean.


El problema está en pedir que la etiqueta <ImporteTotal> venga con el impuesto incluido y luego seguramente validan que la suma de los "importes totales" sea igual al importe de la factura, y eso es un error (creo que por parte de ellos, Álava en este caso, porque la misma factura con los mismos importes Guipúzcoa la da por válida). No se puede sacar el IVA por cada línea de la factura, porque el IVA se debe calcular sobre el importe final de la factura, y no línea a línea, porque por los redondeos va a descuadrar si o si en muchos casos. ¿Qué hacemos? ¿Metemos una línea de detalle con el posible descuadre del centimillo?

ermendalenda 19-10-2021 12:08:50

Cita:

Empezado por misteradrian (Mensaje 543575)
Hola de nuevo lo primero de todo gracias por tu contestación.
Quizás no me expresé del todo bien. Efectivamente el firmador es una maravilla y funciona correctamente.
El caso es que yo tengo puesto mi editor de textos y los datos que obtengo en la base de datos en ISO8859-1 y el envío los requiere siempre en UTF-8.
Entonces cuando hay tildes se me transforman a caracteres extraños (Pasa lo mismo si en cualquier campo como el nombre lleva alguna tilde).
Y pues cuando lo visualizo y lo paso a chillkat o lo envío para ticketbai Gipuzkoa , los errores de la firma venían derivados de esos caracteres extraños por la codificación derivadas de las tildes.
Resumiendo, problemas de derivados de codifcación.

Lo único me ha surgido una duda nueva a ver si alguien me la puede responder.
¿La variable digest dentro del nuevo array POLITICA_FIRMA_ALAVA como lo puedo calcular?

Un saludo y mil gracias de nuevo de verdad,
sin este foro no podría estar tirando este proyecto hacia delante.


Teniendoo en cuenta que no sé php y he probado con este comando

$certIssuer = str_replace("ó", "o", $certIssuer);
pero no entiendo por que no funciona, mientras alguien diga por que no va y si siempre vas a firmar con ese tipo de certificados puedes forzar y cambiar esto en el firmador.php:

$certIssuer = implode(', ', array_reverse($certIssuer));
por:
$certIssuer='CN=AC Representacion, OU=CERES, O=FNMT-RCM, C=ES';

sEngine 19-10-2021 12:37:39

Cita:

Empezado por elcharlie (Mensaje 543576)
Parece ser, que el Servidor de Pruebas de araba ya está operativo, y han habilitado la comprobación del código QR en la siguiente url base: https://pruebas-ticketbai.araba.eus/tbai/qrtbai/
Yo he hecho la prueba y me da el error 'Parámetros Incorrectos", estoy seguro que genero la url correctamente (no es por ser un sobrao, pero genero las url de los QR de las otras diputaciones de la misma manera, y no tengo problemas), pero por si acaso, ¿habéis probado vosotros si os funciona bien?


a mi tampoco me va, mismo error

misteradrian 19-10-2021 12:51:24

Cita:

Empezado por ermendalenda (Mensaje 543580)
Teniendoo en cuenta que no sé php y he probado con este comando

$certIssuer = str_replace("ó", "o", $certIssuer);
pero no entiendo por que no funciona, mientras alguien diga por que no va y si siempre vas a firmar con ese tipo de certificados puedes forzar y cambiar esto en el firmador.php:

$certIssuer = implode(', ', array_reverse($certIssuer));
por:
$certIssuer='CN=AC Representacion, OU=CERES, O=FNMT-RCM, C=ES';


Yo también probé eso ayer, pero tiene que llevar tilde para que al enviar el XML a Gipuzkoa te lo reconozca de la FNMT.
Si quieres que el primero te vaya tendrás que hacer un utf8_decode ó un utf8_encode, dependiendo de en que codificación te encuentres.


Pero que de verdad, está ya solucionado con lo que escribí esta mañana no te preocupes.
Era el tema de la codificación de mis datos, que no estaban en UTF8.

thinkows 19-10-2021 13:15:10

Consultado en Araba hace dos semanas
 
Cita:

Empezado por YellowStone (Mensaje 543579)
El problema está en pedir que la etiqueta <ImporteTotal> venga con el impuesto incluido y luego seguramente validan que la suma de los "importes totales" sea igual al importe de la factura, y eso es un error (creo que por parte de ellos, Álava en este caso, porque la misma factura con los mismos importes Guipúzcoa la da por válida). No se puede sacar el IVA por cada línea de la factura, porque el IVA se debe calcular sobre el importe final de la factura, y no línea a línea, porque por los redondeos va a descuadrar si o si en muchos casos. ¿Qué hacemos? ¿Metemos una línea de detalle con el posible descuadre del centimillo?



Yo lo consulté y esto me respondieon :

Buenos días Jordi


Hemos revisado el contenido de su fichero y los importes son correctos.

El error se está dando en las líneas en las que el importe es menor de 1 euro. Al trabajar con importes pequeños y despreciar los decimales se ha provocado esta situación.

Vamos a solucionarlo en breve.

Cuando lo hayamos solucionado se lo comunicaremos.

Gracias por su colaboración

Un saludo

edari 19-10-2021 13:45:46

Estoy mirando el resto de ficheros del LROE y se me caen los pantalones abajo :confused:


modelo 240.



altas Facturas recibidas
altas Intracomunitarias
altas Cobros

altas Pagos
altas Importes superiores a 6000 euros


(y creo que no me afectan más)


Entiendo que estos ficheros no hay que hacer transformarlos en base64 si no que se generan directamente, se comprimen y se suben (en mi caso con el curl) desde ya la gestión contable de nuestros programas.



En el zip de ejemplos que tiene Batuz no veo ejemplos de estos. Están en algún otro sitio?






Gracias

keys 19-10-2021 13:57:34

Cita:

Empezado por edari (Mensaje 543584)
Estoy mirando el resto de ficheros del LROE y se me caen los pantalones abajo :confused:


modelo 240.



altas Facturas recibidas
altas Intracomunitarias
altas Cobros

altas Pagos
altas Importes superiores a 6000 euros


(y creo que no me afectan más)


Entiendo que estos ficheros no hay que hacer transformarlos en base64 si no que se generan directamente, se comprimen y se suben (en mi caso con el curl) desde ya la gestión contable de nuestros programas.



En el zip de ejemplos que tiene Batuz no veo ejemplos de estos. Están en algún otro sitio?






Gracias

Se envían como tu dices, no hay ejemplos. Yo solo he encontrado de emitidas.

espinete 19-10-2021 14:01:02

Pregunta tonta sobre el encadenamiento en Bizkaia
 
Hola a todos/as...

Por fin he podido generar, firmar, enviar, (consultar) y anular facturas a las tres delegaciones. El problema que me encuentro ahora es con Bizkaia, que permite enviar varias facturas en el mismo envío, en lugar de una a una como Gipuzkoa y Araba.

Si envío varias facturas de golpe en el mismo envío/fichero... ¿cómo obtengo el Nº, serie y firma de la factura anterior si aún no he recibido respuesta hasta que se envíen todas?

Lo explico mejor...

En un mismo fichero, envío 100 facturas de golpe. Si en "SignatureValueFirmaFacturaAnterior", etc. debo poner la firma de la factura anterior, nº, serie... que se haya enviado correctamente... ¿cómo sé si ésta efectivamente se envió correctamente, si aún no he obtenido la respuesta de este envío masivo?

Obviamente puedo incluir ese dato, y el nº, serie, etc. de la factura anterior independientemente de que ésta se haya enviado correctamente o no, y esperar al resultado final y actuar en consecuencia (marcándolas como "no enviadas").
Pero claro, desde que falle un envío (por ejemplo, cuando vaya por la 25), las otras 75 darán todas error. No veo lógico hacerlo así.

Otra opción es enviarlas de una en una y listo, como con Gipuzkoa y Araba, pero no sé si será una opción elegante teniendo en cuenta que han habilitado el envío masivo por algún motivo, no?

Espero haberme explicado bien. Sin duda creo que el envío "de una en una" permite controlar más los envíos, ya que puedes incluso hacer comprobaciones antes de enviar, etc.

¿Cómo lo hacéis vosotros?

adolphsys 19-10-2021 14:07:24

Cita:

Empezado por espinete (Mensaje 543586)
Hola a todos/as...

Por fin he podido generar, firmar, enviar, (consultar) y anular facturas a las tres delegaciones. El problema que me encuentro ahora es con Bizkaia, que permite enviar varias facturas en el mismo envío, en lugar de una a una como Gipuzkoa y Araba.

Si envío varias facturas de golpe en el mismo envío/fichero... ¿cómo obtengo el Nº, serie y firma de la factura anterior si aún no he recibido respuesta hasta que se envíen todas?

Lo explico mejor...

En un mismo fichero, envío 100 facturas de golpe. Si en "SignatureValueFirmaFacturaAnterior", etc. debo poner la firma de la factura anterior, nº, serie... que se haya enviado correctamente... ¿cómo sé si ésta efectivamente se envió correctamente, si aún no he obtenido la respuesta de este envío masivo?

Obviamente puedo incluir ese dato, y el nº, serie, etc. de la factura anterior independientemente de que ésta se haya enviado correctamente o no, y esperar al resultado final y actuar en consecuencia (marcándolas como "no enviadas").
Pero claro, desde que falle un envío (por ejemplo, cuando vaya por la 25), las otras 75 darán todas error. No veo lógico hacerlo así.

Otra opción es enviarlas de una en una y listo, como con Gipuzkoa y Araba, pero no sé si será una opción elegante teniendo en cuenta que han habilitado el envío masivo por algún motivo, no?

Espero haberme explicado bien. Sin duda creo que el envío "de una en una" permite controlar más los envíos, ya que puedes incluso hacer comprobaciones antes de enviar, etc.

¿Cómo lo hacéis vosotros?

Hola, el proceso de encadenamiento de las facturas se hace en la emisión (facturación propiamente dicha), no en el envío.

adolphsys 19-10-2021 14:10:30

Cita:

Empezado por elcharlie (Mensaje 543576)
Parece ser, que el Servidor de Pruebas de araba ya está operativo, y han habilitado la comprobación del código QR en la siguiente url base: https://pruebas-ticketbai.araba.eus/tbai/qrtbai/
Yo he hecho la prueba y me da el error 'Parámetros Incorrectos", estoy seguro que genero la url correctamente (no es por ser un sobrao, pero genero las url de los QR de las otras diputaciones de la misma manera, y no tengo problemas), pero por si acaso, ¿habéis probado vosotros si os funciona bien?

Yo tampoco puedo comprobar facturas en Araba, también me da parámetros incorrectos...

espinete 19-10-2021 14:23:45

Cita:

Empezado por adolphsys (Mensaje 543587)
Hola, el proceso de encadenamiento de las facturas se hace en la emisión (facturación propiamente dicha), no en el envío.

Es decir, que cuando genere el XML de la factura, incluyo los datos de la factura anterior independientemente de que ésta se haya enviado correctamente o no?
Y ya luego, cuando obtenga la respuesta del envío masivo, las marco como "erróneas"?

Habrá que hacerlo así, pero sigo prefiriendo el envío "una a una".

keys 19-10-2021 14:46:38

Yo creo que el problema del qr de alava es que estamos calculando mal el CRC. Mirando su ejemplo

https://pruebas-ticketbai.araba.eus/...2537.70&cr=017

Yo no consigo que me de 017. No se sobre que lo estan aplicando.

keys 19-10-2021 14:56:55

Quizas tenga algo que ver esto de la barra. Lo estoy probando pero no me sale el mismo crc.

Cita:

URL de acceso a la aplicación web de lectura del QR, específica para cada Administración tributaria:
o Araba/Álava: https://ticketbai.araba.eus/TBAI/QRTBAI (sin “/” para el cálculo del CRC).
o Bizkaia: https://batuz.eus/QRTBAI/ (con “/” al final para el cálculo del CRC).
o Gipuzkoa: https://tbai.egoitza.gipuzkoa.eus/qr/ (con “/” al final para el cálculo del CRC).

JoseLeeTo 19-10-2021 16:06:13

Buenas tardes;

A la hora de dar de alta en Alava, desde hace unos días, a la URL:
https://pruebas-ticketbai.araba.eus/...I/v1/facturas/

.... me devuelve siempre como "Rechazado", con el error:
"El servicio de recepcion no esta disponible. Repita la operacion mas tarde"

¿Os ocurre a todos lo mismo con Alava? ¿Están caídos los servidores? ¿Se conoce alguna fecha donde se restaurarán?

Muchas gracias de antemano.
Un saludo.

adolphsys 19-10-2021 16:15:10

Cita:

Empezado por JoseLeeTo (Mensaje 543592)
Buenas tardes;

A la hora de dar de alta en Alava, desde hace unos días, a la URL:
https://pruebas-ticketbai.araba.eus/...I/v1/facturas/

.... me devuelve siempre como "Rechazado", con el error:
"El servicio de recepcion no esta disponible. Repita la operacion mas tarde"

¿Os ocurre a todos lo mismo con Alava? ¿Están caídos los servidores? ¿Se conoce alguna fecha donde se restaurarán?

Muchas gracias de antemano.
Un saludo.

Acabo de hacer un envío a Araba y a mi me funciona.

YellowStone 19-10-2021 16:15:14

Cita:

Empezado por keys (Mensaje 543591)
Quizas tenga algo que ver esto de la barra. Lo estoy probando pero no me sale el mismo crc.


La url de pruebas para los códigos QR en Álava es esta, según la guía de pruebas:


https://pruebas-ticketbai.araba.eus/tbai/qrtbai/

Pero también falla.

rci 19-10-2021 16:19:36

C# .Net envio TBAI desde un servicio => certificados
 
Buenas tardes, nuestra aplicación está desarrollada en c# .Net y para el envío a las diputaciones forales utilizamos System.Net.HttpWebRequest


Nuestra idea es que las facturas se vayan enviando desde un servicio desatendido, que esté funcionando en el servidor.
Ya lo tenemos implementado y dentro del entorno de desarrollo funciona correctamente.

El problema lo tenemos cuando lo ejecutamos como servicio, que arranca con el usuario del sistema local (System).

En ese caso las diputaciones nos contestan con una excepción (cada una con un mensaje distinto) pero que indica que no ha encontrado el certificado de cliente para el envío.

Hemos visto que HttpWebRequest para envar a TicketBAI debe tener el certificado en el almacén de certificados del usuario (instalado en el navegador) y además debemos indicar que certificado del almacén se utilizará para el envio añadiendolo en la propiedad ClientCertificates del HttpWebRequest. Por ejemplo:

Código:

    var httpWebRequest = HttpWebRequest.CreateHttp(url);
    httpWebRequest.AllowAutoRedirect = true;
    httpWebRequest.ClientCertificates.Add(this.certificate);
    httpWebRequest.Method = "POST";
    …

Pues bien, parece que cuando ejecutamos como servicio de windows, como arranca con el usuario system, el HttpWebRequest no tiene acceso al almacén de certificados de los otros usuarios, por ejemplo el usuario con que se inicia sesión en el servidor y donde instalamos el certificado en el navegador.

Alguien que trabaje con .Net y utilice un servicio de windows para el envío nos puede echar un cable por favor?:confused:


Muchas gracias!!


La franja horaria es GMT +2. Ahora son las 12:14:48.

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