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)

Gaxel 31-01-2024 23:53:11

Error en la firma Ticketbai Bizkaia
 
Hola a todos,

Estoy escribiendo porque ya me estoy quedando sin ideas. Tengo una integración con Ticketbai Bizkaia en java, hasta hace poco tiempo podia enviar facturas sin ningun problemas al entorno de prueba de bizkaia, pero de un momento a otro... pum, error con la Firma electrónica.

<DescripcionErrorRegistroES>La firma no cumple los requisitos de la política de firma TicketBAI.(EPES: S ALGORITMO: rsa-sha256:2048 POLITICA: N CERTIFICADO_ADMITIDO: S )</DescripcionErrorRegistroES>

Entiendo que lo único que tengo mal es "POLITICA: N", pero yo no cambie nada, tampoco no se cambio nada en la documentación de Bizkaia, estoy utilizando el siguiente link para al firma "https batuz eus/ .... _...a_firma_electronica_v1_1.pdf"

Así estoy haciendo una parte de la firma en java:
Código:

                URL url = new URL("https  batuz eus/ .... _...a_firma_electronica_v1_1.pdf");
                URLConnection urlConn = url.openConnection();
                return new SignaturePolicyIdentifierProperty(new ObjectIdentifier(
                    policyUrl
                ), new BufferedInputStream(urlConn.getInputStream()));

No se por donde darle. Ni siquiera sé que es lo que está mal, antes estaba funcionando correctamente, de repente batuz se le dio por complicarme la existencia.

Neftali [Germán.Estévez] 01-02-2024 08:16:33

Cita:

Empezado por Gaxel (Mensaje 554268)
No se por donde darle. Ni siquiera sé que es lo que está mal, antes estaba funcionando correctamente, de repente batuz se le dio por complicarme la existencia.


Si quieres añade un fichero LROE con 1 factura (si hace falta elimina datos sensibles) y revisamos a ver si tiene algo raro.

Noe277 02-02-2024 12:18:46

Ficheros Rechazados
 
Buenas,

Hay una cosa que no entiendo a nivel de procedimiento.

Mando Factura 1 -> Me la Rechaza -> En teoría tengo que conservar el fichero .xml

Mando la subsanación de Factura 1
-> Huella Tbai ¿ Cual es la de la factura 1?
-> La firma ¿ Es Nueva o la de la Factura 1?
Me rechaza la subsanación -> ¿ Conservo este fichero y vuelvo a generar otra subsanación?
En tal caso ¿la firma y la huella de la Factura 1 ?

Si alguien me puede aclarar algo. Gracias

Neftali [Germán.Estévez] 02-02-2024 12:39:07

Cita:

Empezado por Noe277 (Mensaje 554293)
Hay una cosa que no entiendo a nivel de procedimiento.

Mando Factura 1 -> Me la Rechaza -> En teoría tengo que conservar el fichero .xml

Mando la subsanación de Factura 1
-> Huella Tbai ¿ Cual es la de la factura 1?
-> La firma ¿ Es Nueva o la de la Factura 1?
Me rechaza la subsanación -> ¿ Conservo este fichero y vuelvo a generar otra subsanación?
En tal caso ¿la firma y la huella de la Factura 1 ?

Si alguien me puede aclarar algo. Gracias


Para aclarar, ¿estás hablando de BATUZ (Vizcaya) o TICKETBAI (Alava y Guipuzkoa)?

juramisa 02-02-2024 12:48:13

Mira si puede ir por aquí el error, según el fichero de especificaciones de firma el Hash a cambiado:

Antes
[SignaturePolicyIdentifier]
SigPolicyID=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf
SigPolicyHash=Quzn98x3PMbSHwbUzaj5f5KOpiH0u8bvmwbbbNkO9Es= (Base64)
SigPolicyHash=42ECE7F7CC773CC6D21F06D4CDA8F97F928EA621F4BBC6EF9B06DB6CD90EF44B (HEX)
SigPolicyHashAlgorithm=SHA256
SigPolicyURI=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf


Ahora
[SignaturePolicyIdentifier]
SigPolicyID=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf
SigPolicyHash=K2baIY0fk8jbkPHkffk5F5C46O5VuzDwH21dAovjVRs= (Base64)
SigPolicyHash=2B66DA218D1F93C8DB90F1E47DF9391790B8E8EE55BB30F01F6D5D028BE3551B (HEX)
SigPolicyHashAlgorithm=SHA256
SigPolicyURI=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf

Noe277 02-02-2024 13:39:32

Facturas
 
Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 554294)
Para aclarar, ¿estás hablando de BATUZ (Vizcaya) o TICKETBAI (Alava y Guipuzkoa)?

Hablo de Alava y Guipuzkoa

Ramon88 02-02-2024 19:49:49

Estoy encontrándome un error que puede que os haya sucedido.
¿Cómo anuláis las ventas o facturas, que se hicieron antes de ticketbai?
Evidentemente, la factura no esta registrada, por lo que da error la anulación.

Se me ha ocurrido hacer una factura en negativo simplemente para que haya constancia... ¿Se podría hacer así?

josevalle 03-02-2024 10:50:53

Cita:

Empezado por juramisa (Mensaje 554295)
Mira si puede ir por aquí el error, según el fichero de especificaciones de firma el Hash a cambiado:

Antes
[SignaturePolicyIdentifier]
SigPolicyID=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf
SigPolicyHash=Quzn98x3PMbSHwbUzaj5f5KOpiH0u8bvmwbbbNkO9Es= (Base64)
SigPolicyHash=42ECE7F7CC773CC6D21F06D4CDA8F97F928EA621F4BBC6EF9B06DB6CD90EF44B (HEX)
SigPolicyHashAlgorithm=SHA256
SigPolicyURI=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf


Ahora
[SignaturePolicyIdentifier]
SigPolicyID=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf
SigPolicyHash=K2baIY0fk8jbkPHkffk5F5C46O5VuzDwH21dAovjVRs= (Base64)
SigPolicyHash=2B66DA218D1F93C8DB90F1E47DF9391790B8E8EE55BB30F01F6D5D028BE3551B (HEX)
SigPolicyHashAlgorithm=SHA256
SigPolicyURI=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf

Hola: Yo utilizo el Hash de 'antes' y me funciona bien.
¿Desde cuando han cambiado eso?¿Tienes el documento?

Sistel 03-02-2024 11:13:07

Cita:

Empezado por Ramon88 (Mensaje 554306)
Estoy encontrándome un error que puede que os haya sucedido.
¿Cómo anuláis las ventas o facturas, que se hicieron antes de ticketbai?
Evidentemente, la factura no esta registrada, por lo que da error la anulación.

Se me ha ocurrido hacer una factura en negativo simplemente para que haya constancia... ¿Se podría hacer así?

Hola,

En principio, Hacienda no pone ningún problema a que se hagan facturas con importes negativos.
Y es la única solución cuando hay una devolución y no se puede localizar la facturasoriginal para poder hacer una rectificativa.

Saludos

juramisa 05-02-2024 09:18:25

Dentro de la documentación técnica, a finales del 2023 han hecho modificaciones, e incorporado nuevos esquemas de envío para personas jurídicas. Relativo a la firma, pone lo siguiente
Cita:

Documento de especificaciones para la firma electrónica de los ficheros del software garante TicketBAI 1.1. Esta política de firma es complementaria a la anterior. El Hash SHA256 de este documento es el siguiente, el cual se deberá incluir obligatoriamente en la firma electrónica de los ficheros de alta y de anulación de operación con software garante TicketBAI: K2baIY0fk8jbkPHkffk5F5C46O5VuzDwH21dAovjVRs=
. Y efectivamente sigue funcionando con en antiguo hash.

Y como digo se han incorporado el capitulo de movimientos contables, para el año que viene.

Saludos

tejano 08-02-2024 16:25:32

Cita:

Empezado por juramisa (Mensaje 554317)
Dentro de la documentación técnica, a finales del 2023 han hecho modificaciones, e incorporado nuevos esquemas de envío para personas jurídicas. Relativo a la firma, pone lo siguiente
. Y efectivamente sigue funcionando con en antiguo hash.

Y como digo se han incorporado el capitulo de movimientos contables, para el año que viene.

Saludos

Hola, con respecto al hash cambiando el hash y la ruta de las especificaciones de la firma poniendo en *******V_1_1.pdf va perfecto.

Con respecto al Capitulo de movimientos contables, esto nos ha comentado nuestro asesor, aunque por "mala suerte", en nuestro caso querrán empezar de forma voluntaria para el año que viene, 2025.
------------------------------
El link en cuestión es una serie de indicaciones técnicas (informáticas) para cumplir con dicha normativa, pero en todo en caso de forma voluntaria para 2025.
Como te comenté, la obligatoriedad no se producirá hasta 2029.
------------------------------
Saludos

keys 09-02-2024 08:23:09

Lo de los de los libros contables hay que llevarlos de forma voluntaria a partir del 2025, pero los tienen que presentar en el 2026. Ya que se presentarán al final del año.

keys 09-02-2024 13:26:40

Cita:

Empezado por juramisa (Mensaje 554317)
Dentro de la documentación técnica, a finales del 2023 han hecho modificaciones, e incorporado nuevos esquemas de envío para personas jurídicas. Relativo a la firma, pone lo siguiente
. Y efectivamente sigue funcionando con en antiguo hash.

Y como digo se han incorporado el capitulo de movimientos contables, para el año que viene.

Saludos

¿Alguien ha firmado y enviado con el nuevo hash? ME dice que no es correcto al enviar.

r_SigPolicyID := 'https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf';
r_SigPolicyHash := 'K2baIY0fk8jbkPHkffk5F5C46O5VuzDwH21dAovjVRs=';
r_SigPolicyURI := 'https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf';

tejano 09-02-2024 13:39:10

Cita:

Empezado por keys (Mensaje 554410)
¿Alguien ha firmado y enviado con el nuevo hash? ME dice que no es correcto al enviar.

r_SigPolicyID := 'https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf';
r_SigPolicyHash := 'K2baIY0fk8jbkPHkffk5F5C46O5VuzDwH21dAovjVRs=';
r_SigPolicyURI := 'https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf';

Acabo de enviar algunas y facturas con el nuevo Hash e identificador de firma, y va perfecto.
Si me pasó ayer que también cambié la versión del XML a la 1.2.2 creyendo que era necesario y me dio error. He vuelto a dejar la 1.2

Saludos

keys 09-02-2024 13:46:14

Cita:

Empezado por tejano (Mensaje 554411)
Acabo de enviar algunas y facturas con el nuevo Hash e identificador de firma, y va perfecto.
Si me pasó ayer que también cambié la versión del XML a la 1.2.2 creyendo que era necesario y me dio error. He vuelto a dejar la 1.2

Saludos

¿Lo estás haciendo en delphi? y si es así con que componentes?

tejano 09-02-2024 13:53:00

Cita:

Empezado por keys (Mensaje 554412)
¿Lo estás haciendo en delphi? y si es así con que componentes?

No, en mi caso lo estoy haciendo con Multibase y autofirma, aunque es lento solo tenemos 300 facturas al mes, pero me apoyo e intento apoyar desde este foro.

Este es la llamada que hago.

call dllfun('WinExec','cmd /c AutoFirmaCommandLine.exe sign'&&
' -i '&&fichero_inicial clipped&&
' -o '&&fichero_firmado clipped&&
' -store pkcs12:'&&fg_batuz_cert clipped&&
' -password '&&fg_batuz_pass clipped&&
' -filter '&&fg_batuz_cert clipped&&
' -format xades -xml'&&
' -config "format=XAdES Enveloped'&&
' \npolicyIdentifier='&&fg_batuz_iden clipped&&
' \npolicyIdentifierHash='&&fg_batuz_hash clipped&&
' \npolicyIdentifierHashAlgorithm=http://www.w3.org/2001/04/xmlenc#sha256 '&&
' \npolicyQualifier='&&fg_batuz_iden clipped,0)

keys 09-02-2024 14:34:07

¿Hay alguien que firme con SecureBlackBox y tenga el nuevo hash? No consigo firmar con el. Poniendo esto

Código Delphi [-]
       r_SigPolicyID := 'https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf';
       r_SigPolicyHash := 'K2baIY0fk8jbkPHkffk5F5C46O5VuzDwH21dAovjVRs=';
       r_SigPolicyURI := 'https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf';

El fichero que genera no tiene la parte de sigpolicyhash

Código PHP:

 <xades:SigPolicyHash>
    <
ds:DigestMethod Algorithm=""/>
    <
ds:DigestValue/>
</
xades:SigPolicyHash

Pero poniendo los datos antiguos si;

Código PHP:

  <xades:SigPolicyHash>
       <
ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
       <
ds:DigestValue>Quzn98x3PMbSHwbUzaj5f5KOpiH0u8bvmwbbbNkO9Es=</ds:DigestValue>
  </
xades:SigPolicyHash


Neftali [Germán.Estévez] 09-02-2024 14:47:53

Cita:

Empezado por keys (Mensaje 554415)
¿Hay alguien que firme con SecureBlackBox y tenga el nuevo hash? No consigo firmar con el. Poniendo esto


Nosotros firmamos con SecureBlackBox, pero seguimos con el antiguo.
¿De cuando es este nuevo hash?

tejano 09-02-2024 14:53:56

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 554416)
Nosotros firmamos con SecureBlackBox, pero seguimos con el antiguo.
¿De cuando es este nuevo hash?

Por lo que hay en la orden Foral, es del 12 de Julio, esta dentro de la página de Batuz en Documentación técnica.

Lo que no entiendo es por qué no envían un mail de las modificaciones a las empresas con software garante.

https://www.batuz.eus/fitxategiak/ba...c419d77e08898f

juramisa 12-02-2024 09:08:05

Buenos días

Nosotros sólo lo hemos probado en el entorno de pruebas, y nos funciona. Mientras no sea necesario, a nuestros clientes ni tocar. Lo que funciona, funciona. Recordaros que para SecureBlackBox hay que mandar el valor en hexadecimal. Yo tengo un fichero INI, de donde cojo dichos valores, os lo dejo a continuación.

Cita:

[SignaturePolicyIdentifier]
;SigPolicyID=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf
;SigPolicyHash=42ECE7F7CC773CC6D21F06D4CDA8F97F928EA621F4BBC6EF9B06DB6CD90EF44B
;SigPolicyHashAlgorithm=SHA256
;SigPolicyURI=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf

SigPolicyID=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf
; K2baIY0fk8jbkPHkffk5F5C46O5VuzDwH21dAovjVRs= convertimos base64 a HEX
SigPolicyHash=2B66DA218D1F93C8DB90F1E47DF9391790B8E8EE55BB30F01F6D5D028BE3551B
SigPolicyHashAlgorithm=SHA256
SigPolicyURI=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_1.pdf


keys 12-02-2024 13:24:35

Gracias.

No me acordaba lo de que había que pasarlo a hexadecimal. Tampoco lo voy a cambiar mientras funcione el anterior, sólo era por tenerlo preparado por si algún día deja de funcionar el anterior. :rolleyes:

softtron 14-02-2024 00:50:46

Hola a todos, soy nuevo en el foro. Por circunstancias de la vida necesito aprender de vosotros para poder adaptar un software. Llevo semanas leyendo y probando. He aprendido mucho de vosotros, muchas gracias, pero me tropiezo con algunas dudas y me quedo estancado. Me veo obligado a preguntar. Me lleváis años de ventaja, pero quizás mis dudas sean compartidas por otros en mi situación a estas alturas. Voy a intentar desarrollar una interface en python para conseguir la adaptación que necesito. Entiendo que este es un foro enfocado principalmente a Delphi pero creo que las dudas y las soluciones adoptadas pueden servir para otros lenguajes.
Pues mi duda donde me quedo estancado es muy básica creo. A la hora de firmar el xml de una factura, no encuentro información detallada sobre que entra exactamente en el xml a firmar. He tomado para comenzar el ejemplo de factura en h ttp s://w eb. araba. eus que como todos sabréis comienza así:

<?xml version="1.0" encoding="UTF-8"?>
<T:TicketBai xmlns:T="urn:ticketbai:emision" xmlns:xsi="h t t p://www .w3. org/2001/XMLSchema-instance" xsi:schemaLocation="ht tp://www w3. org/2001/XMLSchema ticketbai.xsd">
<Cabecera>
...
y entiendo que la factura termina en ... </HuellaTBAI>

luego en este xml de ejemplo ya se continua con <ds:Signature ... que creo haber entendido se trata ya de la firma que se añade.

Si hasta aquí lo he entendido bien, entonces busco y busco sobre como se genera el valor que hay unas líneas mas abajo
<ds:DigestValue>/j7C3YYEt9b1T0E4p6mUo9rtdiLxNXKnR6eKQB1KlSQ=</ds:DigestValue>
pero eso es lo que no encuentro
Duda 1: El primer caracter del xml que se debe incluir en la firma y el último, son <?xml version ... y ... </HuellaTBAI> los extremos?

Duda 2: Como no se exactamente si esos son los extremos del xml a firmar, no se si el codigo python que empleo funciona bien o no, los pasos que sigue el codigo es primero calcular el hash utilizando SHA-256, eso me da una cadena hexadecimal, que creo se debe firmar con la clave privada y luego codificar en base64 el hash firmado. Pero nunca consigo obtener el valor <ds:DigestValue>/j7C3YYEt9b1T0E4p6mUo9rtdiLxNXKnR6eKQB1KlSQ=</ds:DigestValue>, haga lo que haga obtengo otros.
Yo debería conseguir ese mismo valor de DigestValue tomando ese mismo ejemplo de factura xml, verdad?
Gracias a quien me lea y agradecería mucho un poco de luz en esto, no se si lo estoy entendiendo mal y no es así.

josevalle 14-02-2024 01:14:55

Hola:

El xml termina con: </T:TicketBai>

Y el programa de firma añade lo de signature, etc...

<Version>1.02</Version>
</Software>
</HuellaTBAI>
</T:TicketBai>

Yo tampoco utilizo Delphi, escribo el xml como fichero de texto, firmo con afirma, genero el Qr con Simplecodegenerator (freeware),
con base64 lo convierto y lo envio a la diputación con curl. Todo lo hago con bats. Lo tengo funcionando en Bizkaia y Alava.

Doc Corrupto 15-02-2024 14:21:43

Tengo una duda, si envio una factura a ticketbai y por el motivo que sea no obtengo respuesta (problema servidor, etc...) la factura queda entregada, de que manera puedo consultar si una factura se encuentra en ticketbai? Ya que puede ser que le de a enviar y de un error de que esa factura ya existe en el sistema. Hay algún endpoint para verificar el estado de una factura? Si no es asi, como gestionais esta parte?

Saludos

Neftali [Germán.Estévez] 15-02-2024 15:30:49

Cita:

Empezado por Doc Corrupto (Mensaje 554485)
si envio una factura a ticketbai y por el motivo que sea no obtengo respuesta (problema servidor, etc...) la factura queda entregada, de que manera puedo consultar si una factura se encuentra en ticketbai? Ya que puede ser que le de a enviar y de un error de que esa factura ya existe en el sistema. Hay algún endpoint para verificar el estado de una factura? Si no es asi, como gestionais esta parte?


Manualmente puedes hacerlo por ejemplo escaneando el QR o utilizando la web de consulta (ahora no recuerdo si todas la tienen).
De forma "automática" siempre puedes volver a enviarla y detectar el error de factura duplicada.
No hay que yo recuerde servicio de consulta.

tejano 15-02-2024 16:23:56

Fecha de expedicion y fecha de factura
 
Buenas tardes, no sé si sabéis responderme sobre estos temas de las fechas. Estamos recibiendo facturas de diferentes empresas de las haciendas forales y que creo que están haciendo lo que quieran con la fecha de expedición.

Creo que la fecha de expedición es lo que antiguamente llamábamos Fecha de factura y que esta debe ser siempre la fecha del día en la que hacemos la factura. Hemos recibido una factura con fecha de factura = 31/01/2024 y fecha de expedición = 02/02/2024.

Actualmente creo que solo existen 2 fechas, la fecha de expedición y la fecha del devengo, que es la fecha en la que nos devengamos el IVA. Puede haber otras fechas, pero sin demasiada importancia.

Si me lo podéis aclarar os lo agradezco.

Gracias

Doc Corrupto 15-02-2024 16:44:48

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 554486)
Manualmente puedes hacerlo por ejemplo escaneando el QR o utilizando la web de consulta (ahora no recuerdo si todas la tienen).
De forma "automática" siempre puedes volver a enviarla y detectar el error de factura duplicada.
No hay que yo recuerde servicio de consulta.

de forma automática no existe ningún endpoint no? :mad:

gracias por la respuesta ^\||/

tejano 15-02-2024 17:58:53

Cita:

Empezado por Doc Corrupto (Mensaje 554492)
de forma automática no existe ningún endpoint no? :mad:

gracias por la respuesta ^\||/

Yo cuando envío la factura, viene un fichero de respuesta y verifico ese fichero.

Si quieres ir un nivel por encima, en Vizcaya que es con la que trabajo, puedes hacer una consulta en la hacienda y verificar que existe ya ese documento.

Existe el capítulo de consulta de facturas. Nosotros lo utilizamos para "cuadrar" nuestro IVA, contabilidad y emisión de facturas entre la DFB y nuestros datos.

Saludos

Neftali [Germán.Estévez] 15-02-2024 18:07:06

Cita:

Empezado por tejano (Mensaje 554494)
en Vizcaya que es con la que trabajo, puedes hacer una consulta en la hacienda y verificar que existe ya ese documento.
Existe el capítulo de consulta de facturas.

El problema es que en los otros no.
Aquí como cada uno va por libre... :(

keys 16-02-2024 08:33:03

Cita:

Empezado por tejano (Mensaje 554488)
Buenas tardes, no sé si sabéis responderme sobre estos temas de las fechas. Estamos recibiendo facturas de diferentes empresas de las haciendas forales y que creo que están haciendo lo que quieran con la fecha de expedición.

Creo que la fecha de expedición es lo que antiguamente llamábamos Fecha de factura y que esta debe ser siempre la fecha del día en la que hacemos la factura. Hemos recibido una factura con fecha de factura = 31/01/2024 y fecha de expedición = 02/02/2024.

Actualmente creo que solo existen 2 fechas, la fecha de expedición y la fecha del devengo, que es la fecha en la que nos devengamos el IVA. Puede haber otras fechas, pero sin demasiada importancia.

Si me lo podéis aclarar os lo agradezco.

Gracias

Hola, sólo hay dos fechas. Fecha de expedición (Fecha en la que se emite la factura, día actual) y fecha de operación (Fecha de devengo), La fecha de devengo tiene que ser igual o inferior a la fecha de emisión de la facturas.

Me consta que hay aplicaciones que dejan poner en la fecha de expedición un día que no es el actual (el sistema se lo traga), pero eso no es correcto y no se sé si algún día les darán problema en Hacienda (tienen la fecha de firma). De hecho Alava ha incorporado un aviso (016) que indica si la fecha de expedición es anterior de la fecha del día.

Hacienda dice esto :
Cita:



¿Qué se debe indicar en los campos “Fecha expedición factura” y “Hora expedición factura”?

Se refiere a la fecha y hora de en la que se ha expedido la factura a través del sistema TicketBAI, independientemente de que en su caso no se haya generado la impresión física de la misma.


Sin cambios

¿Cuándo debe cumplimentarse el campo “Fecha operación”?

Deberá cumplimentarse el campo "Fecha operación" cuando la fecha de realización de la operación sea distinta a la fecha de expedición de la factura.

Ejemplo: la empresa "A" vende mercancías a otra empresa el 3 de julio de 2022, documentando la operación en factura de fecha 1 de agosto de 2022. En este caso, se consignará el campo "Fecha expedición factura" con valor 1 de agosto de 2022 y el campo “Fecha operación” con valor 3 de julio de 2022.



HerensugeBeltz 16-02-2024 08:44:40

Cita:

Empezado por tejano (Mensaje 554488)
Buenas tardes, no sé si sabéis responderme sobre estos temas de las fechas. Estamos recibiendo facturas de diferentes empresas de las haciendas forales y que creo que están haciendo lo que quieran con la fecha de expedición.

Creo que la fecha de expedición es lo que antiguamente llamábamos Fecha de factura y que esta debe ser siempre la fecha del día en la que hacemos la factura. Hemos recibido una factura con fecha de factura = 31/01/2024 y fecha de expedición = 02/02/2024.

Actualmente creo que solo existen 2 fechas, la fecha de expedición y la fecha del devengo, que es la fecha en la que nos devengamos el IVA. Puede haber otras fechas, pero sin demasiada importancia.

Si me lo podéis aclarar os lo agradezco.

Gracias

Debéis indicar como fecha de operación 31/01/2024 y como fecha de expedición 02/02/2024. En caso de existir una única fecha, esta sería la fecha de expedición y se asume misma fecha de operación.

Doc Corrupto 17-02-2024 00:26:58

Cita:

Empezado por tejano (Mensaje 554494)
Yo cuando envío la factura, viene un fichero de respuesta y verifico ese fichero.

Si quieres ir un nivel por encima, en Vizcaya que es con la que trabajo, puedes hacer una consulta en la hacienda y verificar que existe ya ese documento.

Existe el capítulo de consulta de facturas. Nosotros lo utilizamos para "cuadrar" nuestro IVA, contabilidad y emisión de facturas entre la DFB y nuestros datos.

Saludos

claro, me refiero a los casos en los que no se recibe la respuesta, nos ha pasado en algún caso aislado entre miles de facturas entregadas, el problema es que enviamos la petición, no recibimos la respuesta por el motivo que sea, fallo en servidores, o lo que sea, y claro al no recibir la respuesta nosotros en nuestro sistema no creamos la factura final para que se entienda, si la queremos volver a enviar, nos dice que esa factura ya existe.

No me entra en la cabeza que no tengan un endpoint para verificar el estado de una factura

edari 19-02-2024 10:45:37

Buenos días,


Conocéis alguna página que valide un código QR y te diga el nivel de corrección del error?


Gracias

Sistel 19-02-2024 11:18:43

Cita:

Empezado por edari (Mensaje 554524)
Conocéis alguna página que valide un código QR y te diga el nivel de corrección del error?

Hola,

Cualquier app para smartphone que escanee códigos QR, te permitirá conectar desde un QR de TicketBAI con la Hacienda Foral correspondiente para comprobar los datos de una factura.
Si no te conecta es probable que el QR sea incorrecto.

Respecto al nivel de corrección de error de un QR, puedes comprobarlo directamente a ojo, mirando la esquina inferior izquierda donde aparece ese dato mediante un sencillo sistema:
https://blog.qrstuff.com/general/qr-...ror-correction

Aunque también hay herramientas para extraer ése y otros datos de un QR:
https://developer.apple.com/document...codedescriptor
Mira en concreto el dato CIQRCodeDescriptor.ErrorCorrectionLevel

Saludos

edari 19-02-2024 12:12:23

Cita:

Empezado por Sistel (Mensaje 554525)
Hola,

Cualquier app para smartphone que escanee códigos QR, te permitirá conectar desde un QR de TicketBAI con la Hacienda Foral correspondiente para comprobar los datos de una factura.
Si no te conecta es probable que el QR sea incorrecto.

Respecto al nivel de corrección de error de un QR, puedes comprobarlo directamente a ojo, mirando la esquina inferior izquierda donde aparece ese dato mediante un sencillo sistema:
https://blog.qrstuff.com/general/qr-...ror-correction

Aunque también hay herramientas para extraer ése y otros datos de un QR:
https://developer.apple.com/document...codedescriptor
Mira en concreto el dato CIQRCodeDescriptor.ErrorCorrectionLevel

Saludos


Gracias ^\||/

softtron 19-02-2024 19:28:39

Curl para el envío a TicketBAI Álava
 
Cita:

Empezado por josevalle (Mensaje 554456)
Hola:

El xml termina con: </T:TicketBai>

Y el programa de firma añade lo de signature, etc...

<Version>1.02</Version>
</Software>
</HuellaTBAI>
</T:TicketBai>

Yo tampoco utilizo Delphi, escribo el xml como fichero de texto, firmo con afirma, genero el Qr con Simplecodegenerator (freeware),
con base64 lo convierto y lo envio a la diputación con curl. Todo lo hago con bats. Lo tengo funcionando en Bizkaia y Alava.

Muchas gracias josevalle, me has ayudado mucho. Se me abren otros caminos de desarrollo. He resuelto la firma con afirma, pero el curl para el envío parece que no lo genero bien. Puedes darnos un ejemplo de un curl montado para ver que puedo estar haciendo mal? No se si en el curl deben aparecer comillas " o comilla ' o no se usan.

softtron 20-02-2024 01:14:16

Cita:

Empezado por softtron (Mensaje 554537)
Muchas gracias josevalle, me has ayudado mucho. Se me abren otros caminos de desarrollo. He resuelto la firma con afirma, pero el curl para el envío parece que no lo genero bien. Puedes darnos un ejemplo de un curl montado para ver que puedo estar haciendo mal? No se si en el curl deben aparecer comillas " o comilla ' o no se usan.

He encontrado un ejemplo, pero aun no estoy totalmente seguro. ¿Una línea de comando Curl quedaría así para el envío a Álava?:

curl.exe --tlsv1.2 --data-binary "@c:\Efactura\Factura-Alava\factura1-signed.xml" --cert-type P12 --cert c:\Efactura\Certificado\softtron.pfx:123456789 -H "Content-Type: application/xml;charset=UTF8" -X POST htt ps ://pruebas-ticketbai.araba. eus/TicketBAI/v1/facturas/ -o c:\Efactura\respuesta.xml

Entre comillas " el archivo xml que se envía y el header. Pero en otros ejemplos Curl para otras haciendas forales las comillas se usan de forma diferente.

Si alguien me puede corroborar lo que es correcto, o confirmar lo que es erróneo, se lo agradezco.

edari 20-02-2024 08:58:02

Cita:

Empezado por softtron (Mensaje 554538)
He encontrado un ejemplo, pero aun no estoy totalmente seguro. ¿Una línea de comando Curl quedaría así para el envío a Álava?:

curl.exe --tlsv1.2 --data-binary "@c:\Efactura\Factura-Alava\factura1-signed.xml" --cert-type P12 --cert c:\Efactura\Certificado\softtron.pfx:123456789 -H "Content-Type: application/xml;charset=UTF8" -X POST htt ps ://pruebas-ticketbai.araba. eus/TicketBAI/v1/facturas/ -o c:\Efactura\respuesta.xml

Entre comillas " el archivo xml que se envía y el header. Pero en otros ejemplos Curl para otras haciendas forales las comillas se usan de forma diferente.

Si alguien me puede corroborar lo que es correcto, o confirmar lo que es erróneo, se lo agradezco.

Yo lo subo siempre con curl

curl.exe --tlsv1.2 --data-binary @\FICHERO.XML --cert-type P12 --cert CERTIFICADO:PASSWORD -H "Content-Type: application/xml;charset=UTF8" -X POST https://pruebas-ticketbai.araba.eus/...I/v1/facturas/ -o FICHERORESPUESTA.XML


^\||/

Neftali [Germán.Estévez] 20-02-2024 08:59:27

Cita:

Empezado por softtron (Mensaje 554537)
...pero el curl para el envío parece que no lo genero bien. Puedes darnos un ejemplo de un curl montado para ver que puedo estar haciendo mal? No se si en el curl deben aparecer comillas " o comilla ' o no se usan.

Recordar que en el segundo mensaje de este hilo, hay una recopilación de enlaces con con diferentes códigos, en diferentes lenguajes, para las diferentes operaciones.
Ahí hay varias referencias a códigos de envío con CURL.

josevalle 21-02-2024 18:20:28

Cita:

Empezado por softtron (Mensaje 554538)
He encontrado un ejemplo, pero aun no estoy totalmente seguro. ¿Una línea de comando Curl quedaría así para el envío a Álava?:

curl.exe --tlsv1.2 --data-binary "@c:\Efactura\Factura-Alava\factura1-signed.xml" --cert-type P12 --cert c:\Efactura\Certificado\softtron.pfx:123456789 -H "Content-Type: application/xml;charset=UTF8" -X POST htt ps ://pruebas-ticketbai.araba. eus/TicketBAI/v1/facturas/ -o c:\Efactura\respuesta.xml

Entre comillas " el archivo xml que se envía y el header. Pero en otros ejemplos Curl para otras haciendas forales las comillas se usan de forma diferente.

Si alguien me puede corroborar lo que es correcto, o confirmar lo que es erróneo, se lo agradezco.

Hola: Yo fui probando con los ejemplos de este foro y cuando la respuesta fue correcta di por terminada la búsqueda.

j:\TbaiAlava\curl -X POST --connect-timeout 30 --data-binary "@j:\TbaiAlava\XML\Factura230014Fir.xml" -o "j:\TbaiAlava\XML\RespTbaiFactura230014.xml" --cert-type P12 --cert SOLDISP_2CE25029TG_CERT.p12:999999 -H "Content-Type: application/xml;charset=UTF-8" https://pruebas-ticketbai.araba.eus/...I/v1/facturas/

Es muy parecido a lo que tu dices.


La franja horaria es GMT +2. Ahora son las 02:23:29.

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