Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Ley antifraude 2021 (VERIFACTU) - Programas informáticos (https://www.clubdelphi.com/foros/showthread.php?t=95235)

newtron 21-08-2024 11:05:49

Cita:

Empezado por krilian (Mensaje 557019)
Hola compañeros, una pequeña duda, voy un poco perdido con el tema del envío de la petición, estoy empleando SOAP y no consigo conectarme, sabéis si se tiene que dar de alta a algún servicio , y también si hay un entorno de pruebas? Gracias


Que yo sepa todavía no hay ningún servidor de pruebas operativo.


Saludos.

krilian 21-08-2024 11:47:54

Cita:

Empezado por newtron (Mensaje 557021)
Que yo sepa todavía no hay ningún servidor de pruebas operativo.


Saludos.

¿Entonces todavía no se pueden hacer envíos o es solo es el servidor de pruebas que no esta operativo?

Gracias!

newtron 21-08-2024 12:10:54

Cita:

Empezado por krilian (Mensaje 557022)
¿Entonces todavía no se pueden hacer envíos o es solo es el servidor de pruebas que no esta operativo?

Gracias!


No se pueden hacer envíos de pruebas y mucho menos en producción. Todavía tienen que acabar de desarrollar la normativa técnica.

javipes 22-08-2024 10:21:11

Bueno, con el tema de los certificados, creo que TODO aquel que quiera emitir una factura va a necesitar tener un certificado digital expedido por algun organismo de certificacion oficial, ya que si opta por VERI*FACTU, para subir la factura a la web va a necesitar un certificado de empresa, y si opta por NO VERI*FACTU va a tener que usar un certificado digital para firmar los XML y si por aquello de que como usa el SII no se le aplicara VERI*FACTU o NO VERI*FACTU pues resulta que para subir al SII ya tiene un certificado digital.
Pienso que habrá que ir transmitiendo a TODOS los clientes que dentro de nada, si no tienen ya certificado digital, lo van a necesitar para poder seguir facturando. Vamos esto es lo que yo he entendido desde el principio

ermendalenda 22-08-2024 22:05:17

Cita:

Empezado por javipes (Mensaje 557026)
Bueno, con el tema de los certificados, creo que TODO aquel que quiera emitir una factura va a necesitar tener un certificado digital expedido por algun organismo de certificacion oficial, ya que si opta por VERI*FACTU, para subir la factura a la web va a necesitar un certificado de empresa, y si opta por NO VERI*FACTU va a tener que usar un certificado digital para firmar los XML y si por aquello de que como usa el SII no se le aplicara VERI*FACTU o NO VERI*FACTU pues resulta que para subir al SII ya tiene un certificado digital.
Pienso que habrá que ir transmitiendo a TODOS los clientes que dentro de nada, si no tienen ya certificado digital, lo van a necesitar para poder seguir facturando. Vamos esto es lo que yo he entendido desde el principio

Depende de como lo plantees
Puedes tener los servicios de envíos además dentro servicios a través de un Resp en la nube con un certificado de terceros.
De todas formas hay que esperar a la publicación del desarrollo, ya que podemos llevarnos alguna sorpresa y que también admitan el certificado de dispositivo, que es más seguro, a mi me parece que lo de los certificados personales y de Empresas puede ser un problema de seguridad bastante gordo y me extrañaría que no dieran otras opciones.

ermendalenda 22-08-2024 22:06:40

Cita:

Empezado por javipes (Mensaje 557026)
Bueno, con el tema de los certificados, creo que TODO aquel que quiera emitir una factura va a necesitar tener un certificado digital expedido por algun organismo de certificacion oficial, ya que si opta por VERI*FACTU, para subir la factura a la web va a necesitar un certificado de empresa, y si opta por NO VERI*FACTU va a tener que usar un certificado digital para firmar los XML y si por aquello de que como usa el SII no se le aplicara VERI*FACTU o NO VERI*FACTU pues resulta que para subir al SII ya tiene un certificado digital.
Pienso que habrá que ir transmitiendo a TODOS los clientes que dentro de nada, si no tienen ya certificado digital, lo van a necesitar para poder seguir facturando. Vamos esto es lo que yo he entendido desde el principio

Depende de como lo plantees
Puedes tener los servicios de envíos, además de otros servicios, a través de un Resp en la nube con un certificado de terceros.
De todas formas hay que esperar a la publicación del desarrollo, ya que podemos llevarnos alguna sorpresa y que también admitan el certificado de dispositivo, que es más seguro, a mi me parece que lo de los certificados personales y de Empresas puede ser un problema de seguridad bastante gordo y me extrañaría que no dieran otras opciones.

David M 26-08-2024 11:06:57

Certificado de firma de código
 
Buenas,

¿Alguien ha probado los certificados de firma de código de Certum?

https://www.sslmentor.es/certum/certumcodecloud

Veo que el precio es significativamente menor que los habituales (Sectigo, etc.) y me caduca el que tengo en breve.

Sacado de la web SSLMENTOR:
La firma de archivos se realiza cuando se instala el programa SimplySign Desktop en la estación (PC, Mac), que emula la conexión entre una tarjeta criptográfica física y un lector de tarjetas con un certificado ubicado en la nube. Utilizando la aplicación móvil SimplySign, se genera un token de 6 dígitos, lo que hace que el certificado esté disponible para firmar durante aproximadamente 2 horas. Luego, puedes firmar archivos ilimitados en la estación, por ejemplo, utilizando la aplicación Microsoft SignTool como estás acostumbrado. Después de la expiración, es necesario ingresar un nuevo token desde el teléfono móvil (funcionalmente, es similar a la aplicación Google Authenticator, por ejemplo). La aplicación SimplySign y SimplySign Desktop están disponibles de forma gratuita.

Saludos,
David M.

skatologiko 26-08-2024 22:45:42

1 Archivos Adjunto(s)
A falta de que exista un entorno de pruebas, aquí dejo un ejemplo de un archivo xml que he confeccionado, partiendo de la base de los que estamos generando en nuestra aplicación para Ticket Bai, pero con la estructura de lo que está publicado hasta ahora por la AEAT, para que a alguien le siga de noción, y también para preguntar si alguien sabe qué hay que poner al principio en lugar de <T:TicketBai xmlns:T="urn:ticketbai:emision"> .

Está sin firmar y los datos son de prueba, obviamente

xevi 30-08-2024 09:09:16

1 Archivos Adjunto(s)
Yo veo que el xml, hasta hoy, debería de tener esa otra estructura...

Código:

<sum:AltaFactuSistemaFacturacion xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd" xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<sum1:Cabecera>
<sum1:ObligadoEmision>
<sum1:NombreRazon>JUAN SPAIN</sum1:NombreRazon>
<sum1:NIF>A99800005</sum1:NIF>
</sum1:ObligadoEmision>
<sum1:RemisionVoluntaria>
<sum1:Incidencia>S</sum1:Incidencia>
</sum1:RemisionVoluntaria>
</sum1:Cabecera>
<sum:RegistroFactura>
<sum:RegistroAlta>
<sum1:IDVersion>1.0</sum1:IDVersion>
<sum1:IDFactura>
<sum1:IDEmisorFactura>
<sum1:NIF>A99800005</sum1:NIF>
</sum1:IDEmisorFactura>
<sum1:NumSerieFacturaEmisor>1.1.3.1</sum1:NumSerieFacturaEmisor>
<sum1:FechaExpedicionFacturaEmisor>09-04-2024</sum1:FechaExpedicionFacturaEmisor>
</sum1:IDFactura>
<sum1:NombreRazonEmisor>JUAN SPAIN</sum1:NombreRazonEmisor>
<sum1:TipoFactura>F1</sum1:TipoFactura>
<sum1:DescripcionOperacion>Factura</sum1:DescripcionOperacion>
<sum1:Destinatarios>
<sum1:IDDestinatario>
<sum1:NombreRazon>ESPAOL JUAN</sum1:NombreRazon>
<sum1:NIF>A99800005</sum1:NIF>
</sum1:IDDestinatario>
</sum1:Destinatarios>
<sum1:Desglose>
<sum1:DetalleDesglose>
<sum1:ClaveRegimen>18</sum1:ClaveRegimen>
<sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
<sum1:TipoImpositivo>10.00</sum1:TipoImpositivo>
<sum1:BaseImponibleOimporteNoSujeto>16.36</sum1:BaseImponibleOimporteNoSujeto>
<sum1:CuotaRepercutida>1.64</sum1:CuotaRepercutida>
<sum1:TipoRecargoEquivalencia>1.40</sum1:TipoRecargoEquivalencia>
<sum1:CuotaRecargoEquivalencia>0.23</sum1:CuotaRecargoEquivalencia>
</sum1:DetalleDesglose>
</sum1:Desglose>
<sum1:ImporteTotal>18.23</sum1:ImporteTotal>
<sum1:CuotaTotal>1.87</sum1:CuotaTotal>
<sum1:Encadenamiento>
<sum1:RegistroAnterior>
<sum1:IDEmisorFactura>
<sum1:NIF>A99800005</sum1:NIF>
</sum1:IDEmisorFactura>
<sum1:NumSerieFactura>1.1.1.8</sum1:NumSerieFactura>
<sum1:FechaExpedicionFactura>09-04-2024</sum1:FechaExpedicionFactura>
<sum1:Huella>F698C32C481694372C471AF98A2B6D4E845B390A8F4C34820ED91EF9C61EE072</sum1:Huella>
</sum1:RegistroAnterior>
</sum1:Encadenamiento>
<sum1:SistemaInformatico>
<sum1:NombreRazon>JUAN SPAIN</sum1:NombreRazon>
<sum1:NIF>A99800005</sum1:NIF>
<sum1:NombreSistemaInformatico>VERIFACTU0000PRUEBA</sum1:NombreSistemaInformatico>
<sum1:IdSistemaInformatico>01</sum1:IdSistemaInformatico>
<sum1:Version>1.0.03</sum1:Version>
<sum1:NumeroInstalacion>A99800005 NCentro:1 NTPV:1</sum1:NumeroInstalacion>
<sum1:TipoUsoPosibleSoloVerifactu>S</sum1:TipoUsoPosibleSoloVerifactu>
<sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
<sum1:NumeroOTAlta>2</sum1:NumeroOTAlta>
</sum1:SistemaInformatico>
<sum1:FechaHoraHusoGenRegistro>2024-04-09T22:59:37+01</sum1:FechaHoraHusoGenRegistro>
</sum:RegistroAlta>
<sum1:TipoHuella>01</sum1:TipoHuella>
<sum1:Huella>5C337FA56077F950EA7622CE3D52AD8A6E4B4AD22337BDED0B96D5909D929D1D</sum1:Huella>
</sum:RegistroFactura>
</sum:AltaFactuSistemaFacturacion>

Hasta donde yo llego

ermendalenda 30-08-2024 20:43:36

Hola algunos nodos han cambiado en la ultima version

Código PHP:

<?xml version="1.0" encoding="UTF-8"?>
<sum:AltaFactuSistemaFacturacion xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd" xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<sum1:Cabecera>
<sum1:ObligadoEmision>
<sum1:NombreRazon>JUAN SPAIN</sum1:NombreRazon>
<sum1:NIF>A99800005</sum1:NIF>
</sum1:ObligadoEmision>
</sum1:Cabecera>
<sum:RegistroFactura>
<sum:RegistroAlta>
<sum1:IDVersion>1.0</sum1:IDVersion>
<sum1:IDFactura>
<sum1:IDEmisorFactura>A99800005</sum1:IDEmisorFactura>
<sum1:NumSerieFactura>2-52.2.3</sum1:NumSerieFactura>
<sum1:FechaExpedicionFactura>30-08-2024</sum1:FechaExpedicionFactura>
</sum1:IDFactura>
<sum1:NombreRazonEmisor>JUAN SPAIN</sum1:NombreRazonEmisor>
<sum1:TipoFactura>F1</sum1:TipoFactura>
<sum1:DescripcionOperacion>Factura</sum1:DescripcionOperacion>
<sum1:Destinatarios>
<sum1:IDDestinatario>
<sum1:NombreRazon>ESPANOL JUAN</sum1:NombreRazon>
<sum1:NIF>A99800005</sum1:NIF>
</sum1:IDDestinatario>
</sum1:Destinatarios>
<sum1:Desglose>
<sum1:DetalleDesglose>
<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
<sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
<sum1:TipoImpositivo>10.00</sum1:TipoImpositivo>
<sum1:BaseImponibleOimporteNoSujeto>3000.00</sum1:BaseImponibleOimporteNoSujeto>
<sum1:CuotaRepercutida>300.00</sum1:CuotaRepercutida>
</sum1:DetalleDesglose>
</sum1:Desglose>
<sum1:CuotaTotal>300.00</sum1:CuotaTotal>
<sum1:ImporteTotal>3300.00</sum1:ImporteTotal>
<sum1:Encadenamiento>
<sum1:RegistroAnterior>
<sum1:IDEmisorFactura>A99800005</sum1:IDEmisorFactura>
<sum1:NumSerieFactura>1-52.2.3</sum1:NumSerieFactura>
<sum1:FechaExpedicionFactura>30-08-2024</sum1:FechaExpedicionFactura>
<sum1:Huella>3529A362671D5172B1ADC28B806682E4592449F16D4B8A88D9029C6207F95A97</sum1:Huella>
</sum1:RegistroAnterior>
</sum1:Encadenamiento>
<sum1:SistemaInformatico>
<sum1:NombreRazon>SOFTWARE TPV</sum1:NombreRazon>
<sum1:NIF>00000006Y</sum1:NIF>
<sum1:NombreSistemaInformatico>VERIFACTU0000PRUEBA</sum1:NombreSistemaInformatico>
<sum1:IdSistemaInformatico>01</sum1:IdSistemaInformatico>
<sum1:Version>1.0.03</sum1:Version>
<sum1:NumeroInstalacion>0000000006Y NCentro:52 NTPV:2</sum1:NumeroInstalacion>
<sum1:TipoUsoPosibleSoloVerifactu>S</sum1:TipoUsoPosibleSoloVerifactu>
<sum1:TipoUsoPosibleMultiOT>N</sum1:TipoUsoPosibleMultiOT>
</sum1:SistemaInformatico><sum1:FechaHoraHusoGenRegistro>2024-08-30T19:59:45+02:00</sum1:FechaHoraHusoGenRegistro>
<sum1:TipoHuella>01</sum1:TipoHuella>
<sum1:Huella>7D003FF902DFBA03670C11D9083D7480195F3D42E0F3E40C85CDCF881B126B48</sum1:Huella>
</sum:RegistroAlta>
</sum:RegistroFactura>
</sum:AltaFactuSistemaFacturacion>


pararegistrarme 31-08-2024 10:12:53

Clarificar mensajes XML obtenidos de THTTPRIO
 
Un fragmento de los mensajes que se capturan en "OnBeforeExecute" del "THTTPRIO" es del estilo a este:

Código:

<?xml version="1.0"?> ...
.
.
.

 <AltaFactuSistemaFacturacion SOAP-ENC:id="1"  xsi:type="NS2:AltaFactuSistemaFacturacion">                 
    <Cabecera SOAP-ENC:id="2" xsi:type="NS3:Cabecera">                     
      <IDVersion xsi:type="NS3:VersionType">1.0</IDVersion>                     
      <ObligadoEmision SOAP-ENC:id="3"  xsi:type="NS3:PersonaFisicaJuridicaESType">                       
...

Muy engorroso de leer. ¿Alguien conoce alguna forma de eliminar la parte "sobrante" de las etiquetas?
Es decir:


Código:


Esta es la línea que tenemos: <Cabecera SOAP-ENC:id="2" xsi:type="NS3:Cabecera">
Línea que quiero obtener: <Cabecera>


O este otro caso:
Lo que obtenemos: <IDVersion xsi:type="NS3:VersionType">1.0</IDVersion>
Lo que quiero obtener: <IDVersion>1.0</IDVersion>


Gracias de antemano por vuestro tiempo.

ermendalenda 01-09-2024 01:19:58

Cita:

Empezado por pararegistrarme (Mensaje 557065)
Un fragmento de los mensajes que se capturan en "OnBeforeExecute" del "THTTPRIO" es del estilo a este:

Código:

<?xml version="1.0"?> ...
.
.

 <AltaFactuSistemaFacturacion SOAP-ENC:id="1"  xsi:type="NS2:AltaFactuSistemaFacturacion">                 
    <Cabecera SOAP-ENC:id="2" xsi:type="NS3:Cabecera">                     
      <IDVersion xsi:type="NS3:VersionType">1.0</IDVersion>                     
      <ObligadoEmision SOAP-ENC:id="3"  xsi:type="NS3:PersonaFisicaJuridicaESType">                       
...

Muy engorroso de leer. ¿Alguien conoce alguna forma de eliminar la parte "sobrante" de las etiquetas?
Es decir:


Código:


Esta es la línea que tenemos: <Cabecera SOAP-ENC:id="2" xsi:type="NS3:Cabecera">
Línea que quiero obtener: <Cabecera>


O este otro caso:
Lo que obtenemos: <IDVersion xsi:type="NS3:VersionType">1.0</IDVersion>
Lo que quiero obtener: <IDVersion>1.0</IDVersion>


Gracias de antemano por vuestro tiempo.

supongo que una forma seria capturar el string completo en una variable y usar la función stringreplace(stringcapturado,cadenassustituir,'',
.rfReplaceAll) con cada cadena que quieras eliminar

ermendalenda 02-09-2024 19:08:23

Siguen los lios
 
Despues de tanto tiempo con la ley Crea y crece y la Ley antifraude siguen mezclando ambas y metiendo Verifactu y Factura eletrónica en una batidora:
https://www.externalix.com/retraso-f...a-obligatoria/

Casimiro Noteví 02-09-2024 19:11:19

Cita:

Empezado por ermendalenda (Mensaje 557071)
Despues de tanto tiempo con la ley Crea y crece y la Ley antifraude siguen mezclando ambas y metiendo Verifactu y Factura eletrónica en una batidora:
https://www.externalix.com/retraso-f...a-obligatoria/


Ya sabes, "en río revuelto... ganancia de pescadores".
Así que lo revuelven todo, confunden a la gente y así "pescan" a algunos.

newtron 02-09-2024 19:59:46

Pufffffffffffffff.... pues anda que están informados estos...


Entre los que no se enteran y divulgan información errónea y los que quieren pescar engañando a las empresas y diciéndoles que ya tienen sus sistemas preparados para estas "ñapas" vamos aviados.


Saludos.

David M 05-09-2024 09:29:03

Cita:

Empezado por David M (Mensaje 557037)
Buenas,

¿Alguien ha probado los certificados de firma de código de Certum?

https://www.sslmentor.es/certum/certumcodecloud

Veo que el precio es significativamente menor que los habituales (Sectigo, etc.) y me caduca el que tengo en breve.

Sacado de la web SSLMENTOR:
La firma de archivos se realiza cuando se instala el programa SimplySign Desktop en la estación (PC, Mac), que emula la conexión entre una tarjeta criptográfica física y un lector de tarjetas con un certificado ubicado en la nube. Utilizando la aplicación móvil SimplySign, se genera un token de 6 dígitos, lo que hace que el certificado esté disponible para firmar durante aproximadamente 2 horas. Luego, puedes firmar archivos ilimitados en la estación, por ejemplo, utilizando la aplicación Microsoft SignTool como estás acostumbrado. Después de la expiración, es necesario ingresar un nuevo token desde el teléfono móvil (funcionalmente, es similar a la aplicación Google Authenticator, por ejemplo). La aplicación SimplySign y SimplySign Desktop están disponibles de forma gratuita.

Saludos,
David M.

Me respondo a mí mismo, funciona perfectamente para firmar aplicaciones. En lugar del dispositivo físico al que obligan últimamente, te descargas una app en el móvil donde te generan un token cuando vayas a realizar la firma y deja la sesión iniciada durante 2 horas para firmar archivos de forma ilimitada.
Tenedlo en cuenta, cuesta menos de 100€ al año en la modalidad de 3 años.

Saludos,
David M.

newtron 05-09-2024 10:29:22

Divagaciones
 
Hola a tod@s.


Estoy dándole vueltas al tema de VeriFactu/No Verifactu y (si no me equivoco) parece que en los programas "No VeriFactu" hay que guardar la factura en un fichero XML firmado para que en caso de requerimiento se puedan enviar del tirón. Yo estaba preparando el tema VeriFactu con los componentes SOAP que generan y envían el fichero pero estoy viendo que si no se va a enviar por ser "No VeriFactu" no tengo forma de generar el fichero XML para firmarlo y guardarlo.


Mi pregunta es ¿hay alguna opción de generar el fichero XML con el componente y sin enviarlo o hay que crear el XML "a pelo" para poder firmarlo y guardarlo?


Gracias y un saludo.

pablog2k 05-09-2024 11:11:56

Si utilizas los componentes SOAP de delphi (THTTPRIO), puedes hacer la 'trampa' de en el evento BeforeExecute, guardar el XML y luego cancelar.
Algo así:

Código Delphi [-]
    if(SaveDialog.Execute) then
    begin
      ss:=TFileStream.Create(SaveDialog.FileName, fmCreate);
      SOAPRequest.Position := 0;
      ss.CopyFrom(SOAPRequest,SOAPRequest.Size);
      ss.Free;
      SOAPRequest.Position := 0;
    end;
    raise Exception.Create('XML exportado');

Donde ss es un TFileStream
A nosotros nos funciona

newtron 05-09-2024 11:17:43

Si, eso ya lo uso para el SII pero para poder interceptar ese evento tienes que enviar mediante el componente (que no es la idea).



Gracias y un saludo.

novatico 06-09-2024 16:54:22

Nuevas publicaciones
 
Han publicado detalle de la Firma Electrónica, del QR y del Hash

Se pueden ver en:
https://www.agenciatributaria.es/AEA...ERI_FACTU.html

Un saludo.


La franja horaria es GMT +2. Ahora son las 20:37:20.

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