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)

Sistel 24-08-2021 16:48:48

Cita:

Empezado por ermendalenda (Mensaje 542439)
Buenas tardes, muchas gracias a todos por vuestras ayuda.
Por favor necesitaria que alguien quee use el firmador.php, si puede generar la firma, e indicarme que diferencia le sale.
No consigo que me cree una firma válida, ya he repasado el código 30 veces.
Adjunto Archivo firrmado

Hola ermendalenda,

Yo también utilizo el firmador.php del colega bilbur (que sea alabado por los siglos :D ) con algunas pequeñas modificaciones

Comparando la cabecera tuya con la mía:

La tuya:
Código:

<?xml version="1.0" encoding="UTF-8"?><T:TICKETBAI xmlns:T="http://ticketBai.bfa" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2001/XMLSchema ticketBai.xsd">
La mía:
Código:

<?xml version="1.0" encoding="UTF-8"?><T:TicketBai xmlns:T="urn:ticketbai:emision" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd">
No sé si influirá pero empieza por probarlo poniéndolo como yo a ver si hay suerte.
Por supuesto, también tendrás que modificar el nodo de cierre a </T:TicketBai>

Saludos

bilbur 24-08-2021 16:57:51

Cita:

Empezado por ermendalenda (Mensaje 542439)
Buenas tardes, muchas gracias a todos por vuestras ayuda.
Por favor necesitaria que alguien quee use el firmador.php, si puede generar la firma, e indicarme que diferencia le sale.
No consigo que me cree una firma válida, ya he repasado el código 30 veces.

Adjunto Archivo firrmado

Error al comprobar con chilkat:
Signature is Invalid
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 invalid because the computed digest differs from the digest in the XML.
Reference 3 digest is valid.


Cambia los xmlsn y demás de tu xml

Antes de <cabecera> va esto:


Código:

   

<?xml version='1.0' encoding='UTF-8'?>
<T:TicketBai xmlns:T='urn:ticketbai:emision'
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xsi:schemaLocation='http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd'>


<Cabecera>.....
....</HuellaTBAI>
</T:TicketBai>


ermendalenda 24-08-2021 21:17:28

Gracias gracias
 
A la primera después de vuestras correcciones.
Ya he visto la relación de la cabecera con el código php.
Que buenísimo y que rápida la firma.

ermendalenda 24-08-2021 21:51:55

TiquetBai en resto de comunidades
 
Para el resto de España tiene pinta de que le queda poco tiempo la regulación, después del Boe del 10 de julio.
Apuestas: TiquetSi, TiquetMaster...

Sistel 24-08-2021 22:33:38

Cita:

Empezado por ermendalenda (Mensaje 542446)
A la primera después de vuestras correcciones.
Ya he visto la relación de la cabecera con el código php.
Que buenísimo y que rápida la firma.

Hola ermendalenda,

De todas formas, aunque la firma sea correcta, probablemente te dará error al enviar el XML a Hacienda.
El tema es el nombre de los nodos del XML, que tienen que ser exactos.
Tienes alguno llamado <HuellaTb> cuando debería llamarse <HuellaTBAI>
Compruébalos.

Saludos

ermendalenda 24-08-2021 22:38:16

Cita:

Empezado por Sistel (Mensaje 542448)
Hola ermendalenda,

De todas formas, aunque la firma sea correcta, probablemente te dará error al enviar el XML a Hacienda.
El tema es el nombre de los nodos del XML, que tienen que ser exactos.
Tienes alguno llamado <HuellaTb> cuando debería llamarse <HuellaTBAI>
Compruébalos.

Saludos

Lo repaso, muchas gracias por la observación.

Sanduzelai 25-08-2021 10:29:18

Instalación del certificado y libreria para firma de XML en java
 
Buenos días,
lo primero es daros las gracias a todos por toda la información tan útil que habéis compartido (menos mal que existe este foro!).

Me encuentro en el punto de firmar el archivo XML para después enviarlo a la administración.
Tengo un certificado .pfx de Representante de Persona Jurídica (entiendo que es uno de los válidos) y quiero instalarlo en un servidor CentOS. La idea es que una vez hecho esto, el programita en java que estoy desarrollando obtenga el certificado y firme los XML que después enviará.

¿Alguien sabe como tengo que "instalar" ese certificado en mi servidor linux CentOS? ¿O con copiar el .pfx en una carpeta del servidor y poner esa ruta al java (para que este lo recoja y firma los XML) sería suficiente?
La verdad es que no he trabajado nunca con certificados y estoy super perdido.

Por otro lado he leído por aquí que se recomendaba utilizar Chilkat.
He ojeado un poco su api y tiene buena pinta pero ¿conocéis alguna librería java gratis como alternativa a chilkat para este fin?


Muchas gracias por adelantado

Eric Mtz 25-08-2021 10:36:06

¡Muy buenas a todos!, ya estoy de vuelta de las vacatas, ¿Cómo andáis?

Bueno, entrado en materia hoy tengo una duda mas bien teórica, me gustaría saber vuestra opinión y creo que puede ser interesante para todos. (Atención se viene parrafada, pero en su mayoría son ejemplos así que no asustarse.)

El caso es el siguiente, quería tratar las respuestas de hacienda para que el usuario de turno pudiera leer algo MUCHO mas simple y legible, incluso un "Recibido" mi intención era transformarlo a "La factura ha sido enviada satisfactoriamente.", "Ha salido todo a pedir de Milhouse." o "Todo ha chuscado bien."... ya sabéis filosofía "Don't make me think" y esas cosas.

El tema es que con BATUZ todo perfecto, te responden algo como:
Cita:

Incorrecto, error B4_1000022, El NIF del Interesado indicado en la cabecera no coincide con el del obligado Tributario.
De hecho tenemos un pdf de 143 páginas con todas las posibles respuestas y sus respectivos códigos:
https://www.batuz.eus/fitxategiak/ba...b1d893b1006da9


Mi problema surge con Gipuzkoa, donde te devuelven algo como esto:
Cita:

Rechazado, Error 002, El fichero de alta TicketBAI no cumple el esquema XSD. Detalle del error: cvc-enumeration-valid: Value '' is not facet-valid with respect to enumeration '[AF, AL, DE, AD, AO, AI.... ] It must be a value from the enumeration.
Y me diréis: Pos de puta madre, te han detallado el error, ¿Cuál es tu maldito problema Ericete?.
Pues muy simple, todos los errores de Gipuzkoa te devuelven el código 002, es decir, ese código sirve para identificar que en la respuesta hay algo incorrecto, pero no tenemos un código específico de cada error.

De pronto cobra sentido que el pdf con los errores de Gipuzkoa tenga tan solo 13 páginas:
https://www.gipuzkoa.eus/documents/2...9-3eb70c68034a

Esto rompe mi plan de pasar la respuesta por un switch donde filtrar los errores mas confusos en base a su código... a no ser que utilice como identificador el propio texto del error... aunque lo veo difícil ya que el ejemplo que os acorté antes tiene 1178 caracteres.

Perdonad, edito porque se me ha olvidado formular la pregunta... si... mmm... mejor ni lo mencionéis... serán efectos secundarios de los microchis de la vacuna.
¿Hacéis algún filtro para tratar los errores?, ¿Si es así cómo lo hacéis?, ¿Os ha supuesto algún problema Gipuzkoa?

Pues ya está, creo que os he expuesto mi tesitura con claridad, puede que se me esté escapando algo y si ese es el caso no dudéis en corregirme, pero lo cierto es que me ha descolocado, un saludo a todos y ánimo que ya queda menos.

ermendalenda 25-08-2021 15:00:16

Cita:

Empezado por Eric Mtz (Mensaje 542452)
¡Muy buenas a todos!, ya estoy de vuelta de las vacatas, ¿Cómo andáis?

Bueno, entrado en materia hoy tengo una duda mas bien teórica, me gustaría saber vuestra opinión y creo que puede ser interesante para todos. (Atención se viene parrafada, pero en su mayoría son ejemplos así que no asustarse.)

El caso es el siguiente, quería tratar las respuestas de hacienda para que el usuario de turno pudiera leer algo MUCHO mas simple y legible, incluso un "Recibido" mi intención era transformarlo a "La factura ha sido enviada satisfactoriamente.", "Ha salido todo a pedir de .....

A mi tb me preocupa, aunque estoy en fase de desarrollo. Yo lo que estoy haciendo es ir guardando un registro de lo enviado y del valor devuelto extraigo la información que necesito en cada campo:
valor_firrma (texto)
valor_firrma_ant (texto)
fecha_hora_firma(texto)
fecha_hora_enviado(texto)
respuesta(memo)
codigo_Estado_recepcion_hacienda(texto)
descripcion_Estado_recepcion_hacienda(texto)
codigo_resultado_recepcion_hacienda(texto)
descripcion_resultado_recepcion_hacienda(texto)
etc.

.. después haré el tratamiento de los textos de los errores más básicos que se me ocurran, provocando el error.
Los errores que no tenga tratados se podran visualizar del campo [respuesta] o para futuros tratamientos si hace falta

iMia 25-08-2021 16:24:22

Cita:

Empezado por Eric Mtz (Mensaje 542452)
¡Muy buenas a todos!, ya estoy de vuelta de las vacatas, ¿Cómo andáis?

Bueno, entrado en materia hoy tengo una duda mas bien teórica, me gustaría saber vuestra opinión y creo que puede ser interesante para todos. (Atención se viene parrafada, pero en su mayoría son ejemplos así que no asustarse.)

El caso es el siguiente, quería tratar las respuestas de hacienda para que el usuario de turno pudiera leer algo MUCHO mas simple y legible, incluso un "Recibido" mi intención era transformarlo a "La factura ha sido enviada satisfactoriamente.", "Ha salido todo a pedir de Milhouse." o "Todo ha chuscado bien."... ya sabéis filosofía "Don't make me think" y esas cosas.

El tema es que con BATUZ todo perfecto, te responden algo como:


De hecho tenemos un pdf de 143 páginas con todas las posibles respuestas y sus respectivos códigos:
https://www.batuz.eus/fitxategiak/ba...b1d893b1006da9


Mi problema surge con Gipuzkoa, donde te devuelven algo como esto:


Y me diréis: Pos de puta madre, te han detallado el error, ¿Cuál es tu maldito problema Ericete?.
Pues muy simple, todos los errores de Gipuzkoa te devuelven el código 002, es decir, ese código sirve para identificar que en la respuesta hay algo incorrecto, pero no tenemos un código específico de cada error.

De pronto cobra sentido que el pdf con los errores de Gipuzkoa tenga tan solo 13 páginas:
https://www.gipuzkoa.eus/documents/2...9-3eb70c68034a

Esto rompe mi plan de pasar la respuesta por un switch donde filtrar los errores mas confusos en base a su código... a no ser que utilice como identificador el propio texto del error... aunque lo veo difícil ya que el ejemplo que os acorté antes tiene 1178 caracteres.

Perdonad, edito porque se me ha olvidado formular la pregunta... si... mmm... mejor ni lo mencionéis... serán efectos secundarios de los microchis de la vacuna.
¿Hacéis algún filtro para tratar los errores?, ¿Si es así cómo lo hacéis?, ¿Os ha supuesto algún problema Gipuzkoa?

Pues ya está, creo que os he expuesto mi tesitura con claridad, puede que se me esté escapando algo y si ese es el caso no dudéis en corregirme, pero lo cierto es que me ha descolocado, un saludo a todos y ánimo que ya queda menos.

Yo acabo de pasar por ahí... ya que sólo hago Gipuzkoa... me libro de Bizkaia...
Lo que he hecho ha sido guardar los mensajes completos de error (estado, descripción y los diferentes códigos de error/aviso), junto con la factura (he creado dos tablas con el resultado y otra con los avisos) y el xml de respuesta y mostrar únicamente un mensaje el texto que se indica en el PDF.
Un 002 es: El "fichero de alta TicketBAI no cumple el esquema XSD" ya que resultaria casi imposible tratar el error de los cientos que puede haber en un esquema erróneo de incumplimiento del xsd (por ejemplo)
Ademas, en el caso del 002, es un problema del programador que lo ha hecho mal... no es algo que pueda resolver el usuario. Como mucho puedes comprobar antes los casos normales en que falta algo o algo puede estar mal... que esté bien firmado, que los nodos cumplan con xsd, etc...

defcon1_es 26-08-2021 11:26:08

Buenos dias.


Creo que ya he conseguido (con autofirmacommandline) firmar una factura y que funcione !!,

pero hoy al subir una factura a Batuz me da este error:


Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <FechaRecepcion>26-08-2021 11:14:56</FechaRecepcion>
        <Estado>01</Estado>
        <Descripcion>Rechazado</Descripcion>
        <Azalpena>Baztertua</Azalpena>
        <ResultadosValidacion>
            <Codigo>004</Codigo>
            <Descripcion>Error: Falta dato obligatorio o el dato es erróneo [CabeceraFactura:FechaExpedicionFactura].</Descripcion>
            <Azalpena>Errorea: Derrigorrezko datua falta da edo datua ez da zuzena [CabeceraFactura:FechaExpedicionFactura].</Azalpena>
        </ResultadosValidacion>
    </Salida>
</ns2:TicketBaiResponse>

pero en la cabecera si que lleva la fecha


Código:



<CabeceraFactura>
    <SerieFactura>RV</SerieFactura>
  <NumFactura>1000400</NumFactura>
  <FechaExpedicionFactura>29-08-2021</FechaExpedicionFactura>
  <HoraExpedicionFactura>17:54:53</HoraExpedicionFactura>
</CabeceraFactura>

¿Que puede estar pasando?

Sistel 26-08-2021 11:35:07

Cita:

Empezado por defcon1_es (Mensaje 542460)
Buenos dias.


Creo que ya he conseguido (con autofirmacommandline) firmar una factura y que funcione !!,

pero hoy al subir una factura a Batuz me da este error:


Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <FechaRecepcion>26-08-2021 11:14:56</FechaRecepcion>
        <Estado>01</Estado>
        <Descripcion>Rechazado</Descripcion>
        <Azalpena>Baztertua</Azalpena>
        <ResultadosValidacion>
            <Codigo>004</Codigo>
            <Descripcion>Error: Falta dato obligatorio o el dato es erróneo [CabeceraFactura:FechaExpedicionFactura].</Descripcion>
            <Azalpena>Errorea: Derrigorrezko datua falta da edo datua ez da zuzena [CabeceraFactura:FechaExpedicionFactura].</Azalpena>
        </ResultadosValidacion>
    </Salida>
</ns2:TicketBaiResponse>

pero en la cabecera si que lleva la fecha


Código:



<CabeceraFactura>
    <SerieFactura>RV</SerieFactura>
  <NumFactura>1000400</NumFactura>
  <FechaExpedicionFactura>29-08-2021</FechaExpedicionFactura>
  <HoraExpedicionFactura>17:54:53</HoraExpedicionFactura>
</CabeceraFactura>

¿Que puede estar pasando?

Hola defcon1_es

El formato parece correcto, pero tal vez el dato no lo sea.
Recuerda que no se pueden emitir facturas con fecha u hora futura.
Comprueba que no sea eso.

Saludos

tejano 26-08-2021 11:35:17

Cita:

Empezado por defcon1_es (Mensaje 542460)
Buenos dias.


Creo que ya he conseguido (con autofirmacommandline) firmar una factura y que funcione !!,

pero hoy al subir una factura a Batuz me da este error:


Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <FechaRecepcion>26-08-2021 11:14:56</FechaRecepcion>
        <Estado>01</Estado>
        <Descripcion>Rechazado</Descripcion>
        <Azalpena>Baztertua</Azalpena>
        <ResultadosValidacion>
            <Codigo>004</Codigo>
            <Descripcion>Error: Falta dato obligatorio o el dato es erróneo [CabeceraFactura:FechaExpedicionFactura].</Descripcion>
            <Azalpena>Errorea: Derrigorrezko datua falta da edo datua ez da zuzena [CabeceraFactura:FechaExpedicionFactura].</Azalpena>
        </ResultadosValidacion>
    </Salida>
</ns2:TicketBaiResponse>

pero en la cabecera si que lleva la fecha


Código:



<CabeceraFactura>
    <SerieFactura>RV</SerieFactura>
  <NumFactura>1000400</NumFactura>
  <FechaExpedicionFactura>29-08-2021</FechaExpedicionFactura>
  <HoraExpedicionFactura>17:54:53</HoraExpedicionFactura>
</CabeceraFactura>

¿Que puede estar pasando?

Creo que puede ser porque la fecha de expedición de factura es superior a la fecha de hoy. Creo que deja pasar que sea inferior, pero nunca superior.
Cuando entre en vigor tener en cuenta que fecha de Expedicion tiene que ser la fecha de hoy.

angelito37 26-08-2021 12:49:21

Repasando los emails de TicketBai
 
Repasando los emails de TicketBai he visto uno del 19/07/2021 indicando que para permitir el registro el impreso de las facturas debe traducirse al euskera.


Mandan una relación de etiquetas para la correspondiente traducción


Esto es obligatorio ?????

espinete 26-08-2021 12:49:32

Hola a tod@s de nuevo...

He estado ausente y con el proyecto de TicketBAI en pausa durante verano debido a otros proyectos más urgentes, concretamente desde el anuncio de Bizcaia de posponer la entrada en vigor hasta 2023/2024.

He leído las últimas 10-15 páginas del hilo y no me ha quedado claro qué es lo que se pospone y qué no. Si lo que se pospone es solo el LROE... ¿los tíckets de Bizcaia no se envían enviando el LROE? ¿Cómo se envían entonces? ¿Igual que en Gipuzkoa/Araba?

He visto también que se ha avanzado en la implementación para PHP. Muy buena noticia, porque casualmente nos íbamos a poner con eso ahora en la empresa.

iMia 26-08-2021 15:46:14

Cita:

Empezado por defcon1_es (Mensaje 542460)
Buenos dias.


Creo que ya he conseguido (con autofirmacommandline) firmar una factura y que funcione !!,

pero hoy al subir una factura a Batuz me da este error:


Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <FechaRecepcion>26-08-2021 11:14:56</FechaRecepcion>
        <Estado>01</Estado>
        <Descripcion>Rechazado</Descripcion>
        <Azalpena>Baztertua</Azalpena>
        <ResultadosValidacion>
            <Codigo>004</Codigo>
            <Descripcion>Error: Falta dato obligatorio o el dato es erróneo [CabeceraFactura:FechaExpedicionFactura].</Descripcion>
            <Azalpena>Errorea: Derrigorrezko datua falta da edo datua ez da zuzena [CabeceraFactura:FechaExpedicionFactura].</Azalpena>
        </ResultadosValidacion>
    </Salida>
</ns2:TicketBaiResponse>

pero en la cabecera si que lleva la fecha


Código:



<CabeceraFactura>
    <SerieFactura>RV</SerieFactura>
  <NumFactura>1000400</NumFactura>
  <FechaExpedicionFactura>29-08-2021</FechaExpedicionFactura>
  <HoraExpedicionFactura>17:54:53</HoraExpedicionFactura>
</CabeceraFactura>

¿Que puede estar pasando?

El mensaje es claro: Error: Falta dato obligatorio o el dato es erróneo
Como no falta es que es erróneo. No puede ser una factura con fecha superior al envío.

iMia 26-08-2021 17:52:34

QUOTE=angelito37;542464]Repasando los emails de TicketBai he visto uno del 19/07/2021 indicando que para permitir el registro el impreso de las facturas debe traducirse al euskera.


Mandan una relación de etiquetas para la correspondiente traducción


Esto es obligatorio ?????[/quote]

No es así exactamente, según he entendido yo...

Han "presentado" el TicketBAI euskaraz, que es una recomendación que para las empresas que quieran emitir la factura en Euskara, puedan hacerlo.

(sic) : "La Ley 10/1982 de Normalización del Uso del Euskera establece que todos los ciudadanos y ciudadanas vascas tienen derecho a expresarse en euskera en todos los ámbitos de la vida social.

Por ello, consideramos muy importante que los programas que se inscriban en el registro del software TicketBAI estén adaptados para que el ticket o factura que recibirá el cliente esté en euskera.

La Diputación Foral de Gipuzkoa ofrece el apoyo necesario a los desarrolladores de software TicketBAI, así como a las entidades que están realizando la labor de difusión, aportando en los dos idiomas oficiales los contenidos de la plantilla de la factura que genera el sistema."

Y dos enlaces (a un xls y a un pdf) con las traducciones.
En ningun caso es obligatorio.

Saludos...

defcon1_es 26-08-2021 19:10:41

Gracias a los 3 por responder, efectivamente era por la fecha.


Ahora al enviar el fichero firmado con AutoFirmaCommandLine
Código:


AutoFirmaCommandLine sign -i C:\FacE\FacturaTBAI.XML -o C:\FacE\FacturaTBAI.FIRMADO.XML -store windows -filter subject.contains:<NIF> -format xades -xml -config "format=XAdES Enveloped"

y enviado mediante CURL

Código:

CURL -H "Content-type: application/xml;charset=UTF-8" -d @C:\FacE\FacturaTBAI.FIRMADO.XML -o C:\Teragest\FacE\FacturaTBAI.FIRMADO.Output.xml https://tbai-prep.egoitza.gipuzkoa.eus/WAS/HACI/HTBRecepcionFacturasWEB/rest/recepcionFacturas/alta
me responde esto:


Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <IdentificadorTBAI>TBAI-04600617L-290721-FdyL+dfXfDh5s-210</IdentificadorTBAI>
        <FechaRecepcion>26-08-2021 18:40:26</FechaRecepcion>
        <Estado>00</Estado>
        <Descripcion>Recibido</Descripcion>
        <Azalpena>Jasota</Azalpena>
        <ResultadosValidacion>
            <Codigo>008</Codigo>
            <Descripcion>El mensaje ha sido modificado en transito o la firma no esta bien realizada -- Reference URI="" failed to verify. [src/xml2signatureobj.cpp(315)] - (10606)</Descripcion>
            <Azalpena>El mensaje ha sido modificado en transito o la firma no esta bien realizada -- Reference URI="" failed to verify. [src/xml2signatureobj.cpp(315)] - (10606)</Azalpena>
        </ResultadosValidacion>
        <ResultadosValidacion>
            <Codigo>010</Codigo>
            <Descripcion>Aviso: Posible error de encadenamiento.</Descripcion>
            <Azalpena>Abisua: Litekeena da kateamendu errorea gertatzea.</Azalpena>
        </ResultadosValidacion>
        <CSV>TBAI2d4c3ee4-7c65-47f1-b789-b82f297b2f44</CSV>
    </Salida>
</ns2:TicketBaiResponse>

Pero si la vuelvo a enviar, me responde esto otro (con lo que si se registra en su sistema)
Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <FechaRecepcion>26-08-2021 18:56:29</FechaRecepcion>
        <Estado>01</Estado>
        <Descripcion>Rechazado</Descripcion>
        <Azalpena>Baztertua</Azalpena>
        <ResultadosValidacion>
            <Codigo>005</Codigo>
            <Descripcion>Error: Fichero de alta TicketBAI ya registrado en el sistema.</Descripcion>
            <Azalpena>Errorea: TicketBAI fitxategia sisteman erregistratuta dago jada.</Azalpena>
        </ResultadosValidacion>
    </Salida>
</ns2:TicketBaiResponse>

El error por encadenamiento, lo tengo claro, pero ¿por qué me devuelve el error 008?

Sistel 26-08-2021 19:41:55

Cita:

Empezado por defcon1_es (Mensaje 542475)
Gracias a los 3 por responder, efectivamente era por la fecha.


Ahora al enviar el fichero firmado con AutoFirmaCommandLine
Código:


AutoFirmaCommandLine sign -i C:\FacE\FacturaTBAI.XML -o C:\FacE\FacturaTBAI.FIRMADO.XML -store windows -filter subject.contains:<NIF> -format xades -xml -config "format=XAdES Enveloped"

y enviado mediante CURL

Código:

CURL -H "Content-type: application/xml;charset=UTF-8" -d @C:\FacE\FacturaTBAI.FIRMADO.XML -o C:\Teragest\FacE\FacturaTBAI.FIRMADO.Output.xml https://tbai-prep.egoitza.gipuzkoa.eus/WAS/HACI/HTBRecepcionFacturasWEB/rest/recepcionFacturas/alta
me responde esto:


Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <IdentificadorTBAI>TBAI-04600617L-290721-FdyL+dfXfDh5s-210</IdentificadorTBAI>
        <FechaRecepcion>26-08-2021 18:40:26</FechaRecepcion>
        <Estado>00</Estado>
        <Descripcion>Recibido</Descripcion>
        <Azalpena>Jasota</Azalpena>
        <ResultadosValidacion>
            <Codigo>008</Codigo>
            <Descripcion>El mensaje ha sido modificado en transito o la firma no esta bien realizada -- Reference URI="" failed to verify. [src/xml2signatureobj.cpp(315)] - (10606)</Descripcion>
            <Azalpena>El mensaje ha sido modificado en transito o la firma no esta bien realizada -- Reference URI="" failed to verify. [src/xml2signatureobj.cpp(315)] - (10606)</Azalpena>
        </ResultadosValidacion>
        <ResultadosValidacion>
            <Codigo>010</Codigo>
            <Descripcion>Aviso: Posible error de encadenamiento.</Descripcion>
            <Azalpena>Abisua: Litekeena da kateamendu errorea gertatzea.</Azalpena>
        </ResultadosValidacion>
        <CSV>TBAI2d4c3ee4-7c65-47f1-b789-b82f297b2f44</CSV>
    </Salida>
</ns2:TicketBaiResponse>

Pero si la vuelvo a enviar, me responde esto otro (con lo que si se registra en su sistema)
Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <FechaRecepcion>26-08-2021 18:56:29</FechaRecepcion>
        <Estado>01</Estado>
        <Descripcion>Rechazado</Descripcion>
        <Azalpena>Baztertua</Azalpena>
        <ResultadosValidacion>
            <Codigo>005</Codigo>
            <Descripcion>Error: Fichero de alta TicketBAI ya registrado en el sistema.</Descripcion>
            <Azalpena>Errorea: TicketBAI fitxategia sisteman erregistratuta dago jada.</Azalpena>
        </ResultadosValidacion>
    </Salida>
</ns2:TicketBaiResponse>

El error por encadenamiento, lo tengo claro, pero ¿por qué me devuelve el error 008?

Hola defcon1_es,

Si miras en https://www.gipuzkoa.eus/documents/2.../Anexo+IV.pdf/ página 8, verás que el código 008 no es un rechazo del envío.
Es sólo un aviso, pero ha sido aceptado el envío (aunque el fichero esté chungo en su firma)

Saludos

ermendalenda 26-08-2021 19:48:43

Cita:

Empezado por defcon1_es (Mensaje 542475)
Gracias a los 3 por responder, efectivamente era por la fecha.


Ahora al enviar el fichero firmado con AutoFirmaCommandLine
.......

Hola Intentar Cambiar en el envio CURL
-d @C:\FacE\.....
por:
--data-binary @C:\FacE\.....

Esto hará que en el envio no te cambie los retornos de carro y otros caracteres ( por ello lo del cambio en transito error 008)

Por otro lado, efectivamente lo que dice Sistel tiene razón, si ya lo ha aceptado con codigo 00, pero con una incidencia 008 y si lo vuelves a enviar (el mismo fichero con el mismo problema) te dice que existe (error 005), aunque no sé que pasará si lo envias ya correcto ¿te dará el ok?(ya nos contarás que me interesa)

Saludos y espero haberte ayudado

iMia 27-08-2021 08:32:02

Cita:

Empezado por defcon1_es (Mensaje 542475)
Gracias a los 3 por responder, efectivamente era por la fecha.


Ahora al enviar el fichero firmado con AutoFirmaCommandLine
Código:


AutoFirmaCommandLine sign -i C:\FacE\FacturaTBAI.XML -o C:\FacE\FacturaTBAI.FIRMADO.XML -store windows -filter subject.contains:<NIF> -format xades -xml -config "format=XAdES Enveloped"

y enviado mediante CURL

Código:

CURL -H "Content-type: application/xml;charset=UTF-8" -d @C:\FacE\FacturaTBAI.FIRMADO.XML -o C:\Teragest\FacE\FacturaTBAI.FIRMADO.Output.xml https://tbai-prep.egoitza.gipuzkoa.eus/WAS/HACI/HTBRecepcionFacturasWEB/rest/recepcionFacturas/alta
me responde esto:


Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <IdentificadorTBAI>TBAI-04600617L-290721-FdyL+dfXfDh5s-210</IdentificadorTBAI>
        <FechaRecepcion>26-08-2021 18:40:26</FechaRecepcion>
        <Estado>00</Estado>
        <Descripcion>Recibido</Descripcion>
        <Azalpena>Jasota</Azalpena>
        <ResultadosValidacion>
            <Codigo>008</Codigo>
            <Descripcion>El mensaje ha sido modificado en transito o la firma no esta bien realizada -- Reference URI="" failed to verify. [src/xml2signatureobj.cpp(315)] - (10606)</Descripcion>
            <Azalpena>El mensaje ha sido modificado en transito o la firma no esta bien realizada -- Reference URI="" failed to verify. [src/xml2signatureobj.cpp(315)] - (10606)</Azalpena>
        </ResultadosValidacion>
        <ResultadosValidacion>
            <Codigo>010</Codigo>
            <Descripcion>Aviso: Posible error de encadenamiento.</Descripcion>
            <Azalpena>Abisua: Litekeena da kateamendu errorea gertatzea.</Azalpena>
        </ResultadosValidacion>
        <CSV>TBAI2d4c3ee4-7c65-47f1-b789-b82f297b2f44</CSV>
    </Salida>
</ns2:TicketBaiResponse>

Pero si la vuelvo a enviar, me responde esto otro (con lo que si se registra en su sistema)
Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <FechaRecepcion>26-08-2021 18:56:29</FechaRecepcion>
        <Estado>01</Estado>
        <Descripcion>Rechazado</Descripcion>
        <Azalpena>Baztertua</Azalpena>
        <ResultadosValidacion>
            <Codigo>005</Codigo>
            <Descripcion>Error: Fichero de alta TicketBAI ya registrado en el sistema.</Descripcion>
            <Azalpena>Errorea: TicketBAI fitxategia sisteman erregistratuta dago jada.</Azalpena>
        </ResultadosValidacion>
    </Salida>
</ns2:TicketBaiResponse>

El error por encadenamiento, lo tengo claro, pero ¿por qué me devuelve el error 008?

En la firma te faltan los parámetros de política de firma, algoritmo, etc...
En el primer mensaje del hilo hay un recopilatorio de mensajes. Allí hay un enlance a un recopilatorio de código. y en ese segundo recopilatorio, en el apartado de firma con autofirma hay varios enlaces a mensajes con la instrucción completa de firma con autofirmacommandline...
venga va...

https://www.clubdelphi.com/foros/sho...&postcount=681

y

AutoFirmaCommandLine.exe sign
-i nombre_fichero
-o nombre_fichero_firmado
-xml
-store pkcs12:nombre_certificado.p12
-password contraseña_certificado
-alias nombrel_alias_del_certificado
-format xades
-config "format=XAdES Enveloped\npolicyIdentifier=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf
\npolicyIdentifierHash=Quzn98x3PMbSHwbUzaj5f5KOpiH0u8bvmwbbbNkO9Es=\npolicyIdentifierHashAlgorithm=h ttp://www.w3.org/2001/04/xmlenc#sha256
\npolicyQualifier=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf"



saludos

defcon1_es 27-08-2021 11:40:38

Muchas gracias a iMia y ermendalenda,
solucionando lo del encadenamiento por un lado y con vuestra ayuda,
¡¡ ya me funciona correctamente !!


Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <IdentificadorTBAI>TBAI-04600617L-020721-XtDDgyTK5vUyU-010</IdentificadorTBAI>
        <FechaRecepcion>27-08-2021 11:33:49</FechaRecepcion>
        <Estado>00</Estado>
        <Descripcion>Recibido</Descripcion>
        <Azalpena>Jasota</Azalpena>
        <CSV>TBAI61c1fc7f-fe1b-4232-9097-7fc39c3eaed2</CSV>
    </Salida>
</ns2:TicketBaiResponse>


Llamada al AutoFirmaCommandLine:

Código:

AutoFirmaCommandLine sign -i C:\FacE\FacturaTBAI.XML -o C:\FacE\FacturaTBAI.FIRMADO.XML -store windows -filter subject.contains:<NIF> -format xades -xml -config "format=XAdES Enveloped
\npolicyIdentifier=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf
\npolicyIdentifierHash=Quzn98x3PMbSHwbUzaj5f5KOpiH0u8bvmwbbbNkO9Es=
\npolicyIdentifierHashAlgorithm=http://www.w3.org/2001/04/xmlenc#sha256
\npolicyQualifier=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf"

Llamada CURL
Código:

CURL -H "Content-type: application/xml;charset=UTF-8" --data-binary @C:\FacE\FacturaTBAI.FIRMADO.XML -o C:\FacE\FacturaTBAI.FIRMADO.Output.xml https://tbai-prep.egoitza.gipuzkoa.eus/WAS/HACI/HTBRecepcionFacturasWEB/rest/recepcionFacturas/alta

ermendalenda 27-08-2021 19:34:31

Tiempos envíos y qr en Álava y guipuzcua
 
Pregunta sencilla, pero no encuentro la respuesta,
Si no tengo conexión, ya sea por caída de mi Red o el servidor de hacienda no funcione o un cable de Red partido... Etc etc.. Puedo dar el tiquet con el qr o el tiquet no debe salir hsstq que se realice el envío correcto?
En resumen.. Hay margen?

unomasmas 28-08-2021 08:08:33

Cita:

Empezado por ermendalenda (Mensaje 542484)
Pregunta sencilla, pero no encuentro la respuesta,
Si no tengo conexión, ya sea por caída de mi Red o el servidor de hacienda no funcione o un cable de Red partido... Etc etc.. Puedo dar el tiquet con el qr o el tiquet no debe salir hsstq que se realice el envío correcto?
En resumen.. Hay margen?

En breve: Sí
Confirmación: Sí, puedes (debes) crear tu fichero XML, generar el código QR, entregar la factura a tu cliente y después, cuando sea posible la conexión, enviarla.

unomasmas 28-08-2021 08:32:44

Qué pasa en Gipuzkoa
 
Había hecho pruebas hace tiempo y lo dejé funcionando. Retomo el tema, hago la prueba con el mismo fichero con que lo dejé funcionando y el servidor me responde "Anulada la solicitud: No se puede crear un canal seguro SSL/TLS." Ni siquiera me deja conectarme. Verifico que se usa TLS 1.2, que el certificado con el que me conecto es el de la persona que en su día se pidió que registraran en Gipuzkoa... Todo correcto. Envío mensaje al servicio técnico para que me ayuden y, aunque no obtengo respuesta, lo intento nuevamente al día siguiente.

En este nuevo intento parece que ese problema se ha solucionado. Ahora sí que llega la factura, pero el servidor responde:

Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <FechaRecepcion>25-08-2021 09:12:27</FechaRecepcion>
        <Estado>01</Estado>
        <Descripcion>Rechazado</Descripcion>
        <Azalpena>Baztertua</Azalpena>
        <ResultadosValidacion>
            <Codigo>002</Codigo>
            <Descripcion>Error: El fichero de alta TicketBAI no cumple el esquema XSD. Detalle del error: cvc-complex-type.2.4.b: The content of element 'T:TicketBai' is not complete. One of '{"http://www.w3.org/2000/09/xmldsig#":Signature}' is expected.</Descripcion>
            <Azalpena>Errorea: TicketBAI altako fitxategiak ez du betetzen XSD eskema. Errorearen xehetasuna: cvc-complex-type.2.4.b: The content of element 'T:TicketBai' is not complete. One of '{"http://www.w3.org/2000/09/xmldsig#":Signature}' is expected.</Azalpena>
        </ResultadosValidacion>
    </Salida>
</ns2:TicketBaiResponse>

He de decir que antes de enviar la factura yo también he pasado una validación sobre el XSD (ticketBaiV1-2.xsd), así que tampoco le veo la lógica de la respuesta y nuevamente les paso un mensaje al servicio técnico. Pasan los días y no obtengo respuesta, pero sigo probando por si nuevamente hubiese algún cambio en el servidor sin que se informe. Acabo de hacer una nueva prueba y ahora el servidor responde:

Código:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:TicketBaiResponse xmlns:ns2="urn:ticketbai:emision">
    <Salida>
        <FechaRecepcion>28-08-2021 08:05:12</FechaRecepcion>
        <Estado>01</Estado>
        <Descripcion>Rechazado</Descripcion>
        <Azalpena>Baztertua</Azalpena>
        <ResultadosValidacion>
            <Codigo>001</Codigo>
            <Descripcion>Error: Certificado remitente incorrecto (revocado o no homologado).</Descripcion>
            <Azalpena>Errorea: Bidaltzailearen ziurtagiria okerra (errebokatua edo ez-homologatua).</Azalpena>
        </ResultadosValidacion>
    </Salida>
</ns2:TicketBaiResponse>

¿Os está pasando algo extraño también a vosotros? No entiendo nada. ¿Será que estamos en agosto y que el mantenimiento está bajo mínimos? Me agobia pensar que esto no parece estar funcionando bien y que, sin embargo, se mantengan los plazos. Si fuera mal pensado diría que nos están utilizando para depurar una versión beta y que nos empujan sin considerar la pérdida de tiempo que supone para nosotros hacer pruebas inútiles y buscar el origen del problema cien veces antes de molestar a nadie (porque incluso tener que molestar a alguien también es un esfuerzo...)

ermendalenda 28-08-2021 11:58:54

Gracias unomasmas

ermendalenda 29-08-2021 11:41:48

Buenos días.
Alguien con (algo) información de por dónde van a ir los tiros con las demás comunidades? Aunque sea por MP por favor.
Gracias os deberé un gran favor
Saludos.

Casimiro Noteví 29-08-2021 11:52:09

Cita:

Empezado por ermendalenda (Mensaje 542501)
Aunque sea por MP por favor.

Los foros sirven para compartir información, no para mantenerla en secreto :D

ermendalenda 29-08-2021 12:10:50

Llevas razón, lo siento
Alguien con algo de información (por muy pequeña que sea la pista) sobre cómo van a ir las facturas en la hacienda no foral. Por favor compartid es muy importante para los programadores para no hacer doble trabajo.
Saludos

ermendalenda 29-08-2021 12:20:16

Aquí os dejo parte de la respuesta(la única parte importante) , sobre la pregunta a hacienda de para cuando y como.
Cita:

... desde el 11 de octubre de 2021. Desde esa fecha y hasta la entrada en vigor del desarrollo reglamentario previsto,... Blabla

edari 30-08-2021 12:54:16

Cita:

Empezado por ermendalenda (Mensaje 542503)
Llevas razón, lo siento
Alguien con algo de información (por muy pequeña que sea la pista) sobre cómo van a ir las facturas en la hacienda no foral. Por favor compartid es muy importante para los programadores para no hacer doble trabajo.
Saludos




Es muy pronto para preguntar esto cuando todavía ni siquiera nosotros hemos empezado


Pero usando la intuición me imagino a la Hacienda Nacional muy curiosona en el proyecto de aquí y haciéndole el "culo pepsi cola" por ponerlo ellos cuánto antes. No es golosa la cosa ni nada.



¿Los ficheros? Ten claro que serán tan parecidos como diferentes :D ...si ni siquiera aquí nos hemos puesto de acuerdo 3 provincias en hacerlo igual no pensarás que la nacional va a "tragar" con algo creado por otros...


Pondrá sus propias mierdas y los programadores que atendemos en toda España nos obligarán a trabajar por triplicado o cuatriplicado. :(

cbombin 30-08-2021 13:07:19

Cita:

Empezado por unomasmas (Mensaje 542487)
En breve: Sí
Confirmación: Sí, puedes (debes) crear tu fichero XML, generar el código QR, entregar la factura a tu cliente y después, cuando sea posible la conexión, enviarla.

y como se puede generar el código QR si se necesita el identificador que devuelve hacienda (el que empieza por TBAI-xxxx)?

Eric Mtz 30-08-2021 13:27:48

Cita:

Empezado por cbombin (Mensaje 542510)
y como se puede generar el código QR si se necesita el identificador que devuelve hacienda (el que empieza por TBAI-xxxx)?

Hola cbombin, te aclaro yo la duda.
Ese código es completamente calculable, consta de un total de 39 caracteres que te especifican en el apartado 4.3.2 de la documentación oficial:
https://www.euskadi.eus/contenidos/i...ones_v_1_1.pdf

Por lo tanto, lo puedes generar sin la necesidad de una respuesta por parte de hacienda, de hecho, en BATUZ no queda otra ya que las facturas que emitas no serán enviadas hasta finalizar el trimestre.

Pd: Para que no caiga en el olvido, hace unas páginas publicamos el cálculo CRC-8 en mogollón de lenguajes distintos, creo recordar que en C#, vb, python y php, rebusca un poco en el foro y lo encontrarás.

Un saludo y buen inicio de semana.

ermendalenda 30-08-2021 14:09:47

Eso sí. Para calcular el qr no se necesita conexión. Lo principal para este código es una parte de la firma del XML que se hace (se puede hacer) offline.

iMia 30-08-2021 15:44:30

Cita:

Empezado por Eric Mtz (Mensaje 542512)
Hola cbombin, te aclaro yo la duda.

...

Pd: Para que no caiga en el olvido, hace unas páginas publicamos el cálculo CRC-8 en mogollón de lenguajes distintos, creo recordar que en C#, vb, python y php, rebusca un poco en el foro y lo encontrarás.

Un saludo y buen inicio de semana.

No hace falta rebuscar. El primer post del hilo es un post magnifico y que le debe dar mucho curro mantenerlo a German, con los enlaces a los posts más importantes. Ahí está todo lo necesario y muy bien ordenado y especificado...
saludos...

Ramon88 30-08-2021 17:48:24

Error subiendo fichero
 
Hola!

Estoy intentando subir el xml y siempre me da el error No se puede crear un canal seguro SSL/TLS.
He probado con HttpClient y con HttpWebRequest y el error siempre es el mismo, si quito la parte donde añado el certificado, no da error pero en el mensaje devuelto, me dice que me falta el certificado... por lo que no se si es cosa del certificado o que puede ser, me estoy volviendo loco ya...

Este es el código que estoy usando:


ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12


Dim handler As System.Net.Http.HttpClientHandler = New System.Net.Http.HttpClientHandler()
Dim certificate As X509Certificate2 = New X509Certificate2("E:\Ramon\Programacion\Factura_TBai\Firma.pfx", "0000")
handler.ClientCertificates.Add(certificate)

Dim http As HttpClient = New HttpClient(handler)

Dim oString As StringContent = New StringContent(XML.ToString(), Encoding.UTF8, "application/xml")

Dim response As HttpResponseMessage = http.PostAsync(URL_Pruebas, oString).Result
Dim res As String = response.Content.ReadAsStringAsync.Result

ermendalenda 30-08-2021 19:25:40

Comprueba fecha y hora del equipo que no tenga mucha diferencia con la fecha hora real.
Prueba los envíos con Curl, para descartar otros problemas del equipo.

unomasmas 30-08-2021 22:52:13

Cita:

Empezado por cbombin (Mensaje 542510)
y como se puede generar el código QR si se necesita el identificador que devuelve hacienda (el que empieza por TBAI-xxxx)?

Esta dato no lo genera Hacienda, sino que se genera a partir de datos de la firma y de la propia factura. Así es como lo tengo yo (C#):

Código:

                result = "TBAI" + separador;
                result += nif + separador;
                result += fechaExpedicion + separador;
                result += signatureValue + separador;
                result += GetCrc8(result);


unomasmas 30-08-2021 22:57:56

Cita:

Empezado por Ramon88 (Mensaje 542520)
Hola!

Estoy intentando subir el xml y siempre me da el error No se puede crear un canal seguro SSL/TLS.
He probado con HttpClient y con HttpWebRequest y el error siempre es el mismo, si quito la parte donde añado el certificado, no da error pero en el mensaje devuelto, me dice que me falta el certificado... por lo que no se si es cosa del certificado o que puede ser, me estoy volviendo loco ya...

Este es el código que estoy usando:


ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12


Dim handler As System.Net.Http.HttpClientHandler = New System.Net.Http.HttpClientHandler()
Dim certificate As X509Certificate2 = New X509Certificate2("E:\Ramon\Programacion\Factura_TBai\Firma.pfx", "0000")
handler.ClientCertificates.Add(certificate)

Dim http As HttpClient = New HttpClient(handler)

Dim oString As StringContent = New StringContent(XML.ToString(), Encoding.UTF8, "application/xml")

Dim response As HttpResponseMessage = http.PostAsync(URL_Pruebas, oString).Result
Dim res As String = response.Content.ReadAsStringAsync.Result

Aemás de usar el protocolo TLS 1.2 (que veo que ya lo haces), creo que debes asegurarte de que el emisor en el documento (factura) que envías debe ser el mismo que firma la petición y, por otra parte, debe estar registrada en la base de datos de pruebas... Yo también estoy teniendo este problema. Es posible que sea un problema de ellos porque hace tiempo pude enviarlo con los mismos datos y ahora no me deja ?? He abierto una consulta con el servicio técnico pero todavía no tengo respuesta :-(

b4aronDeLaBirr4 31-08-2021 09:09:39

Cita:

Empezado por Eric Mtz (Mensaje 542452)
¡Muy buenas a todos!, ya estoy de vuelta de las vacatas, ¿Cómo andáis?

Bueno, entrado en materia hoy tengo una duda mas bien teórica, me gustaría saber vuestra opinión y creo que puede ser interesante para todos. (Atención se viene parrafada, pero en su mayoría son ejemplos así que no asustarse.)

El caso es el siguiente, quería tratar las respuestas de hacienda para que el usuario de turno pudiera leer algo MUCHO mas simple y legible, incluso un "Recibido" mi intención era transformarlo a "La factura ha sido enviada satisfactoriamente.", "Ha salido todo a pedir de Milhouse." o "Todo ha chuscado bien."... ya sabéis filosofía "Don't make me think" y esas cosas.

El tema es que con BATUZ todo perfecto, te responden algo como:


De hecho tenemos un pdf de 143 páginas con todas las posibles respuestas y sus respectivos códigos:
https://www.batuz.eus/fitxategiak/ba...b1d893b1006da9


Mi problema surge con Gipuzkoa, donde te devuelven algo como esto:


Y me diréis: Pos de puta madre, te han detallado el error, ¿Cuál es tu maldito problema Ericete?.
Pues muy simple, todos los errores de Gipuzkoa te devuelven el código 002, es decir, ese código sirve para identificar que en la respuesta hay algo incorrecto, pero no tenemos un código específico de cada error.

De pronto cobra sentido que el pdf con los errores de Gipuzkoa tenga tan solo 13 páginas:
https://www.gipuzkoa.eus/documents/2...9-3eb70c68034a

Esto rompe mi plan de pasar la respuesta por un switch donde filtrar los errores mas confusos en base a su código... a no ser que utilice como identificador el propio texto del error... aunque lo veo difícil ya que el ejemplo que os acorté antes tiene 1178 caracteres.

Perdonad, edito porque se me ha olvidado formular la pregunta... si... mmm... mejor ni lo mencionéis... serán efectos secundarios de los microchis de la vacuna.
¿Hacéis algún filtro para tratar los errores?, ¿Si es así cómo lo hacéis?, ¿Os ha supuesto algún problema Gipuzkoa?

Pues ya está, creo que os he expuesto mi tesitura con claridad, puede que se me esté escapando algo y si ese es el caso no dudéis en corregirme, pero lo cierto es que me ha descolocado, un saludo a todos y ánimo que ya queda menos.

Bienvenido de nuevo a las trincheras!

Justamente estaba analizando ese escenario y me iba a poner a clasificarlos en cuanto a su naturaleza (código). En la página 10 del pdf de las especificaciones del servicio REST de Gipuzkoa disponemos de 6 errores y 8 avisos. Mi intención era seguir esa misma estructura. Primero: Mandar una petición vacía para ver si el servicio se encuentra en funcionamiento y segundo: Recuperar la respuesta y ver si ha sido aceptada (mirar los avisos ya que puede ser que exista alguno) o rechazada (los errores y los avisos, aunque estos últimos no serían la causa directa del rechazo, se supone).


La franja horaria es GMT +2. Ahora son las 07:03:50.

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