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)

josepmestre 30-06-2021 10:12:47

CURL para Gipuzkoa
 
Buenos días a todos,


¿alguien ha usado el programa CURL desde linea de comandos para enviar las facturas a Gipuzkoa ?


Si fuera así, ¿ podría poner un ejemplo del mismo ?


Gracias

JoseLeeTo 30-06-2021 11:05:03

Buenos días
 
Hola a todos.

Llevo ya un tiempo con el tema de Batuz, y creía estar volviéndome loco yo solo hasta que he encontrado este foro y he visto que somos muchos así. :D
Qué locura.

He desarrollado todo el sistema de TBai y de LROE para Vizcaya (ya hice los mismo desde el 2015 para la aplicación BILA), y hasta ahora solamente están disponibles las operaciones con Ingresos y Gastos, Bienes de Inversión y Agrupaciones de Bienes. El resto de epígrafes (Cobros, Pagos, RECC...) no están todavía expuestos)

En Guipuzcoa, estoy teniendo un problema que no se me ha dado en Vizcaya.

El error que me está dando es que no puede validar las referencias URI de la firma:
Básicamente: "El mensaje ha sido modificado en tránsito o la firma no está bien realizada -- Reference URI="#Certificate1" failed to verify. Reference URI="#SignedProperties-1909873269" failed to verify"

Y es que no entiendo cómo pueden tener diferentes criterios de validación de firma. En Vizcaya la misma firma es válida, pero no en Guipuzcoa.

¿A alguien más le ha ocurrido, y puede echarme una mano a qué puede ser debido?

Gracias a todos.
Saludos.

josepmestre 30-06-2021 11:38:27

A mí me daba un error similar, <Descripcion>El mensaje ha sido modificado en tránsito o la firma no está bien realizada -- Reference URI="#Signature-d4d0ea3e-5409-4a0a-b5dd-f7c339abd340-SignedProperties" failed to verify. [src/xml2signatureobj.cpp(315)] - (10606)</Descripcion>, y es debido a que el valor CN del campo de firma IssuerName contiene un acento. Poniendo otro certificado funciono correctamente.


Envié un mensaje a la hacienda de Gipuzkoa y no me han respondido.








Cita:

Empezado por JoseLeeTo (Mensaje 541527)

En Guipuzcoa, estoy teniendo un problema que no se me ha dado en Vizcaya.

El error que me está dando es que no puede validar las referencias URI de la firma:
Básicamente: "El mensaje ha sido modificado en tránsito o la firma no está bien realizada -- Reference URI="#Certificate1" failed to verify. Reference URI="#SignedProperties-1909873269" failed to verify"

Y es que no entiendo cómo pueden tener diferentes criterios de validación de firma. En Vizcaya la misma firma es válida, pero no en Guipuzcoa.


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

Cita:

Empezado por josepmestre (Mensaje 541525)
Buenos días a todos,
¿alguien ha usado el programa CURL desde linea de comandos para enviar las facturas a Gipuzkoa ?
Si fuera así, ¿ podría poner un ejemplo del mismo ?


Revisa páginas anteriores del foro, hay más usuarios que lo han usado y han puesto ejemplos.


Aquí tienes algunos, aunque hay más...


* Opción4: Utilizando commandos CURL
(https://www.clubdelphi.com/foros/sho...215&postcount=769)
(https://www.clubdelphi.com/foros/sho...215&postcount=737)
(https://www.clubdelphi.com/foros/sho...215&postcount=746)

Neftali [Germán.Estévez] 30-06-2021 12:22:13

Cita:

Empezado por JoseLeeTo (Mensaje 541527)
"El mensaje ha sido modificado en tránsito o la firma no está bien realizada


Busca en páginas anteriores, ya ha salido ese mensaje.
En nuestro caso estaba generado:
a) Por una mala codificación del fichero ANSI/UTF8 entre la firma y el envío
b) Por caracteres extraños en el fichero (ÑÁÉ,...)

También me suenan problemas con alguna de las firmas, relacionados con esto que está en la documentación. Revisa que lo tienes correcto:

Cita:

3. 5. Reglas de uso de algoritmos
Se podrán utilizar cualquiera de los algoritmos basados en RSA admitidos en ETSI TS 119 312 V1.3.1.
Como mínimo se exige:
Tamaño de la clave será estrictamente superior a 1024.
SHA256 o versiones superiores.

josepmestre 30-06-2021 12:26:30

Gracias Germán,

ya había visto este hilo pero son de Bizkaia.

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 541530)
Revisa páginas anteriores del foro, hay más usuarios que lo han usado y han puesto ejemplos.


JoseLeeTo 30-06-2021 12:50:04

Gracias.

Lo que me extraña, es que en Vizcaya vaya OK, pero en Guipuzcoa no pase ni uno debido a este error.
Tengo la sensación de que es problema suyo (de Guipuzcoa).
Hace 2 días, corrigieron un problema con la TSA que les mencioné, su respuesta básicamente fué que si fallaba, pues que como "no era obligatoria, que no la utilizase". Al final, me reconocieron que tenian un error de configuración en su servidor.

Un poco caótico todo.

JVelezGarcia 30-06-2021 13:11:41

Hola, después de encontrar ayuda en páginas anteriores, he probado este código usando curl en líneas de comandos y se envía correctamente :

curl -H "Accept-Encoding: gzip" -H "Content-Encoding: gzip" -H "Content-Type: application/octet-stream" -H "eus-bizkaia-n3-version: 1.0" -H "eus-bizkaia-n3-content-type: application/xml" -H "eus-bizkaia-n3-data: {\"con\": \"LROE\",\"apa\": \"1.1\",\"inte\": {\"nif\": \"NIF\",\"nrs\": \"NOMBRE\"},\"drs\": {\"mode\": \"240\",\"ejer\": \"2021\"}}" --data-binary @FICHERO.gz --cert CERTIFICADO.pem --key CERTIFICADO-KEY.pem -v URL_SERVIDOR_PRUEBA --output RESP_240.gz -D cabecera.txt

Band 30-06-2021 17:57:03

Cita:

Empezado por josepmestre (Mensaje 541532)
Gracias Germán,

ya había visto este hilo pero son de Bizkaia.


Yo lo hago así para Guipuzkoa:

Aquí están los parámetros del curl

Código Delphi [-]
curlCommand := '--data-binary "@' + path_fichero + '\' + nombre_fichero + '" ' +
    ' --cert-type P12 --cert sello_entidad_act.p12:IZDesa2021 ' +  // sello pruebas izenpe
    ' -D "' + PATH_CURL + '\header-dump.txt" ' + // captura del header, aunque no hace falta
    ' -H "Content-Type: application/xml;charset=UTF-8" ' +  
    ' -H "Accept-Encoding: ''gzip''" ' +
    ' -H "Content-Encoding: ''gzip''" ' +
    ' -X POST ' + url;

Ejecución del curl

Código Delphi [-]
 
  ShellExecute(
    'open',
    'cmd',
    '/v:1 /c curl.exe ' + curlCommand +                                 
    ' > "' + pathRespuesta + '"', // guardo la respuesta en fichero para comprobar
    PATH_CURL,
    0
  );

Espero que sea de ayuda

JoseLeeTo 01-07-2021 11:18:45

Cita:

Empezado por JoseLeeTo (Mensaje 541527)
Hola a todos.

Llevo ya un tiempo con el tema de Batuz, y creía estar volviéndome loco yo solo hasta que he encontrado este foro y he visto que somos muchos así. :D
Qué locura.

He desarrollado todo el sistema de TBai y de LROE para Vizcaya (ya hice los mismo desde el 2015 para la aplicación BILA), y hasta ahora solamente están disponibles las operaciones con Ingresos y Gastos, Bienes de Inversión y Agrupaciones de Bienes. El resto de epígrafes (Cobros, Pagos, RECC...) no están todavía expuestos)

En Guipuzcoa, estoy teniendo un problema que no se me ha dado en Vizcaya.

El error que me está dando es que no puede validar las referencias URI de la firma:
Básicamente: "El mensaje ha sido modificado en tránsito o la firma no está bien realizada -- Reference URI="#Certificate1" failed to verify. Reference URI="#SignedProperties-1909873269" failed to verify"

Y es que no entiendo cómo pueden tener diferentes criterios de validación de firma. En Vizcaya la misma firma es válida, pero no en Guipuzcoa.

¿A alguien más le ha ocurrido, y puede echarme una mano a qué puede ser debido?

Gracias a todos.
Saludos.


Solucionado.

Trabajo con C#, pero en Delphi entiendo que se puede hacer perfectamente. Efectivamente, tenía que ver con el Charset.

La solución ha sido en añadir en la petición la cabecera : "Content-Type" , "application/xml; charset=utf-8". Por si a alguno le sirve: sería algo así: contenido.Headers.TryAddWithoutValidation("Content-Type" , "application/xml; charset=utf-8";


Espero sirva.
Saludos.

josepmestre 01-07-2021 15:52:20

Cita:

Empezado por Band (Mensaje 541539)
Yo lo hago así para Guipuzkoa:

Aquí están los parámetros del curl

Código Delphi [-]curlCommand := '--data-binary "@' + path_fichero + '\' + nombre_fichero + '" ' + ' --cert-type P12 --cert sello_entidad_act.p12:IZDesa2021 ' + // sello pruebas izenpe ' -D "' + PATH_CURL + '\header-dump.txt" ' + // captura del header, aunque no hace falta ' -H "Content-Type: application/xml;charset=UTF-8" ' + ' -H "Accept-Encoding: ''gzip''" ' + ' -H "Content-Encoding: ''gzip''" ' + ' -X POST ' + url;

Espero que sea de ayuda


Gracias por contestar.

JoseLeeTo 02-07-2021 09:26:17

Posible error de Encadenamiento
 
Buenos días;

Solamente en Guipuzcoa, estoy obteniendo continuamente el aviso: "010 - Posible Error de Encadenamiento". El caso es que la factura la informa como Recibida, aunque me devuelve dicho aviso. En Vizcaya, de nuevo, no obtengo aviso de error de ningún tipo.
Solo en Guipuzcoa.

He revisado el nodo del encadenamiento de la Factura anterior, y a mi parecer, es correcta. ¿A alguien más le ha pasado, o pudiera ser un error de Guipuzcoa al validar dicho dato?

Si no entendí mal, al igual que en Vizcaya, hay que meter en el nodo <SignatureValueFirmaFacturaAnterior> de la nueva factura, los 100 primeros caracteres de la firma de la factura anteriormente emitida.
Por el resto, informar la Serie, Número de Factura y Fecha de Expedición en el formato que se especifica.

A priori concuerdan los datos que estoy informando en esos nodos, pero quisiera preguntar por si acaso fuese algún error de Guipuzcoa a la hora de validarlos, ya que como digo en Vizcaya no hay problema, o tengo que seguir mirando por si algo se me hubiese escapado.

Muchas gracias.
Un saludo.

keys 02-07-2021 09:43:57

Cita:

Empezado por JoseLeeTo (Mensaje 541548)
Buenos días;

Solamente en Guipuzcoa, estoy obteniendo continuamente el aviso: "010 - Posible Error de Encadenamiento". El caso es que la factura la informa como Recibida, aunque me devuelve dicho aviso. En Vizcaya, de nuevo, no obtengo aviso de error de ningún tipo.
Solo en Guipuzcoa.

He revisado el nodo del encadenamiento de la Factura anterior, y a mi parecer, es correcta. ¿A alguien más le ha pasado, o pudiera ser un error de Guipuzcoa al validar dicho dato?

Si no entendí mal, al igual que en Vizcaya, hay que meter en el nodo <SignatureValueFirmaFacturaAnterior> de la nueva factura, los 100 primeros caracteres de la firma de la factura anteriormente emitida.
Por el resto, informar la Serie, Número de Factura y Fecha de Expedición en el formato que se especifica.

A priori concuerdan los datos que estoy informando en esos nodos, pero quisiera preguntar por si acaso fuese algún error de Guipuzcoa a la hora de validarlos, ya que como digo en Vizcaya no hay problema, o tengo que seguir mirando por si algo se me hubiese escapado.

Muchas gracias.
Un saludo.

A nosotros no nos esta devolviendo ese error. Te recomiento que si ya lo has revisado bien y crees que es correcto se lo envíes a la hacienda para que te digan que puede ser.

Un Saludo.

rci 02-07-2021 09:48:41

el encadenamiento en batuz no se valida?
 
Cita:

Empezado por JoseLeeTo (Mensaje 541548)
Buenos días;

Solamente en Guipuzcoa, estoy obteniendo continuamente el aviso: "010 - Posible Error de Encadenamiento". El caso es que la factura la informa como Recibida, aunque me devuelve dicho aviso. En Vizcaya, de nuevo, no obtengo aviso de error de ningún tipo.
Solo en Guipuzcoa.

He revisado el nodo del encadenamiento de la Factura anterior, y a mi parecer, es correcta. ¿A alguien más le ha pasado, o pudiera ser un error de Guipuzcoa al validar dicho dato?

Si no entendí mal, al igual que en Vizcaya, hay que meter en el nodo <SignatureValueFirmaFacturaAnterior> de la nueva factura, los 100 primeros caracteres de la firma de la factura anteriormente emitida.
Por el resto, informar la Serie, Número de Factura y Fecha de Expedición en el formato que se especifica.

A priori concuerdan los datos que estoy informando en esos nodos, pero quisiera preguntar por si acaso fuese algún error de Guipuzcoa a la hora de validarlos, ya que como digo en Vizcaya no hay problema, o tengo que seguir mirando por si algo se me hubiese escapado.

Muchas gracias.
Un saludo.


Buenos días, yo creo que Bizkaia no hace esa comprobación del encadenamiento porque a mi tampoco me da el error y en las pruebas que he hecho tendria que hacerlo.
En Gipuzkoa me ha dado alguna vez pero era porque estaba haciendo pruebas y enviaba las facturas en orden incorrecto, aunque los datos de encadenamiento fueran correctos.
Ahora queria volver a probar Gipuzkoa para contestarte pero no puedo enviar, me da el error "Error en el servidor remoto: (503) Servidor no disponible."


Tu JoseLeeTo puedes enviar sin problema a Gipuzkoa ahora mismo (aunque te de el error de encadenamiento)?


Muchas gracias!

Band 02-07-2021 10:11:28

Cita:

Empezado por rci (Mensaje 541550)
Buenos días, yo creo que Bizkaia no hace esa comprobación del encadenamiento porque a mi tampoco me da el error y en las pruebas que he hecho tendria que hacerlo.
En Gipuzkoa me ha dado alguna vez pero era porque estaba haciendo pruebas y enviaba las facturas en orden incorrecto, aunque los datos de encadenamiento fueran correctos.
Ahora queria volver a probar Gipuzkoa para contestarte pero no puedo enviar, me da el error "Error en el servidor remoto: (503) Servidor no disponible."


Tu JoseLeeTo puedes enviar sin problema a Gipuzkoa ahora mismo (aunque te de el error de encadenamiento)?


Muchas gracias!

Yo acabo de probar guipuzkoa y no funciona (hace un par de semanas que lo dejé funcionando correctamente). A alguien más le pasa?

jaiser 02-07-2021 10:37:09

A mi tambien me da error 503 y antes me funcionaba, me estaba volviendo loco, supongo que estarán teniendo problemas con el servidor de guipuzkoa

Band 02-07-2021 10:54:03

Son unos genios, cada vez lo ponen más fácil...
A todo esto, me acabo de fijar que en la web de Álava pone lo siguiente:


"Su implantación en el Territorio Histórico de Álava se hará de forma gradual, a lo largo de 2022.

Para ayudar en la implantación, en la normativa se van a contemplar beneficios fiscales que incentiven las inversiones que se deban realizar. "


Llevo tiempo sin entrar en Álava, pero visto esto, me da a entender que para Guipuzkoa y Bizkaia si es el 1 enero de 2022. Para Álava sería en algún momento de 2022 aún sin especificar. Es así o ya llevo un follón que no me entero de nada?

Neftali [Germán.Estévez] 02-07-2021 11:03:26

Cita:

Empezado por Band (Mensaje 541551)
Yo acabo de probar guipuzkoa y no funciona (hace un par de semanas que lo dejé funcionando correctamente).


A mi hoy también me está fallando.
Da error de firma o error de certificado.
Luego reintentas y acaba aceptándola. :(:(

JoseLeeTo 02-07-2021 11:10:58

Cita:

Empezado por rci (Mensaje 541550)
Buenos días, yo creo que Bizkaia no hace esa comprobación del encadenamiento porque a mi tampoco me da el error y en las pruebas que he hecho tendria que hacerlo.
En Gipuzkoa me ha dado alguna vez pero era porque estaba haciendo pruebas y enviaba las facturas en orden incorrecto, aunque los datos de encadenamiento fueran correctos.
Ahora queria volver a probar Gipuzkoa para contestarte pero no puedo enviar, me da el error "Error en el servidor remoto: (503) Servidor no disponible."


Tu JoseLeeTo puedes enviar sin problema a Gipuzkoa ahora mismo (aunque te de el error de encadenamiento)?


Muchas gracias!


Hola. A mi me responde, pero algo raro pasa, porque me devuelve error 3n la verificación del certificado remitente.
No se qué estarán haciendo por allí.

Band 02-07-2021 11:17:15

Me pasa exactamente lo mismo que a vosotros 2, menos mal, porque me estaba empezando a traumatizar.

Me devuelve todo el rato estos 2 errores:

Error inesperado en la verificación del certificado remitente.

o

que le falta el SignatureValue (lo cual no es cierto)


Paso de volverme las loco hoy, el lunes será otro día...


La franja horaria es GMT +2. Ahora son las 18:06:22.

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