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)

Band 08-06-2021 17:28:30

Cita:

Empezado por Band (Mensaje 541252)
Hola keys, gracias por la respuesta.
Mi problema es que no puedo usar el Txmldocument de momento :(
No sé si es problema del Msxml2.DOMDocument.6.0, porque así
Código Delphi [-]
Documento.DocumentElement.ChildNodes[4].ChildNodes[1].Text;
tampoco consigo referenciarlo.

Seguiré investigando.


Me autocontesto por si alguien tenía el mismo problema.

Al final tenía un pequeño lío con los namespaces y como lo trata microsoft. Lo correcto es así:

Código Delphi [-]
docXML := CreateOleObject('Msxml2.DOMDocument.6.0');

ns := 'xmlns:T=''urn:ticketbai:emision''';
        
docXML.Load(path+'\'+fichero);
         
docXML.setProperty('SelectionNamespaces', ns);
          
NodeList := docXML.selectNodes('T:TicketBai/*'); 

firma := NodeList.item(4).childNodes[1].text; // (4) = ds:Signature / [1] = ds:SignatureValue

keys 09-06-2021 08:02:49

Cita:

Empezado por skymota (Mensaje 541257)
Buenas, tengo los xml firmados y su generación integrada en el software, asi que me he puesto con el envío, pero primer problema, el hacer la petición post con el certificado...
Utilizo Delphi y con el TIdHTTP como utilizo con todas las conexiones externas del software, lo que consigo aunque le meta el componente SSLIOHandler con el certificado, es que cuando me hace la petición POST, se me abre la ventana de los certificados de windows, no me coge el certificado que le estoy incluyendo.

¿Alguien ha tenido este problema? Sabeis como forzar para que pille el certificado del IOHandler?

Gracias!!

Hola.

Con TIdHTTP creo que no se puede hacer lo de gestionar los certificados. En los ejemplos que encontraras en el foro está hecho con TNetHTTPClient.

keys 09-06-2021 08:06:14

Cita:

Empezado por tejano (Mensaje 541255)
Hola, sabéis si una vez enviado el dato de la factura a la hacienda, ya se puede escanear el código QR, o es que estando en pruebas no es posible.

Gracias

Por otra parte, daros las gracias a todos. Hace un par de meses no habría sido capaz de hacer nada y parece que ya he podido enviar mi primera factura correcta.

GRACIASSSSSSSSS, de verdad.

Hola.

El codigo QR se puede escanear la factura según se envia. En gipuzkoa si no esta enviada da error, ya que el envío se realiza en el momento de hacer la factura, tanto en el entorno real como en el de pruebas. Y en Bizkaia siempre te muestra la información este o no enviada, y te indica que no esta enviada.

Galaxian 09-06-2021 10:09:02

Sobre los epígrafes del LROE 140
 
Estoy en la última fase de pruebas con batuz y me he topado con los epígrafes del LROE 140 (apartado Renta), en el que hay que asignar a cada epígrafe la base imponible correspondiente a su actividad o, lo que es lo mismo, separar la factura en actividades. ¡Toma ya!

Obviamente el problema no es de programación sino de usuario ¿alguien en su sano juicio (es decir, que no sea cerebro pensante de la administración) cree que un autónomo que tenga un negocio con varias actividades va a conocer, artículo por artículo, a que actividad hay que asignarlo?

Y aunque el gestor (si es que lo tiene) pudiera hacerlo la primera vez ¿qué ocurre con los artículos nuevos? ¿se va a estar incordiando al gestor con cada artículo?. ¿Alguien adivina a quién van a llamar si no tiene gestor o este le dice que se busque la vida?

Me da que eso va a ser una inmensa fuente de errores (y sanciones). ¿Adivináis a quién van a culpar si algo sale mal? Pues eso.

Como diría Obelix: Están locos estos romanos.

skymota 09-06-2021 11:01:54

Cita:

Empezado por keys (Mensaje 541264)
Hola.

Con TIdHTTP creo que no se puede hacer lo de gestionar los certificados. En los ejemplos que encontraras en el foro está hecho con TNetHTTPClient.

Gracias! efectivamente no se puede con TidHTTP

Error mío pq utilicé la librería Chilkat para la firma y no se me ocurrió utilizarla para esto y con esta si que se puede, además de que está documentado y es sencillísimo

Dejo un ejemplo por si le sirve a alguien:

Código:

       
        CkHttp http;
        bool success = http.SetSslClientCertPfx(CERTIFICADO, CONTRASEÑA);
        if (success != true)
        {
                ...               
        }

        CkStringBuilder sbXml;
        success = sbXml.LoadFile(FICHERO XML TBAI FIRMADO, "utf-8");
        if (success != true)
        {
                ...
        }

        const char *strXml = sbXml.asString();

        http.SetRequestHeader("Content-Type", "application/xml");
        http.SetRequestHeader("Content-Encoding", "utf-8");

        const char *strURL = ((AnsiString)usURL).c_str();
        CkHttpResponse *resp = http.PostXml(strURL, strXml, "utf-8");
        if (http.get_LastMethodSuccess() != true)
        {
                ...
        }


jaiser 10-06-2021 08:40:33

A mi me da error al probar el qr en la web de pruebas de guipuzkoa. ¿Podeis poner algúno la web qr de pruebas de guipuzkoa? Es asi:
h t t p s://tbai-prep.egoitza.gipuzkoa.eus/qr/?id=TBAI-44619360G-261020-EzyQEMtxw37Gm-161&s=TB-2020-F&nf=419&i=1542.75&cr=182


Cita:

Empezado por keys (Mensaje 541265)
Hola.

El codigo QR se puede escanear la factura según se envia. En gipuzkoa si no esta enviada da error, ya que el envío se realiza en el momento de hacer la factura, tanto en el entorno real como en el de pruebas. Y en Bizkaia siempre te muestra la información este o no enviada, y te indica que no esta enviada.


Eric Mtz 10-06-2021 09:13:24

Muy buenos días a todos, tengo un dilema que requiere de más puntos de vista.
Os pongo al día, últimamente ando gestionando las respuestas de las altas y estoy notando que Gipuzkoa es mucho más estricto que Bizkaia.
Es decir, en cuando a estructura y contenido ambos son similares, advierten de las mismas cosas y no dudan en rechazarlas si fuera necesario, sin embargo, ayer tuve la ocurrencia de enviar 3 facturas a Bizkaia y eliminar la segunda, esto según mi cabeza debería de causar algún conflicto pero no es así, me devuelve un correcto en la factura 1 y 3 como si no encontrase ningún error, cuando es EVIDENTE que la factura 3 apunta a una factura 2 inexistente y que la primera factura no está referenciada por ninguna otra. (Y sí, las mando todas en el mismo envío).

¿Qué se supone que sucede?, mis teorías son las siguientes:
1. Mi teoría más lógica es que el TBAI de Bizkaia es menos estricto por la cantidad de facturas que tiene que almacenar por cada envío... si le enviases miles de facturas y protestase por cada error de encadenamiento quizás no les salga a cuenta.
2. Mi segunda teoría es que no estoy tratando bien la respuesta???, yo diría que no, es decir, recibo sus errores cuando se trata de otros campos y de hecho los serializo correctamente a la clase respuesta, no se... a estas alturas el TBAI me hace dudar de mi propia existencia.
3. Siguiendo con la especulación, podría ser que el entorno de pruebas sea mas permisivo que el servidor final, siendo sinceros hasta que logramos realizar envíos correctos mandamos mucha basura inútil, tendría sentido que se saltasen algunas revisiones, aunque enviar en el mismo "pack" tres facturas mal encadenadas y que no diga nada tiene tela...
4. Por último mi teoría favorita, todo el TBAI es una farsa, al otro lado tan solo hay un mono aporreando un teclado para determinar si el envío está bien y acabo de romper el mátrix.

En fin, ¿Alguien me puede arrojar un poco de luz sobre todo este asunto?, gracias de antemano.

Neftali [Germán.Estévez] 10-06-2021 09:51:11

Cita:

Empezado por jaiser (Mensaje 541273)
A mi me da error al probar el qr en la web de pruebas de guipuzkoa. ¿Podeis poner algúno la web qr de pruebas de guipuzkoa? Es asi:
h t t p s://tbai-prep.egoitza.gipuzkoa.eus/qr/?id=TBAI-44619360G-261020-EzyQEMtxw37Gm-161&s=TB-2020-F&nf=419&i=1542.75&cr=182


Creo que la Base para la URL es esta: https://tbai.prep.gipuzkoa.eus/qr/

MikusMikae 10-06-2021 11:15:32

Errror de envio a Gipuzkoa
 
Hola,

Soy nuevo en el foro, gracias de antemano por la ayuda encontrada en este foro para el desarrollo de la adaptación de Ticket Bai. Impagable.

Tengo el desarrollo avanzado, genero el xml, lo firmo (chilkat), envio el fichero (A Gipuzkoa en este caso), pero me devuelve el siguiente error y no se verlo.

Error: El fichero de alta TicketBAI no cumple el esquema XSD. Detalle del error: cvc-complex-type.2.4.a: Invalid content was found starting with element 'ds:Signature'.
One of '{"http://www.w3.org/2000/09/xmldsig#":Signature}' is expected.

En el fichero xml la firma empieza y finaliza de este modo:

Cita:

</HuellaTBAI>
<ds:Signature xmlns:ds="h t t p:w w w.w3.org/2000/09/xmldsig#" Id="Signature-63c35f38-2b5f-4600-b3da-3ddee86d62b3-Signature">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="h t t p://w w w.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<ds:SignatureMethod Algorithm="h t t p://w w w.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
.....
.....
</xades:QualifyingProperties>
</ds:Object>
</ds:Signature>
</T:TicketBai>
¿Qué puede ser?

Gracias.

Neftali [Germán.Estévez] 10-06-2021 15:12:14

1 Archivos Adjunto(s)
Cita:

Empezado por MikusMikae (Mensaje 541276)
Soy nuevo en el foro, gracias de antemano por la ayuda encontrada en este foro para el desarrollo de la adaptación de Ticket Bai. Impagable.

Bienvenido al foro.

Cita:

Empezado por MikusMikae (Mensaje 541276)
Error: El fichero de alta TicketBAI no cumple el esquema XSD. Detalle del error: cvc-complex-type.2.4.a: Invalid content was found starting with element 'ds:Signature'.
One of '{"http://www.w3.org/2000/09/xmldsig#":Signature}' is expected.

Segun el error parece que el problema que está en el XML/ds:Signature.
Te adjunto un par de ejemplos que se pueden descargar.
Revísalos y compara la estructura con el que estás generando, a ver qué diferencias ves.

jaiser 10-06-2021 15:41:27

Cita:

Empezado por MikusMikae (Mensaje 541276)
Hola,

Soy nuevo en el foro, gracias de antemano por la ayuda encontrada en este foro para el desarrollo de la adaptación de Ticket Bai. Impagable.

Tengo el desarrollo avanzado, genero el xml, lo firmo (chilkat), envio el fichero (A Gipuzkoa en este caso), pero me devuelve el siguiente error y no se verlo.

Error: El fichero de alta TicketBAI no cumple el esquema XSD. Detalle del error: cvc-complex-type.2.4.a: Invalid content was found starting with element 'ds:Signature'.

En el fichero xml la firma empieza y finaliza de este modo:



¿Qué puede ser?

Gracias.

No se si habrás copiado el ejemplo del chilkat, si es asi prueba a cambiar al hacer la llamada para firmar "T:TicketBai" por "TicketBai". Quita el "T:"

jaiser 10-06-2021 15:41:57

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 541275)
Creo que la Base para la URL es esta: h t tp s ://tbai.prep.gipuzkoa.eus/qr/

Muchas gracias

MikusMikae 11-06-2021 10:37:52

Cita:

Empezado por jaiser (Mensaje 541278)
No se si habrás copiado el ejemplo del chilkat, si es asi prueba a cambiar al hacer la llamada para firmar "T:TicketBai" por "TicketBai". Quita el "T:"

Si le quito la 'T:', Chilkat devuelve error , no sabe donde ubicar la firma.
Doing first SAX parse...
The location of where to insert the Signature was not found.
Failed.

He enviado un correo a soporte de Gipuzkoa, a ver que comentan.

Maska10 11-06-2021 11:51:30

Buenos días compañeros, llevo años sin pasar por aquí y con esto del Ticket Bai pues nos toca.

Mira que llevo semanas respasando todo el hilo + la documentación de las distintas haciendas, tengo bastante claros los procesos excepto una parte (o bien soy muy tonto o bien por mucho que lo lea no lo capto) .. tengo claro que:

1 - Genero el fichero XML
2 - Lo firmo
3 - Genero TBAI y QR ?¿?¿?¿?¿
4 - Lo envío

Guay, como veis mi duda está en el punto 3:

- ¿que carajo significa genero el TBAI? he visto códigos con un TBAI-ID que no se de donde sale y en base a que se genera
- ¿que datos contiene el QR, a donde apunta? entiendo que en base al TBAI-ID pero claro, hasta que no me aclare con el punto anterior no puedo entender este.

Disculpad si son preguntas tontas pero en serio que me he leido 3 veces ya todos los mensajes.

FranAza 11-06-2021 11:58:53

Cita:

Empezado por MikusMikae (Mensaje 541276)
Hola,

Soy nuevo en el foro, gracias de antemano por la ayuda encontrada en este foro para el desarrollo de la adaptación de Ticket Bai. Impagable.

Tengo el desarrollo avanzado, genero el xml, lo firmo (chilkat), envio el fichero (A Gipuzkoa en este caso), pero me devuelve el siguiente error y no se verlo.

Error: El fichero de alta TicketBAI no cumple el esquema XSD. Detalle del error: cvc-complex-type.2.4.a: Invalid content was found starting with element 'ds:Signature'.
One of '{"http://www.w3.org/2000/09/xmldsig#":Signature}' is expected.

En el fichero xml la firma empieza y finaliza de este modo:



¿Qué puede ser?

Gracias.

Buenas,

Según tu xml, es posible que te falte poner // en la línea:

<ds:Signature xmlns:ds="h t t p:w w w.w3.org/2000/09/xmldsig#" Id="Signature-63c35f38-2b5f-4600-b3da-3ddee86d62b3-Signature">

Justo después de h t t p:

Saludos

MikusMikae 11-06-2021 12:08:24

Cita:

Empezado por FranAza (Mensaje 541288)
Buenas,

Según tu xml, es posible que te falte poner // en la línea:

<ds:Signature xmlns:ds="h t t p:w w w.w3.org/2000/09/xmldsig#" Id="Signature-63c35f38-2b5f-4600-b3da-3ddee86d62b3-Signature">

Justo después de h t t p:

Saludos




Era eso. Que vista.

Muchas gracias.

HerensugeBeltz 11-06-2021 12:55:56

Cita:

Empezado por Maska10 (Mensaje 541287)
Buenos días compañeros, llevo años sin pasar por aquí y con esto del Ticket Bai pues nos toca.

Mira que llevo semanas respasando todo el hilo + la documentación de las distintas haciendas, tengo bastante claros los procesos excepto una parte (o bien soy muy tonto o bien por mucho que lo lea no lo capto) .. tengo claro que:

1 - Genero el fichero XML
2 - Lo firmo
3 - Genero TBAI y QR ?¿?¿?¿?¿
4 - Lo envío

Guay, como veis mi duda está en el punto 3:

- ¿que carajo significa genero el TBAI? he visto códigos con un TBAI-ID que no se de donde sale y en base a que se genera
- ¿que datos contiene el QR, a donde apunta? entiendo que en base al TBAI-ID pero claro, hasta que no me aclare con el punto anterior no puedo entender este.

Disculpad si son preguntas tontas pero en serio que me he leido 3 veces ya todos los mensajes.

Esos procesos se definen en el PDF titulado 'Especificaciones funcionales y técnicas del sistema TicketBAI', disponible en la documentación técnica de las distintas Hacienda Forales.
Concretamente:
- Punto 4.3.2. Identificativo TBAI, donde explica cómo generarlo.
- Punto 4.3.3. QR TBAI. Explica el contenido del código QR.

Ánimo!

Maska10 11-06-2021 15:17:33

Cita:

Empezado por HerensugeBeltz (Mensaje 541290)
Esos procesos se definen en el PDF titulado 'Especificaciones funcionales y técnicas del sistema TicketBAI', disponible en la documentación técnica de las distintas Hacienda Forales.
Concretamente:
- Punto 4.3.2. Identificativo TBAI, donde explica cómo generarlo.
- Punto 4.3.3. QR TBAI. Explica el contenido del código QR.

Ánimo!

Muchas gracias, ya lo tengo.

Eric Mtz 14-06-2021 10:52:10

Ayuda
 
Buenos días, tengo una pequeña duda con respecto a las pruebas de anulación de Gipuzkoa.

El caso es que hasta ahora he rellenado los campos de "software de facturación" con datos falsos, y quitando un simple aviso de "El software no está registrado" no tenía problemas ya que igualmente almacenaban la factura.

Sin embargo al realizar el envío de una anulación a Gipuzkoa recibo lo siguiente: "Error: Falta dato obligatorio o el dato es erróneo [LicenciaTBAI]</". El contenido de ese campo ya os adelanto que es "TBAIPRUEBA", es decir, el mismo texto de prueba del ejemplo oficial que nos ofrece BATUZ.

¿Habéis tenido algún problema similar?, ¿tengo que registrar el software para poder realizar estas pruebas?

Neftali [Germán.Estévez] 14-06-2021 12:06:05

Cita:

Empezado por Eric Mtz (Mensaje 541313)
¿Habéis tenido algún problema similar?, ¿tengo que registrar el software para poder realizar estas pruebas?

Aquí:
https://www.gipuzkoa.eus/es/web/ogas...stado-software

Puedes encontrar esto:
Entidades desarrolladoras: si desea registrar su software para TicketBAI acceda a la aplicación de Registro de Software TicketBAI.

https://egoitza.gipuzkoa.eus/WAS/COR...HTBSW&idioma=C

También puedes revisar aquí para Bizkaia:
https://www.ebizkaia.eus/es/catalogo...os?procID=1660


La franja horaria es GMT +2. Ahora son las 07:32:46.

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