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 07-01-2020 09:45:45

Hola,

Me acaban de responder, de TicketBAI sobre algunos puntos que les había consultado:

No hay obligación de instalar un certificado de dispositivo pero sí de identificar el dispositivo desde el que se factura.
Se requiere identificar los datos “propios” y “unívocos” del dispositivo. Para ello, se dará por válidos los datos de un dispositivo a través del número de serie del equipo> wmic bios get serialnumber, a través del número de serie de la placa base > Wmic baseboard get serialnumber, o de la MAC de la tarjeta de red.
En los dispositivos móviles el dato unívoco del dispositivo será su “IMEI “ .


Saludos

yaedev 07-01-2020 11:17:26

Cita:

Empezado por Sistel (Mensaje 535082)

Pregunté a IZENPE sobre los certificados para TicketBAI y me contestaron:
Precios sin IVA:
Aplicación ( 3 años) - software - 274,40 €
Dispositivo (5 años) - software - 8,24€
Firma de Código ( 3 años) tarjeta o software - Tarjeta:757,26 € - Sofware: 749,11 €

buff...Por ahora voy a estar en espera a ver de cómo evoluciona...En mi caso, de mis usuarios sólo afectaría un nº muy reducido. Pero son usuarios que no me han generado ningún ingreso en los 2 últimos años, no han renovado ni mantenimientos ni han comprado nuevas licencias de las aplicaciones....

Cita:

Empezado por sistel
No hay obligación de instalar un certificado de dispositivo pero sí de identificar el dispositivo desde el que se factura.
Se requiere identificar los datos “propios” y “unívocos” del dispositivo. Para ello, se dará por válidos los datos de un dispositivo a través del número de serie del equipo> wmic bios get serialnumber, a través del número de serie de la placa base > Wmic baseboard get serialnumber, o de la MAC de la tarjeta de red.
En los dispositivos móviles el dato unívoco del dispositivo será su “IMEI “ .

Para los ordenadores, para obtener un ID único entiendo que se refiere a la suma de varios , porque si obtienes sólo el CPU Id o Motherboard ID, etc., no es raro que se de el caso de que haya +1 ordenador de la misma empresa con el mismo ID. También Windows ID puede ser cambiado, por lo que tampoco sería válido como ID único...

Neftali [Germán.Estévez] 07-01-2020 11:35:05

Cita:

Empezado por xamminf (Mensaje 535022)
¿ Y cómo sabrán que no se manda después ? ¿ Lleva datos de stamp impresión el .xml ?


La factura incluye fecha y hora. Supongo que simplemente hay que compararla con la fecha y hora del envío.
:cool::cool::cool:

keys 07-01-2020 11:38:03

Hola a todos.
¿Alguien tiene experiencia con el certificado de aplicación o sabe como van?
Tengo las siguientes dudas y en izenpe no tienen ni idea.
- Cada vez que genero una versión de la aplicación la tengo que firmar segun pone en el punto 6.3 de la documentación. ¿Tengo que pasar por caja y volver a pagar por el certificado?.
- ¿Luego este certificado de aplicación como se distribuye?. Se lo tenemos que dar a los usuarios de la aplicación.

Estoy un poco pez en este tema.

Sistel 07-01-2020 11:54:26

Cita:

Empezado por keys (Mensaje 535108)
Hola a todos.
- Cada vez que genero una versión de la aplicación la tengo que firmar segun pone en el punto 6.3 de la documentación. ¿Tengo que pasar por caja y volver a pagar por el certificado?.
- ¿Luego este certificado de aplicación como se distribuye?. Se lo tenemos que dar a los usuarios de la aplicación.

Entiendo que sirve para firmar la aplicación todas las veces que sea necesario para nuevas versiones.
Y que no hay que suministrar dicho certificado al usuario, sólo hay que firmar el ejecutable que se le suministra.
Al instalar el nuevo ejecutable, el sistema operativo le pedirá si confía en esa aplicación certificada.

Bueno, eso sería si se emplea el Certificado de Firma de Código de IZENPE o el Sello de Entidad de FNMT.

Saludos

yaedev 07-01-2020 13:50:41

Cita:

Empezado por keys (Mensaje 535108)
Hola a todos.
¿Alguien tiene experiencia con el certificado de aplicación o sabe como van?
Tengo las siguientes dudas y en izenpe no tienen ni idea.
- Cada vez que genero una versión de la aplicación la tengo que firmar segun pone en el punto 6.3 de la documentación. ¿Tengo que pasar por caja y volver a pagar por el certificado?.
- ¿Luego este certificado de aplicación como se distribuye?. Se lo tenemos que dar a los usuarios de la aplicación.

Estoy un poco pez en este tema.

¿Pero el certificado de aplicación es el de certificado de firma de código? Estoy leyendo el último PDF y no veo lo del certificado de aplicación.

Yo tengo experiencia con el certificado de firma de código, ya que actualmente todo el software lo suministro firmado. Cada vez que generas una nueva versión se genera un nuevo fichero ejecutable,ídem si actualizas librerías y demás, si cambia el fichero, debes volverlo a firmar. Pero no tienes que comprar ningún certificado nuevo cada vez. El mismo certificado, mientras esté en su periodo de validez, te vale para ir firmando. Si el fichero está firmado, en sus propiedades verás la pestaña de Firmas digitales, dónde aparece el nombre del firmante, la fecha hora de firma, certificado usado, etc.


Estoy leyendo los últimos PDF que han colgado en la web de gipuzkoa.eus (19/12/2019). Contando certificados que se requieren, si mal no entiendo sólo veo 2, si ya no es necesario el de dispositivo. AL menos para software de escritorio.

1- Certificado de firma de código.
2- certificado para firmar fichero ticket bai

1- El de firma de código es el que debe poseer la empresa desarrolladora de software y que sirve para para firmar el ejecutable.
2- Sería el certificado de persona física, jurídica o representante. El que tiene que sacarse el cliente. Es decir serviría el de la FNMT.

keys 07-01-2020 14:00:13

Cita:

Empezado por yaedev (Mensaje 535110)
¿Pero el certificado de aplicación es el de certificado de firma de código? Estoy leyendo el último PDF y no veo lo del certificado de aplicación.

Yo tengo experiencia con el certificado de firma de código, ya que actualmente todo el software lo suministro firmado. Cada vez que generas una nueva versión se genera un nuevo fichero ejecutable,ídem si actualizas librerías y demás, si cambia el fichero, debes volverlo a firmar. Pero no tienes que comprar ningún certificado nuevo cada vez. El mismo certificado, mientras esté en su periodo de validez, te vale para ir firmando. Si el fichero está firmado, en sus propiedades verás la pestaña de Firmas digitales, dónde aparece el nombre del firmante, la fecha hora de firma, certificado usado, etc.


Estoy leyendo los últimos PDF que han colgado en la web de gipuzkoa.eus (19/12/2019). Contando certificados que se requieren, si mal no entiendo sólo veo 2, si ya no es necesario el de dispositivo. AL menos para software de escritorio.

1- Certificado de firma de código.
2- certificado para firmar fichero ticket bai

1- El de firma de código es el que debe poseer la empresa desarrolladora de software y que sirve para para firmar el ejecutable.
2- Sería el certificado de persona física, jurídica o representante. El que tiene que sacarse el cliente. Es decir serviría el de la FNMT.

El certificado de aplicación es de la firma de código. Unas veces se refieren a el de una manera y otras de la otra.

keys 07-01-2020 14:09:46

Hola a todos otra vez.

¿Alguien tiene el fichero xsd y el wsdl últimos? Ya que en la última versión han añadido por ejemplo el campo Huellas TicketBai->Factura Anterior-->Fecha Expedición Factura anterior y la Firma Factura anterior la han reducido a 100.

En la última documentación que nos enviaron no estan y en la página de gipuzkoa no esta tampoco. que son lo únicos que han sacado algo de momento.

Un Saludo.

bilbur 07-01-2020 17:03:26

Cita:

Empezado por Sistel (Mensaje 535105)
Hola,

Me acaban de responder, de TicketBAI sobre algunos puntos que les había consultado:

No hay obligación de instalar un certificado de dispositivo pero sí de identificar el dispositivo desde el que se factura.
Se requiere identificar los datos “propios” y “unívocos” del dispositivo. Para ello, se dará por válidos los datos de un dispositivo a través del número de serie del equipo> wmic bios get serialnumber, a través del número de serie de la placa base > Wmic baseboard get serialnumber, o de la MAC de la tarjeta de red.
En los dispositivos móviles el dato unívoco del dispositivo será su “IMEI “ .


Saludos


No se si esta contestación de TBAI es literal y por tanto "obligatoria".
Los wmic que indican me dan cadenas vacías he optado, para los ordenadores conectados en red, por los siguientes wmic y en este orden
  1. wmic bios get serialnumber
  2. wmic baseboard get serialnumber
  3. wmic csproduct get uuid (el más aparente)
  4. wmic CPU get ProcessorId
  5. wmic DISKDRIVE GET SerialNumber
  6. y por último exec('getmac');
Si alguien está interesado tengo una función en PHP pendiente de comprobar en producción.

Eso sí, lo de adivinar el IMEI de dispositivos móviles ya me resulta imposible y terminaré optando por la MAC o cualquier identificativo que encuentre.

Neftali [Germán.Estévez] 07-01-2020 18:01:35

A tener en cuenta que WMI es un Servicio.
Hay que asegurarse de que esté en marcha (normalmente sí lo está), pero si en alguna máquina está parado y no se arranca automáticamente es posible que todo eso devuelva vacío.

Código PHP:

net start winmgmt 


Para ponerlo en marcha

bilbur 07-01-2020 19:23:28

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 535114)
A tener en cuenta que WMI es un Servicio.
Hay que asegurarse de que esté en marcha (normalmente sí lo está), pero si en alguna máquina está parado y no se arranca automáticamente es posible que todo eso devuelva vacío.

Código PHP:

net start winmgmt 

Para ponerlo en marcha


Gracias por el apunte

La sintaxis correcta sería

exec('net start winmgmt');
o
shell_exec('net start winmgmt');


Las dos parecen funcionar

Sistel 08-01-2020 09:03:35

Cita:

Empezado por bilbur (Mensaje 535113)
Eso sí, lo de adivinar el IMEI de dispositivos móviles ya me resulta imposible y terminaré optando por la MAC o cualquier identificativo que encuentre.

Me insisten los de TicketBAI con que en el caso de aplicación de facturación en servidor (a la que se accede desde navegador web mediante usuario y contraseña), también tengo que identificar el terminal desde el que se accede.
Y el problema es que, en muchos casos, se accede a la aplicación desde ordenadores o smartphones diversos ajenos a la empresa y en los que, por tanto, no se puede instalar ningún software.
Desde el navegador web creo que, por motivos de seguridad, no se puede obtener ni el IMEI ni la MAC desde la que se accede.

¿Alguien tiene alguna idea de cómo obtener esos valores (o algún otro que identifique al terminal) desde un navegador web para enviarlo al servidor?

Saludos

Neftali [Germán.Estévez] 08-01-2020 12:08:48

Cita:

Empezado por bilbur (Mensaje 535115)
La sintaxis correcta sería...

¿Desde dónde?
Desde la ventana MS-DOS basta con lo primero.




bilbur 08-01-2020 19:17:48

Cita:

Empezado por Sistel (Mensaje 535117)
Me insisten los de TicketBAI con que en el caso de aplicación de facturación en servidor (a la que se accede desde navegador web mediante usuario y contraseña), también tengo que identificar el terminal desde el que se accede.
Y el problema es que, en muchos casos, se accede a la aplicación desde ordenadores o smartphones diversos ajenos a la empresa y en los que, por tanto, no se puede instalar ningún software.
Desde el navegador web creo que, por motivos de seguridad, no se puede obtener ni el IMEI ni la MAC desde la que se accede.

¿Alguien tiene alguna idea de cómo obtener esos valores (o algún otro que identifique al terminal) desde un navegador web para enviarlo al servidor?

Saludos


Cuando se piden imposibles, la solución es imposible.


Al final optaré por:
  1. Las facturas sólo se generan y se firman desde el servidor o desde clientes web en red local (de estos clientes web en local usaré su IP local fija más su MAC)
  2. Los clientes web que acceden fuera de la red local NO generan ni firman facturas. Si es necesario, generan albaranes valorados, incluso el IVA y el cobro del importe.
  3. Los albaranes generados en el punto anterior, serán validados y convertidos en factura y ésta firmada en el servidor o clientes web en red local.
  4. Remitiré la factura firmada a TBAI y al cliente (así cumplo con el cliente y con las haciendas forales)
Con esto me olvido de los números de serie, identificativos y demás exigencias que no puedo cumplir.


Ahora me centraré en los siguientes pasos:
  • completar el fichero xml cuando tengamos los últimos xsd y wsdl
  • completar la firma cuando envíen la política firma y su digest
No obstante, si encuentro algo razonable os lo subiré acá


Gracias

Sistel 08-01-2020 19:41:45

Cita:

Empezado por bilbur (Mensaje 535125)
Cuando se piden imposibles, la solución es imposible.


Al final optaré por:
  1. Las facturas sólo se generan y se firman desde el servidor o desde clientes web en red local (de estos clientes web en local usaré su IP local fija más su MAC)
  2. Los clientes web que acceden fuera de la red local NO generan ni firman facturas. Si es necesario, generan albaranes valorados, incluso el IVA y el cobro del importe.
  3. Los albaranes generados en el punto anterior, serán validados y convertidos en factura y ésta firmada en el servidor o clientes web en red local.
  4. Remitiré la factura firmada a TBAI y al cliente (así cumplo con el cliente y con las haciendas forales)
Con esto me olvido de los números de serie, identificativos y demás exigencias que no puedo cumplir.


Ahora me centraré en los siguientes pasos:
  • completar el fichero xml cuando tengamos los últimos xsd y wsdl
  • completar la firma cuando envíen la política firma y su digest
No obstante, si encuentro algo razonable os lo subiré acá


Gracias

Sí, teniendo la aplicación en un servidor de la red local, no debes tener problema.

Mi caso es más complicado porque la aplicación de facturación no está en un servidor local sino en un servidor en Internet.
Hay múltiples máquinas que pueden acceder, desde diversas redes remotas, para facturar, mediante navegador web con usuario/contraseña.
El servidor en Internet no puede obtener la IP local ni la MAC de la máquina cliente conectada.
Así que tengo que encontrar algún método para identificar, unívocamente, cada máquina cliente.

Saludos

xamminf 09-01-2020 15:35:53

Cita:

Empezado por bilbur (Mensaje 535125)
Cuando se piden imposibles, la solución es imposible.


Al final optaré por:
  1. Las facturas sólo se generan y se firman desde el servidor o desde clientes web en red local (de estos clientes web en local usaré su IP local fija más su MAC)
  2. Los clientes web que acceden fuera de la red local NO generan ni firman facturas. Si es necesario, generan albaranes valorados, incluso el IVA y el cobro del importe.
  3. Los albaranes generados en el punto anterior, serán validados y convertidos en factura y ésta firmada en el servidor o clientes web en red local.
  4. Remitiré la factura firmada a TBAI y al cliente (así cumplo con el cliente y con las haciendas forales)
Con esto me olvido de los números de serie, identificativos y demás exigencias que no puedo cumplir.


Ahora me centraré en los siguientes pasos:
  • completar el fichero xml cuando tengamos los últimos xsd y wsdl
  • completar la firma cuando envíen la política firma y su digest
No obstante, si encuentro algo razonable os lo subiré acá


Gracias


Pero oygan, la implantación de estos sistemas todo son ventajas.
¿ Algún instituto de los muchos... ha calculado lo que cuesta la adaptación, sobre todo porque pone límites a la dinámica propia de las empresas porque tienen que hacer procesos que nada tienen que ver con su forma de hacer habitual ?

Sistel 09-01-2020 15:55:07

Cita:

Empezado por xamminf (Mensaje 535136)
Pero oygan, la implantación de estos sistemas todo son ventajas.
¿ Algún instituto de los muchos... ha calculado lo que cuesta la adaptación, sobre todo porque pone límites a la dinámica propia de las empresas porque tienen que hacer procesos que nada tienen que ver con su forma de hacer habitual ?

El tema no es si es rentable o no para las empresas su implantación (que lógicamente no lo será).
El tema es que da a Hacienda una herramienta inestimable para combatir el fraude fiscal del IVA.
Ya no se podrán alterar o eliminar facturas de la contabilidad y, por otro lado, los inspectores de Hacienda perseguirán a quienes no emitan ticket o factura (pasadas por Ticketbai).
Con eso, la cantidad de millones extra de recaudación conseguida por Hacienda le permitirá subvencionar a las empresas la implantación de Ticketbai.
A Hacienda le saldría rentable incluso subvencionar la implantación al 100% (en principio lo va a hacer al 50% en el Impuesto de Sociedades).

En la conferencia de hace unos días, el Director General de Hacienda de Bizkaia decía que un 80% del comercio defraudaba con esas prácticas de eliminar o modificar facturas.
Si consiguen eliminar ese fraude, las arcas de Hacienda se llenarán.
Para las empresas legales será un alivio que no haya competencia desleal de empresas que eluden parte del pago de IVA.
Y para las empresas tecnológicas de desarrollo de hardware y software será un negocio interesante.

Así, todos contentos, je je je

Saludos

bilbur 09-01-2020 16:37:11

Cita:

Empezado por Sistel (Mensaje 535126)
----
Así que tengo que encontrar algún método para identificar, unívocamente, cada máquina cliente.

Saludos


Lo más que consigo es adivinar la IP pública de quien se conecta por internet al servidor


Como parece que tienes 'mano' y te contestan los de TBAI preguntales si les vale la IP pública + un timespan por ejemplo


Cita:

<html lang="en"> <head> <title>Jquery - get ip address</title> <script type="text/javascript" src="//cdn.jsdelivr.net/jquery/1/jquery.min.js"></script> </head> <body> <h1>Your Ip Address : <span class="ip"></span></h1> <script type="text/javascript"> $.getJSON("-ttp://jsonip.com?callback=?", function (data) { $(".ip").text(data.ip); }); </script> </body> </html>
Un saludo

Sistel 09-01-2020 17:35:36

Cita:

Empezado por bilbur (Mensaje 535138)
Lo más que consigo es adivinar la IP pública de quien se conecta por internet al servidor
Como parece que tienes 'mano' y te contestan los de TBAI preguntales si les vale la IP pública + un timespan por ejemplo

Sí, la IP remota la obtengo sin problemas desde PHP en la variable $_SERVER["REMOTE_ADDR"]
Pero al no ser fija, no sirve para identificar el dispositivo.
Estoy a la espera de que me contesten si se autorizaría, en casos como el mío, utilizar la identificación del servidor, como en los casos de procesos desasistidos de venta, facturación y firma (tiendas online).

Aparte, también les he consultado cómo podría firmar una aplicación de facturación que funciona en TPV y está constituída por varios scripts PHP.
No hay ejecutable y no se pueden firmar los ficheros PHP, internamente, porque se altera el código y dejan de funcionar.

A ver qué soluciones me dan.

Saludos

keys 10-01-2020 08:30:49

Cita:

Empezado por xamminf (Mensaje 535136)
Pero oygan, la implantación de estos sistemas todo son ventajas.
¿ Algún instituto de los muchos... ha calculado lo que cuesta la adaptación, sobre todo porque pone límites a la dinámica propia de las empresas porque tienen que hacer procesos que nada tienen que ver con su forma de hacer habitual ?

En la hacienda de Bizkaia algún lumbreras a calculado que el coste de adaptación de un usuario final sera de unos 150 euros. :eek:


La franja horaria es GMT +2. Ahora son las 11:34:46.

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