Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #4061  
Antiguo 12-02-2024
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.030
Poder: 22
keys Va por buen camino
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.
Responder Con Cita
  #4062  
Antiguo 14-02-2024
softtron softtron is offline
Registrado
 
Registrado: nov 2022
Posts: 3
Poder: 0
softtron Va por buen camino
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
<dsigestValue>/j7C3YYEt9b1T0E4p6mUo9rtdiLxNXKnR6eKQB1KlSQ=</dsigestValue>
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 <dsigestValue>/j7C3YYEt9b1T0E4p6mUo9rtdiLxNXKnR6eKQB1KlSQ=</dsigestValue>, 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í.
Responder Con Cita
  #4063  
Antiguo 14-02-2024
josevalle josevalle is offline
Miembro
 
Registrado: may 2017
Posts: 13
Poder: 0
josevalle Va por buen camino
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.
Responder Con Cita
  #4064  
Antiguo 15-02-2024
Doc Corrupto Doc Corrupto is offline
Registrado
 
Registrado: jul 2022
Posts: 6
Poder: 0
Doc Corrupto Va por buen camino
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
Responder Con Cita
  #4065  
Antiguo 15-02-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.285
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Doc Corrupto Ver Mensaje
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.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4066  
Antiguo 15-02-2024
tejano tejano is offline
Miembro
 
Registrado: dic 2020
Posts: 128
Poder: 4
tejano Va por buen camino
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
Responder Con Cita
  #4067  
Antiguo 15-02-2024
Doc Corrupto Doc Corrupto is offline
Registrado
 
Registrado: jul 2022
Posts: 6
Poder: 0
Doc Corrupto Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
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?

gracias por la respuesta
Responder Con Cita
  #4068  
Antiguo 15-02-2024
tejano tejano is offline
Miembro
 
Registrado: dic 2020
Posts: 128
Poder: 4
tejano Va por buen camino
Cita:
Empezado por Doc Corrupto Ver Mensaje
de forma automática no existe ningún endpoint no?

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
Responder Con Cita
  #4069  
Antiguo 15-02-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.285
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por tejano Ver Mensaje
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...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4070  
Antiguo 16-02-2024
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.030
Poder: 22
keys Va por buen camino
Cita:
Empezado por tejano Ver Mensaje
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.

Responder Con Cita
  #4071  
Antiguo 16-02-2024
Avatar de HerensugeBeltz
HerensugeBeltz HerensugeBeltz is offline
Miembro
 
Registrado: may 2021
Ubicación: Hondarribia
Posts: 88
Poder: 3
HerensugeBeltz Va por buen camino
Cita:
Empezado por tejano Ver Mensaje
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.
Responder Con Cita
  #4072  
Antiguo 17-02-2024
Doc Corrupto Doc Corrupto is offline
Registrado
 
Registrado: jul 2022
Posts: 6
Poder: 0
Doc Corrupto Va por buen camino
Cita:
Empezado por tejano Ver Mensaje
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
Responder Con Cita
  #4073  
Antiguo 19-02-2024
edari edari is offline
Miembro
 
Registrado: jun 2021
Posts: 178
Poder: 3
edari Va por buen camino
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
Responder Con Cita
  #4074  
Antiguo 19-02-2024
Sistel Sistel is offline
Miembro
 
Registrado: nov 2019
Ubicación: Bilbao
Posts: 372
Poder: 5
Sistel Va por buen camino
Cita:
Empezado por edari Ver Mensaje
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
Responder Con Cita
  #4075  
Antiguo 19-02-2024
edari edari is offline
Miembro
 
Registrado: jun 2021
Posts: 178
Poder: 3
edari Va por buen camino
Cita:
Empezado por Sistel Ver Mensaje
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
Responder Con Cita
  #4076  
Antiguo 19-02-2024
softtron softtron is offline
Registrado
 
Registrado: nov 2022
Posts: 3
Poder: 0
softtron Va por buen camino
Curl para el envío a TicketBAI Álava

Cita:
Empezado por josevalle Ver Mensaje
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.
Responder Con Cita
  #4077  
Antiguo 20-02-2024
softtron softtron is offline
Registrado
 
Registrado: nov 2022
Posts: 3
Poder: 0
softtron Va por buen camino
Cita:
Empezado por softtron Ver Mensaje
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.
Responder Con Cita
  #4078  
Antiguo 20-02-2024
edari edari is offline
Miembro
 
Registrado: jun 2021
Posts: 178
Poder: 3
edari Va por buen camino
Cita:
Empezado por softtron Ver Mensaje
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


Responder Con Cita
  #4079  
Antiguo 20-02-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.285
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por softtron Ver Mensaje
...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.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4080  
Antiguo 21-02-2024
josevalle josevalle is offline
Miembro
 
Registrado: may 2017
Posts: 13
Poder: 0
josevalle Va por buen camino
Cita:
Empezado por softtron Ver Mensaje
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.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
SII -Nuevo sistema de la Agencia Tributaria española de envío de datos vía Webservice newtron Internet 3557 Hace 1 Día 17:42:47
Como utilizar la ayuda del nuevo Sistema Operativo gluglu Humor 3 24-09-2007 09:39:05
Aplicacion Agencia De Viajes ArdiIIa Varios 9 20-01-2007 16:49:53
El Vasco Aguirre Al González La Taberna 5 26-05-2006 09:22:28
Microsoft ha lanzado su nuevo sistema operativo DarkByte Humor 0 25-01-2004 09:21:14


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


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi