Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Envío de registros y sus respuestas (https://www.clubdelphi.com/foros/forumdisplay.php?f=66)
-   -   Demo con código Verifactu.dll para (delphi 7) (https://www.clubdelphi.com/foros/showthread.php?t=97004)

seccion_31 10-07-2025 13:45:41

Cita:

Empezado por starlet (Mensaje 566264)
Te pongo un ejemplo con los nodos:
Código:

<RegFactuSistemaFacturacion>
 <Cabecera>
 <ObligadoEmision>
  <NombreRazon>EMPRESA PRUEBA</NombreRazon>
  <NIF>00000006Y</NIF>
  </ObligadoEmision>
  </Cabecera>
 <RegistroFactura>
 <RegistroAlta>
  <IDVersion>1.0</IDVersion>
 <IDFactura>
  <IDEmisorFactura>00000006Y</IDEmisorFactura>
  <NumSerieFactura>2312-5</NumSerieFactura>
  <FechaExpedicionFactura>16-06-2025</FechaExpedicionFactura>
  </IDFactura>
  <RefExterna>20250906000023000001002000000005</RefExterna>
  <NombreRazonEmisor>EMPRESA</NombreRazonEmisor>
  <TipoFactura>F3</TipoFactura>
 <FacturasSustituidas>
        <IDFacturaSustituida>
                  <IDEmisorFactura>00000006Y</IDEmisorFactura>
                  <NumSerieFactura>23.1.1-6</NumSerieFactura>
                  <FechaExpedicionFactura>06-09-2025</FechaExpedicionFactura>
          </IDFacturaSustituida>
  </FacturasSustituidas>
  <DescripcionOperacion>CANJE DE TIQUET/S PETICION CLIENTE</DescripcionOperacion>
 <Destinatarios>
 <IDDestinatario>
  <NombreRazon>natural</NombreRazon>
  <NIF>BXXXXXXXX</NIF>
  </IDDestinatario>
  </Destinatarios>
 <Desglose>
 <DetalleDesglose>
  <ClaveRegimen>01</ClaveRegimen>
  <CalificacionOperacion>S1</CalificacionOperacion>
  <TipoImpositivo>4.00</TipoImpositivo>
  <BaseImponibleOimporteNoSujeto>2.88</BaseImponibleOimporteNoSujeto>
  <CuotaRepercutida>0.12</CuotaRepercutida>
  </DetalleDesglose>
  </Desglose>
  <CuotaTotal>0.12</CuotaTotal>
  <ImporteTotal>3.00</ImporteTotal>
 <Encadenamiento>
 <RegistroAnterior>
  <IDEmisorFactura>00000006Y</IDEmisorFactura>
  <NumSerieFactura>23.1.1-6</NumSerieFactura>
  <FechaExpedicionFactura>06-09-2025</FechaExpedicionFactura>
  <Huella>D595EAF45EDF1A18D3602AE2EC7D84C1F9F86A2D991622CDE2FF27A0F4254849</Huella>
  </RegistroAnterior>
  </Encadenamiento>
 <SistemaInformatico>
  <NombreRazon>papara</NombreRazon>
  <NIF>AXXXXXXXX</NIF>
  <NombreSistemaInformatico>pruebas</NombreSistemaInformatico>
  <IdSistemaInformatico>01</IdSistemaInformatico>
  <Version>T.1.0.7275-P.1.00.0759-C.1.00.0003</Version>
  <NumeroInstalacion>00000006Y NCentro:23 NTPV:1</NumeroInstalacion>
  <TipoUsoPosibleSoloVerifactu>S</TipoUsoPosibleSoloVerifactu>
  <TipoUsoPosibleMultiOT>N</TipoUsoPosibleMultiOT>
  <IndicadorMultiplesOT>N</IndicadorMultiplesOT>
  </SistemaInformatico>
  <FechaHoraHusoGenRegistro>2025-09-06T21:36:17+02:00</FechaHoraHusoGenRegistro>
  <TipoHuella>01</TipoHuella>
  <Huella>98171943CECAD4369F71E7124A5E31E9A11BAA8C8B3991C36E69CAD32D65B80F</Huella>
  </RegistroAlta>
  </RegistroFactura>
  </RegFactuSistemaFacturacion>

aparentemente es añadir este nodo por tantas facturas como se sustituyan en la F3.

Código:

<IDFacturaSustituida>
  <IDEmisorFactura>00000006Y</IDEmisorFactura>
  <NumSerieFactura>23.1.X-XX</NumSerieFactura>
  <FechaExpedicionFactura>XX-09-2025</FechaExpedicionFactura>
</IDFacturaSustituida>

Si puedes hacerlo sería fantástico. Me ofrezco voluntario para probarlo.

Mil gracias.

no puedo colocar un array dinamico de IDFacturaSustituida tendria que haber un limite, ¿por ejemplo 5 tickets para cambiarlos a una factura? (si lo h entendido bien lo que es la F3)

starlet 10-07-2025 14:02:33

En teoría se pueden sustituir varias facturas simplificadas en 1 nominal, pero si lo ves más sencillo en 1 también vale pq en la gran mayoría de los casos 1 simplificada -> 1 nominal .

El nodo es <FacturasSustituidas> y dentro el array.

Código:

<FacturasSustituidas>
        <IDFacturaSustituida>
                  <IDEmisorFactura>00000006Y</IDEmisorFactura>
                  <NumSerieFactura>23.1.1-6</NumSerieFactura>
                  <FechaExpedicionFactura>06-09-2025</FechaExpedicionFactura>
          </IDFacturaSustituida>
  </FacturasSustituidas>


seccion_31 11-07-2025 12:49:58

La versión 4.6 incluirá el tipo de factura F3.

Saludos !

starlet 11-07-2025 15:57:16

En teoría se pueden sustituir varias facturas simplificadas en 1 nominal, pero si lo ves más sencillo en 1 también vale pq en la gran mayoría de los casos 1 simplificada -> 1 nominal .

El nodo es <FacturasSustituidas> y dentro el array.

Código:

<FacturasSustituidas>
        <IDFacturaSustituida>
                  <IDEmisorFactura>00000006Y</IDEmisorFactura>
                  <NumSerieFactura>23.1.1-6</NumSerieFactura>
                  <FechaExpedicionFactura>06-09-2025</FechaExpedicionFactura>
          </IDFacturaSustituida>
  </FacturasSustituidas>


Neftali [Germán.Estévez] 14-07-2025 08:27:29

Ya está la subida la versión 4.6a
Que como ha comentado [sección_31] incluye las facturas de tipo F3

Está en el FTP del club:
https://terawiki.clubdelphi.com/Otro...%20Delphi%207/

mqm 14-07-2025 13:37:39

Da igual si tienes variuas series. Simpre es sobre la ultima y por lo que he visto hasta ahora lo esta haciendo bien.

seccion_31 14-07-2025 20:44:16

por cierto, yo diria que la ayuda de la 4.6a esta algo mal detallada sobre la F3, creo que con indicar los datos de cliente, emision, y el record de sustitucion deberia funcionar. Vamos que no lo tengo claro, pero funcionar, funciona.

Saludos !

: )

Matorral 16-07-2025 21:05:45

Consulta de RF enviados
 
Buenas tardes¡¡

Gracias anticipadas de nuevo a todos por el enorme esfuerzo.

Acabo de darme cuenta de que al realizar la consulta de la AEAT de registros de facturación enviados, me aparecen todos como Subsanacion = 'S' y PrimerRegistro = 'S'.

La consulta la hago por medio del componente, capturando los registros en el evento onRegConsultaD7.

Los RF los envío sin valor en el campo Subsanacion, y trazando la función AddRegistroInicial el valor fPrimero tiene valor False, no entiendo por que al hacer la consulta me devuelve 'S' en esos dos campos (Subsanacion y RegistroInicial).

El xml de envio esta bien generado y el encadenamiento es correcto. Y el xml de respuesta también es correcto

A alguien le pasa esto?

Matorral 16-07-2025 21:34:30

evento onRegTrasEspera
 
Quería comentaros, por si le sirve a alguien, que estoy utilizando el evento onRegTrasEspera para gestionar la cola de envío, y va de cine.

Mi software es de hostelería y comercio, y en principio había pensado en realizar los envíos cada vez que se cobra una factura, pero no las tenia todas conmigo, porque en muchos bares y comercios realizan varios cobros por minuto, y quien sabe si los banearían.

Para gestionar la cola de envíos hago lo siguiente:

Cuando cobro una factura compruebo la propiedad AutoEspera. Si está a False la pongo a true y realizo el envío. Y si esta a True guardo la factura en la cola (FIFO) sin realizar envío.

Código Delphi [-]
        if VerifactuD7.AutoEspera=false then begin    // si esta a false se puede enviar
          try
            HazAvisoVerifactu('Enviando registro de facturación ... ');

            VerifactuD7.AutoEspera:=true;    // ponemos en marcha onTrasEspera

            enviarVerifactu_Simplificada( cSer,cTicket,'A'); // Enviamos Verifactu

            CierraAvisoVerifactu(Proc_Ventas);

          except
            showmessage('Fallo al enviar Factura');
          end;
        end
        else
          Graba_Pendiente_Envio(cSerieTickets,TTicket.FieldByName('SERIE').AsString,TTicket.FieldByName('CODIG  O').AsString,'S', 'N', 'N', 'N');

Luego en el evento onTrasEspera, si hay registros pendientes realizo el envío de las facturas guardadas en cola y si no hay registros pendientes de envío vuelvo a poner a False la propiedad AutoEspera.

Código Delphi [-]
/////// VERIFACTU
// autoenvio automatico de facturas pendientes REGISTROSPENDIENTESENVIO.DB
procedure TProc_Ventas.OnTrasEsperaD7( Sender: TObject );
begin

  if TRegistrosPendientesEnvio.IsEmpty then
    VerifactuD7.AutoEspera:=False
  else
    enviarVerifactu_Pendientes;

end;

Espero que le pueda servir a alguien.

seccion_31 17-07-2025 10:20:15

Cita:

Empezado por Matorral (Mensaje 566392)
Buenas tardes¡¡

Gracias anticipadas de nuevo a todos por el enorme esfuerzo.

Acabo de darme cuenta de que al realizar la consulta de la AEAT de registros de facturación enviados, me aparecen todos como Subsanacion = 'S' y PrimerRegistro = 'S'.

La consulta la hago por medio del componente, capturando los registros en el evento onRegConsultaD7.

Los RF los envío sin valor en el campo Subsanacion, y trazando la función AddRegistroInicial el valor fPrimero tiene valor False, no entiendo por que al hacer la consulta me devuelve 'S' en esos dos campos (Subsanacion y RegistroInicial).

El xml de envio esta bien generado y el encadenamiento es correcto. Y el xml de respuesta también es correcto

A alguien le pasa esto?


uuummm...

revisa en la web de la AEAT como estan esos registros.

Si en la WEB DE LA AEAT estan correctos (es decir no aparece subsanacion y no son primer registro), entonces sera un problema de proceso de la consulta y lo reviso. Dimelo. (mira tambien si en el XML subsanacion no esta ni primer registro)

(Yo no he proceso la consulta para obtener de vuelta esos valores, me fijo en otros campos, de ahi que quizas esten mal procesados)

Saludos !

seccion_31 17-07-2025 10:22:08

:) por cierto a estas alturas, me gustaría saber cuantos están usando mi componente... por curiosidad.


el timer del que habla [matorral] fue una aportación de [Darkdudae]

rafa1963 17-07-2025 11:15:12

re
 
Buenos días seccion_31, Yo lo estoy utilizando en mi aplicación personal (en modo prueba) y va todo de lujo, si bien, lo que no he sido capaz aún es de insertar la firma en el signature. Todo funciona correctamente y voy adaptándolo según los mensajes de respuesta de la aeta y con los apreciados consejos que posteais.
Un millón de gracias a todos

Matorral 17-07-2025 11:35:15

Cita:

Empezado por seccion_31 (Mensaje 566402)
:) por cierto a estas alturas, me gustaría saber cuantos están usando mi componente... por curiosidad.

el timer del que habla [matorral] fue una aportación de [Darkdudae]

Yo sigo el componente desde el inicio. Mi aportación fue nula porque no llego al nivel. Siempre fui a remolque en esto de Verifactu. No sabia por donde empezar.
Me disteis la vida, porque ni por asombro podria conseguir todo esto por mi mismo. Creo que uno de los dias mas felices de mi vida fue cuando envie un RF a Hacienda y me contesto "Correcto" :D

A estas alturas aun sigo peleando con la implementación del componente en mis aplicaciones y lo que mas me aterra ahora mismo es el tratamiento de los errores que devuelva (aceptado con errores, etc ... ), porque aun no me he puesto con ello.

Pero que de verdad que os debo la vida¡¡

v:-)v||-||#:-)#

elguille 17-07-2025 11:40:58

Cita:

Empezado por seccion_31 (Mensaje 566402)
:) por cierto a estas alturas, me gustaría saber cuantos están usando mi componente... por curiosidad.


el timer del que habla [matorral] fue una aportación de [Darkdudae]

+1 Muchísimas gracias a ti y a todos los colaboradores

Matorral 17-07-2025 11:41:00

Cita:

Empezado por seccion_31 (Mensaje 566401)
uuummm...

revisa en la web de la AEAT como estan esos registros.

Si en la WEB DE LA AEAT estan correctos (es decir no aparece subsanacion y no son primer registro), entonces sera un problema de proceso de la consulta y lo reviso. Dimelo. (mira tambien si en el XML subsanacion no esta ni primer registro)

(Yo no he proceso la consulta para obtener de vuelta esos valores, me fijo en otros campos, de ahi que quizas esten mal procesados)

Saludos !

Alguien podría indicar un link a la web de la AEAT para consultar los envíos a la plataforma de pruebas? En el mensaje nº 1 no lo encontre.

seccion_31 17-07-2025 12:56:41

Cita:

Empezado por Matorral (Mensaje 566411)
Alguien podría indicar un link a la web de la AEAT para consultar los envíos a la plataforma de pruebas? En el mensaje nº 1 no lo encontre.

https://preportal.aeat.es/PRE-Exteri...cturacion.html

ramherfer 17-07-2025 13:23:49

[quote=seccion_31;566402]:) por cierto a estas alturas, me gustaría saber cuantos están usando mi componente... por curiosidad.

Yo y no me cansaré de dar las gracias primero a ti y despues a todos aquellos que han colaborado para que funcione correctamente este magnífico componente.
De momento no he detectado ningún problema

Matorral 17-07-2025 16:15:18

Cita:

Empezado por seccion_31 (Mensaje 566422)

Buenas tardes¡¡

Acabo de comprobar los registros enviados y las dos columnas me aparecen en blanco (Subsanación y Sin registro previo). O sea, que el componente envía bien la información. :).

seccion_31 17-07-2025 19:04:44

Cita:

Empezado por Matorral (Mensaje 566428)
Buenas tardes¡¡

Acabo de comprobar los registros enviados y las dos columnas me aparecen en blanco (Subsanación y Sin registro previo). O sea, que el componente envía bien la información. :).

acabo de revisar y pasa lo que ya anuncie con otros tipos en este mismo hilo.

En tipos serializados esa importación de delphi NO permite saber si tiene valor asignado o no.

La solucion es modificar el tipo SubsanacionType = (S, N);

y dejarlo:

SubsanacionType = (stNone, S, N);

Y cambiar algo el codigo de proceso de Consulta y asi funciona correcto.

Esto pasa con otros tipos.

Pero me parece muy intrusivo.

¿alguna idea mejor?

Saludos !

seccion_31 17-07-2025 19:46:08

Cita:

Empezado por seccion_31 (Mensaje 566433)
acabo de revisar y pasa lo que ya anuncie con otros tipos en este mismo hilo.

En tipos serializados esa importación de delphi NO permite saber si tiene valor asignado o no.

La solucion es modificar el tipo SubsanacionType = (S, N);

y dejarlo:

SubsanacionType = (stNone, S, N);

Y cambiar algo el codigo de proceso de Consulta y asi funciona correcto.

Esto pasa con otros tipos.

Pero me parece muy intrusivo.

¿alguna idea mejor?

Saludos !

Alterando un poco el codigo del interface soap y publicando las funciones _Specified creo que ya funciona !

Saludos !

seccion_31 18-07-2025 08:48:04

Cita:

Empezado por Matorral (Mensaje 566428)
Buenas tardes¡¡

Acabo de comprobar los registros enviados y las dos columnas me aparecen en blanco (Subsanación y Sin registro previo). O sea, que el componente envía bien la información. :).

te he enviado la 4.7 para que compruebes si esta corregido antes de enviarla al foro.

ya nos diras si funciona bien.

saludos !

Matorral 18-07-2025 09:02:30

Cita:

Empezado por seccion_31 (Mensaje 566439)
te he enviado la 4.7 para que compruebes si esta corregido antes de enviarla al foro.

ya nos diras si funciona bien.

saludos !

Ahora si funciona¡¡ Aparecen las dos columnas sin valor.

Matorral 18-07-2025 09:03:17

Cita:

Empezado por Matorral (Mensaje 566442)
Ahora si funciona¡¡ Aparecen las dos columnas sin valor.

millon de gracias¡¡:)

DarkDudae 18-07-2025 09:16:40

Cita:

Empezado por Matorral (Mensaje 566393)
Quería comentaros, por si le sirve a alguien, que estoy utilizando el evento onRegTrasEspera para gestionar la cola de envío, y va de cine.

Mi software es de hostelería y comercio, y en principio había pensado en realizar los envíos cada vez que se cobra una factura, pero no las tenia todas conmigo, porque en muchos bares y comercios realizan varios cobros por minuto, y quien sabe si los banearían.

Para gestionar la cola de envíos hago lo siguiente:

Cuando cobro una factura compruebo la propiedad AutoEspera. Si está a False la pongo a true y realizo el envío. Y si esta a True guardo la factura en la cola (FIFO) sin realizar envío.

Código Delphi [-]
        if VerifactuD7.AutoEspera=false then begin    // si esta a false se puede enviar
          try
            HazAvisoVerifactu('Enviando registro de facturación ... ');

            VerifactuD7.AutoEspera:=true;    // ponemos en marcha onTrasEspera

            enviarVerifactu_Simplificada( cSer,cTicket,'A'); // Enviamos Verifactu

            CierraAvisoVerifactu(Proc_Ventas);

          except
            showmessage('Fallo al enviar Factura');
          end;
        end
        else
          Graba_Pendiente_Envio(cSerieTickets,TTicket.FieldByName('SERIE').AsString,TTicket.FieldByName('CODIG  O').AsString,'S', 'N', 'N', 'N');

Luego en el evento onTrasEspera, si hay registros pendientes realizo el envío de las facturas guardadas en cola y si no hay registros pendientes de envío vuelvo a poner a False la propiedad AutoEspera.

Código Delphi [-]
/////// VERIFACTU
// autoenvio automatico de facturas pendientes REGISTROSPENDIENTESENVIO.DB
procedure TProc_Ventas.OnTrasEsperaD7( Sender: TObject );
begin

  if TRegistrosPendientesEnvio.IsEmpty then
    VerifactuD7.AutoEspera:=False
  else
    enviarVerifactu_Pendientes;

end;

Espero que le pueda servir a alguien.

Vaya, me ha alegrado ver que mi pequeña aportación al componente le ha servido a alguien. Pensaba que era el único que usaba algo así.
Comentarte que el componente intercepta el tiempo de espera entre operaciones devuelto en cada envío desde la AEAT para modificar el timer interno que se usa antes de lanzar el evento OnTrasEspera. Se incorporó para hacer exactamente lo que estás haciendo y lo estás usando de forma muy similar a la que lo hago yo mismo.

Un saludo!

seccion_31 18-07-2025 09:19:11

La 4.7 ya esta enviada para su publicación, corrigiendo esas variables de la consulta

Saludos !

Neftali [Germán.Estévez] 18-07-2025 09:38:17

Subida la versión 4.7 al FTP
https://terawiki.clubdelphi.com/Otro...%20Delphi%207/

Gracias.

Matorral 18-07-2025 10:04:09

Cita:

Empezado por DarkDudae (Mensaje 566444)
Vaya, me ha alegrado ver que mi pequeña aportación al componente le ha servido a alguien. Pensaba que era el único que usaba algo así.
Comentarte que el componente intercepta el tiempo de espera entre operaciones devuelto en cada envío desde la AEAT para modificar el timer interno que se usa antes de lanzar el evento OnTrasEspera. Se incorporó para hacer exactamente lo que estás haciendo y lo estás usando de forma muy similar a la que lo hago yo mismo.

Un saludo!

Pues sinceramente, me parece una gran aportación. Muy útil, y te olvidas de manejar timers y controlar segundos devueltos por hacienda, etc...

Gracias¡¡¡¡¡:)

valdusio 18-07-2025 13:13:42

Cita:

Empezado por seccion_31 (Mensaje 566402)
:) por cierto a estas alturas, me gustaría saber cuantos están usando mi componente... por curiosidad.


el timer del que habla [matorral] fue una aportación de [Darkdudae]

Yo también lo estoy usando. Va perfectamente.
Muchas gracias por tu aporte.

yeyo 21-07-2025 12:53:39

vaya por delante el agradecimiento a Seccion31 por su código! :)

Con la versión 4.7 me ha saltado el siguiente error:
"[dcc32 Error] uVerifactuFuncs.pas(...): E2361 Cannot access private symbol RespuestaDatosRegistroFacturacionType.Incidencia_Specified"

Después de mucho mirar me he encontrado con que sistemafacturacion.pas (el .pas generado a partir del WSDL) está modificado! buscar esta linea:

"PUBLIC // modificado aqui para disponer de las funciones _Specified"

A mí me ha saltado el error porque no estoy utilizando el sistemafacturacion.pas que viene con el componente. Estoy utilizando un sistemafacturacion.pas generado por mi, posterior: Version : 1.0 (01/07/2025 10:20:16 - - $Rev: 116709 $)

Lo digo para que lo tengaís en cuenta y el autor podrá confirmar si esto es así o me he liado yo. Y la cuestión... ¿es conveniente utilizar siempre el último WSDL? nos quedamos con una versión y ya? que consideraís que se debe hacer al respecto?


gracias!!

seccion_31 21-07-2025 13:49:35

Cita:

Empezado por yeyo (Mensaje 566510)
vaya por delante el agradecimiento a Seccion31 por su código! :)

Con la versión 4.7 me ha saltado el siguiente error:
"[dcc32 Error] uVerifactuFuncs.pas(...): E2361 Cannot access private symbol RespuestaDatosRegistroFacturacionType.Incidencia_Specified"

Después de mucho mirar me he encontrado con que sistemafacturacion.pas (el .pas generado a partir del WSDL) está modificado! buscar esta linea:

"PUBLIC // modificado aqui para disponer de las funciones _Specified"

A mí me ha saltado el error porque no estoy utilizando el sistemafacturacion.pas que viene con el componente. Estoy utilizando un sistemafacturacion.pas generado por mi, posterior: Version : 1.0 (01/07/2025 10:20:16 - - $Rev: 116709 $)

Lo digo para que lo tengaís en cuenta y el autor podrá confirmar si esto es así o me he liado yo. Y la cuestión... ¿es conveniente utilizar siempre el último WSDL? nos quedamos con una versión y ya? que consideraís que se debe hacer al respecto?


gracias!!

No hay mas remedio que publicar esas funciones para que funcionen bien las consultas. Esta documentado, tanto en el .pas como en la ayuda.txt

La actual es: // Version : 1.0 (14/02/2025 11:14:56 - - $Rev: 90173 $)

Pero yo creo que es la misma 1.0 que tienes tu, ¿importada en otra fecha? porque entiendo que la version deberia cambiar. (aqui ya no lo tengo claro)

Cuando se publique otro WSDL es ir a esos lugares y colocar el PUBLIC y listo. Es la solucion menos intrusiva que encontre.

No se si este problema se ha tratado en otros hilos del foro.

Saludos !

yeyo 21-07-2025 14:06:19

Cita:

Empezado por seccion_31 (Mensaje 566515)
No hay mas remedio que publicar esas funciones para que funcionen bien las consultas. Esta documentado, tanto en el .pas como en la ayuda.txt

La actual es: // Version : 1.0 (14/02/2025 11:14:56 - - $Rev: 90173 $)

Pero yo creo que es la misma 1.0 que tienes tu, ¿importada en otra fecha? porque entiendo que la version deberia cambiar. (aqui ya no lo tengo claro)

Cuando se publique otro WSDL es ir a esos lugares y colocar el PUBLIC y listo. Es la solucion menos intrusiva que encontre.

No se si este problema se ha tratado en otros hilos del foro.

Saludos !

uops! en ayuda.txt no lo ví! mis disculpas :) gracias de nuevo!!!

seccion_31 22-07-2025 10:40:10

Diria que el componente, no utiliza CAPICOM.DLL


He desregistrado la DLL
Eliminado capicom.dll de todo el disco
Confirmo que en el registro no hay referencia alguna
Reinicio
El programa demo funciona perfecto
Listo las dlls utilizadas por el programa de demo y no aparece

¿alguien puede confirmarlo?

Slds !

starlet 23-07-2025 11:57:16

He hecho los mismo pasos y me funciona tb.

Por otra parte, evidentemente otro más que lo utiliza y te confirmo 3 compañeros más que lo utilizan por referencias mías.

Reitero mis agradecimientos por el enorme trabajo que has y estas haciendo.

Saludos

seccion_31 23-07-2025 18:42:02

Podemos implementar facturas rectificativas por sustitución,

¿ alguien puede darme un registro XML de alta y una explicación para añadirlo ?

Saludos !

Si me dais esa info lo añado.

Matorral 23-07-2025 20:07:05

Buenas tardes¡¡

a mi tambien me funciona sin el capicom.dll

estoy buscando algun ejemplo de xml de rectificativa por sustitucion, pero no encuentro ninguno. (yo no se como es).
:confused:

Neftali [Germán.Estévez] 24-07-2025 09:36:06

A ver si esto te sirve...
Factura 1:

Código:

<sum:RegFactuSistemaFacturacion xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
    xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"
        xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
        <sum:RegistroFactura>
                <sum1:RegistroAlta>
                        <sum1:IDVersion>1.0</sum1:IDVersion>
                        <sum1:IDFactura>
                                <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                <sum1:NumSerieFactura>-2</sum1:NumSerieFactura>
                                <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                        </sum1:IDFactura>
                        <sum1:NombreRazonEmisor>EMPRESA1</sum1:NombreRazonEmisor>
                        <sum1:TipoFactura>F1</sum1:TipoFactura>
                        <sum1:DescripcionOperacion>art 1</sum1:DescripcionOperacion>
                        <sum1:Destinatarios>
                                <sum1:IDDestinatario>
                                        <sum1:NombreRazon>CLIENTE 1</sum1:NombreRazon>
                                        <sum1:NIF>22222222H</sum1:NIF>
                                </sum1:IDDestinatario>
                        </sum1:Destinatarios>
                        <sum1:Desglose>
                                <sum1:DetalleDesglose>
                                        <sum1:Impuesto>01</sum1:Impuesto>
                                        <sum1:ClaveRegimen>01</sum1:ClaveRegimen>
                                        <sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
                                        <sum1:TipoImpositivo>21.00</sum1:TipoImpositivo>
                                        <sum1:BaseImponibleOimporteNoSujeto>100.00</sum1:BaseImponibleOimporteNoSujeto>
                                        <sum1:CuotaRepercutida>21.00</sum1:CuotaRepercutida>
                                </sum1:DetalleDesglose>
                        </sum1:Desglose>
                        <sum1:CuotaTotal>21.00</sum1:CuotaTotal>
                        <sum1:ImporteTotal>121.00</sum1:ImporteTotal>
                        <sum1:Encadenamiento>
                                <sum1:RegistroAnterior>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>-1</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>21-07-2025</sum1:FechaExpedicionFactura>
                                        <sum1:Huella>58242EF60EA1827256626824620075CF6037ECAC70D3F63E0847B4373BAF3D42</sum1:Huella>
                                </sum1:RegistroAnterior>
                        </sum1:Encadenamiento>
                        <sum1:SistemaInformatico>
                                <sum1:NombreRazon>MIEmpresa</sum1:NombreRazon>
                                <sum1:NIF>B12345678</sum1:NIF>
                                <sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
                                <sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
                                <sum1:Version>1.0</sum1:Version>
                                <sum1:NumeroInstalacion>12121212121212121212121212</sum1:NumeroInstalacion>
                                <sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
                                <sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
                                <sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
                        </sum1:SistemaInformatico>
                        <sum1:FechaHoraHusoGenRegistro>2025-07-24T07:07:59Z</sum1:FechaHoraHusoGenRegistro>
                        <sum1:NumRegistroAcuerdoFacturacion/>
                        <sum1:IdAcuerdoSistemaInformatico/>
                        <sum1:TipoHuella>01</sum1:TipoHuella>
                        <sum1:Huella>3EE7135912E7D274AE2255D4A9361A41DF62B5666683EC1EEA4C66594113A967</sum1:Huella>
                </sum1:RegistroAlta>
        </sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>

Factura 2:

Código:

<sum:RegFactuSistemaFacturacion xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"
xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
        <sum:RegistroFactura>
                <sum1:RegistroAlta>
                        <sum1:IDVersion>1.0</sum1:IDVersion>
                        <sum1:IDFactura>
                                <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                <sum1:NumSerieFactura>-3</sum1:NumSerieFactura>
                                <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                        </sum1:IDFactura>
                        <sum1:NombreRazonEmisor>EMPRESA1</sum1:NombreRazonEmisor>
                        <sum1:TipoFactura>F1</sum1:TipoFactura>
                        <sum1:DescripcionOperacion>art 2</sum1:DescripcionOperacion>
                        <sum1:Destinatarios>
                                <sum1:IDDestinatario>
                                        <sum1:NombreRazon>CLIENTE1</sum1:NombreRazon>
                                        <sum1:NIF>22222222H</sum1:NIF>
                                </sum1:IDDestinatario>
                        </sum1:Destinatarios>
                        <sum1:Desglose>
                                <sum1:DetalleDesglose>
                                        <sum1:Impuesto>01</sum1:Impuesto>
                                        <sum1:ClaveRegimen>01</sum1:ClaveRegimen>
                                        <sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
                                        <sum1:TipoImpositivo>21.00</sum1:TipoImpositivo>
                                        <sum1:BaseImponibleOimporteNoSujeto>200.00</sum1:BaseImponibleOimporteNoSujeto>
                                        <sum1:CuotaRepercutida>42.00</sum1:CuotaRepercutida>
                                </sum1:DetalleDesglose>
                        </sum1:Desglose>
                        <sum1:CuotaTotal>42.00</sum1:CuotaTotal>
                        <sum1:ImporteTotal>242.00</sum1:ImporteTotal>
                        <sum1:Encadenamiento>
                                <sum1:RegistroAnterior>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>-2</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                                        <sum1:Huella>3EE7135912E7D274AE2255D4A9361A41DF62B5666683EC1EEA4C66594113A967</sum1:Huella>
                                </sum1:RegistroAnterior>
                        </sum1:Encadenamiento>
                        <sum1:SistemaInformatico>
                                <sum1:NombreRazon>MIEmpresa</sum1:NombreRazon>
                                <sum1:NIF>B12345678</sum1:NIF>
                                <sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
                                <sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
                                <sum1:Version>1.0</sum1:Version>
                                <sum1:NumeroInstalacion>12121212121212121212121212</sum1:NumeroInstalacion>
                                <sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
                                <sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
                                <sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
                        </sum1:SistemaInformatico>
                        <sum1:FechaHoraHusoGenRegistro>2025-07-24T07:08:15Z</sum1:FechaHoraHusoGenRegistro>
                        <sum1:NumRegistroAcuerdoFacturacion/>
                        <sum1:IdAcuerdoSistemaInformatico/>
                        <sum1:TipoHuella>01</sum1:TipoHuella>
                        <sum1:Huella>7BCACAC0C6C7F58F6503C0C4B8AB1133FB0BBB94D7C82C1777DC2821B25B8F85</sum1:Huella>
                </sum1:RegistroAlta>
        </sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>

Rectificativa:

Código:

<sum:RegFactuSistemaFacturacion xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"
xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
        <sum:RegistroFactura>
                <sum1:RegistroAlta>
                        <sum1:IDVersion>1.0</sum1:IDVersion>
                        <sum1:IDFactura>
                                <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                <sum1:NumSerieFactura>R-1</sum1:NumSerieFactura>
                                <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                        </sum1:IDFactura>
                        <sum1:NombreRazonEmisor>EMPRESA1</sum1:NombreRazonEmisor>
                        <sum1:TipoFactura>R4</sum1:TipoFactura>
                        <sum1:TipoRectificativa>I</sum1:TipoRectificativa>
                        <sum1:FacturasRectificadas>
                                <sum1:IDFacturaRectificada>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>-2</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                                </sum1:IDFacturaRectificada>
                                <sum1:IDFacturaRectificada>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>-3</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                                </sum1:IDFacturaRectificada>
                        </sum1:FacturasRectificadas>

                        <sum1:DescripcionOperacion>rect</sum1:DescripcionOperacion>
                        <sum1:Destinatarios>
                                <sum1:IDDestinatario>
                                        <sum1:NombreRazon>CLIENTE1</sum1:NombreRazon>
                                        <sum1:NIF>22222222H</sum1:NIF>
                                </sum1:IDDestinatario>
                        </sum1:Destinatarios>
                        <sum1:Desglose>
                                <sum1:DetalleDesglose>
                                        <sum1:Impuesto>01</sum1:Impuesto>
                                        <sum1:ClaveRegimen>01</sum1:ClaveRegimen>
                                        <sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
                                        <sum1:TipoImpositivo>21.00</sum1:TipoImpositivo>
                                        <sum1:BaseImponibleOimporteNoSujeto>-300.00</sum1:BaseImponibleOimporteNoSujeto>
                                        <sum1:CuotaRepercutida>-63.00</sum1:CuotaRepercutida>
                                </sum1:DetalleDesglose>
                        </sum1:Desglose>
                        <sum1:CuotaTotal>-63.00</sum1:CuotaTotal>
                        <sum1:ImporteTotal>-363.00</sum1:ImporteTotal>
                        <sum1:Encadenamiento>
                                <sum1:RegistroAnterior>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>-3</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                                        <sum1:Huella>7BCACAC0C6C7F58F6503C0C4B8AB1133FB0BBB94D7C82C1777DC2821B25B8F85</sum1:Huella>
                                </sum1:RegistroAnterior>
                        </sum1:Encadenamiento>
                        <sum1:SistemaInformatico>
                                <sum1:NombreRazon>MIEmpresa</sum1:NombreRazon>
                                <sum1:NIF>B12345678</sum1:NIF>
                                <sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
                                <sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
                                <sum1:Version>1.0</sum1:Version>
                                <sum1:NumeroInstalacion>12121212121212121212121212</sum1:NumeroInstalacion>
                                <sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
                                <sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
                                <sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
                        </sum1:SistemaInformatico>
                        <sum1:FechaHoraHusoGenRegistro>2025-07-24T07:09:42Z</sum1:FechaHoraHusoGenRegistro>
                        <sum1:NumRegistroAcuerdoFacturacion/>
                        <sum1:IdAcuerdoSistemaInformatico/>
                        <sum1:TipoHuella>01</sum1:TipoHuella>
                        <sum1:Huella>E9AC569F006BDD0F3C92136AB71AE345F57A9F0C51DD83DCAE353E50112FE27F</sum1:Huella>
                </sum1:RegistroAlta>
        </sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>


Neftali [Germán.Estévez] 24-07-2025 09:43:13

Y nosotros generamos sustitutiva (que internamente son también como rectificativas).

Factura simplificada 1:

Código:

<sum:RegFactuSistemaFacturacion xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"
xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
        <sum:RegistroFactura>
                <sum1:RegistroAlta>
                        <sum1:IDVersion>1.0</sum1:IDVersion>
                        <sum1:IDFactura>
                                <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                <sum1:NumSerieFactura>-4</sum1:NumSerieFactura>
                                <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                        </sum1:IDFactura>
                        <sum1:NombreRazonEmisor>EMPRESA1</sum1:NombreRazonEmisor>
                        <sum1:TipoFactura>F1</sum1:TipoFactura>
                        <sum1:DescripcionOperacion>art 1</sum1:DescripcionOperacion>
                        <sum1:FacturaSimplificadaArt7273>S</sum1:FacturaSimplificadaArt7273>
                        <sum1:Destinatarios>
                                <sum1:IDDestinatario>
                                        <sum1:NombreRazon>CLIENTE1</sum1:NombreRazon>
                                        <sum1:NIF>22222222H</sum1:NIF>
                                </sum1:IDDestinatario>
                        </sum1:Destinatarios>
                        <sum1:Desglose>
                                <sum1:DetalleDesglose>
                                        <sum1:Impuesto>01</sum1:Impuesto>
                                        <sum1:ClaveRegimen>01</sum1:ClaveRegimen>
                                        <sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
                                        <sum1:TipoImpositivo>21.00</sum1:TipoImpositivo>
                                        <sum1:BaseImponibleOimporteNoSujeto>400.00</sum1:BaseImponibleOimporteNoSujeto>
                                        <sum1:CuotaRepercutida>84.00</sum1:CuotaRepercutida>
                                </sum1:DetalleDesglose>
                        </sum1:Desglose>
                        <sum1:CuotaTotal>84.00</sum1:CuotaTotal>
                        <sum1:ImporteTotal>484.00</sum1:ImporteTotal>
                        <sum1:Encadenamiento>
                                <sum1:RegistroAnterior>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>R-1</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                                        <sum1:Huella>E9AC569F006BDD0F3C92136AB71AE345F57A9F0C51DD83DCAE353E50112FE27F</sum1:Huella>
                                </sum1:RegistroAnterior>
                        </sum1:Encadenamiento>
                        <sum1:SistemaInformatico>
                                <sum1:NombreRazon>MIEmpresa</sum1:NombreRazon>
                                <sum1:NIF>B12345678</sum1:NIF>
                                <sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
                                <sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
                                <sum1:Version>1.0</sum1:Version>
                                <sum1:NumeroInstalacion>12121212121212121212121212</sum1:NumeroInstalacion>
                                <sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
                                <sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
                                <sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
                        </sum1:SistemaInformatico>
                        <sum1:FechaHoraHusoGenRegistro>2025-07-24T07:11:01Z</sum1:FechaHoraHusoGenRegistro>
                        <sum1:NumRegistroAcuerdoFacturacion/>
                        <sum1:IdAcuerdoSistemaInformatico/>
                        <sum1:TipoHuella>01</sum1:TipoHuella>
                        <sum1:Huella>1EE070668AE629D266837AD0486A12A24435AABCDD64415144281CF8E54EC318</sum1:Huella>
                </sum1:RegistroAlta>
        </sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>

Factura simplificada 2:
Código:

<sum:RegFactuSistemaFacturacion xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"
xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
        <sum:RegistroFactura>
                <sum1:RegistroAlta>
                        <sum1:IDVersion>1.0</sum1:IDVersion>
                        <sum1:IDFactura>
                                <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                <sum1:NumSerieFactura>-5</sum1:NumSerieFactura>
                                <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                        </sum1:IDFactura>
                        <sum1:NombreRazonEmisor>EMPRESA1</sum1:NombreRazonEmisor>
                        <sum1:TipoFactura>F1</sum1:TipoFactura>
                        <sum1:DescripcionOperacion>art 2</sum1:DescripcionOperacion>
                        <sum1:FacturaSimplificadaArt7273>S</sum1:FacturaSimplificadaArt7273>
                        <sum1:Destinatarios>
                                <sum1:IDDestinatario>
                                        <sum1:NombreRazon>CLIENTE1</sum1:NombreRazon>
                                        <sum1:NIF>22222222H</sum1:NIF>
                                </sum1:IDDestinatario>
                        </sum1:Destinatarios>
                        <sum1:Desglose>
                                <sum1:DetalleDesglose>
                                        <sum1:Impuesto>01</sum1:Impuesto>
                                        <sum1:ClaveRegimen>01</sum1:ClaveRegimen>
                                        <sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
                                        <sum1:TipoImpositivo>21.00</sum1:TipoImpositivo>
                                        <sum1:BaseImponibleOimporteNoSujeto>500.00</sum1:BaseImponibleOimporteNoSujeto>
                                        <sum1:CuotaRepercutida>105.00</sum1:CuotaRepercutida>
                                </sum1:DetalleDesglose>
                        </sum1:Desglose>
                        <sum1:CuotaTotal>105.00</sum1:CuotaTotal>
                        <sum1:ImporteTotal>605.00</sum1:ImporteTotal>
                        <sum1:Encadenamiento>
                                <sum1:RegistroAnterior>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>-4</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                                        <sum1:Huella>1EE070668AE629D266837AD0486A12A24435AABCDD64415144281CF8E54EC318</sum1:Huella>
                                </sum1:RegistroAnterior>
                        </sum1:Encadenamiento>
                        <sum1:SistemaInformatico>
                                <sum1:NombreRazon>MIEmpresa</sum1:NombreRazon>
                                <sum1:NIF>B12345678</sum1:NIF>
                                <sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
                                <sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
                                <sum1:Version>1.0</sum1:Version>
                                <sum1:NumeroInstalacion>12121212121212121212121212</sum1:NumeroInstalacion>
                                <sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
                                <sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
                                <sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
                        </sum1:SistemaInformatico>
                        <sum1:FechaHoraHusoGenRegistro>2025-07-24T07:11:49Z</sum1:FechaHoraHusoGenRegistro>
                        <sum1:NumRegistroAcuerdoFacturacion/>
                        <sum1:IdAcuerdoSistemaInformatico/>
                        <sum1:TipoHuella>01</sum1:TipoHuella>
                        <sum1:Huella>44782BCD8DF3F186FB0C3D9880CD99265769DB11A29C664ADF7101EED31E5A83</sum1:Huella>
                </sum1:RegistroAlta>
        </sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>

Y la Sustitutiva quedaría así:
Código:

<sum:RegFactuSistemaFacturacion xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"
xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
        <sum:RegistroFactura>
                <sum1:RegistroAlta>
                        <sum1:IDVersion>1.0</sum1:IDVersion>
                        <sum1:IDFactura>
                                <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                <sum1:NumSerieFactura>R-2</sum1:NumSerieFactura>
                                <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                        </sum1:IDFactura>
                        <sum1:NombreRazonEmisor>EMPRESA1</sum1:NombreRazonEmisor>
                        <sum1:TipoFactura>F3</sum1:TipoFactura>
                        <sum1:FacturasSustituidas>
                                <sum1:IDFacturaSustituida>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>-4</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                                </sum1:IDFacturaSustituida>
                                <sum1:IDFacturaSustituida>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>-5</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                                </sum1:IDFacturaSustituida>
                        </sum1:FacturasSustituidas>

                        <sum1:DescripcionOperacion>art 1</sum1:DescripcionOperacion>
                        <sum1:Destinatarios>
                                <sum1:IDDestinatario>
                                        <sum1:NombreRazon>CLIENTE1</sum1:NombreRazon>
                                        <sum1:NIF>22222222H</sum1:NIF>
                                </sum1:IDDestinatario>
                        </sum1:Destinatarios>
                        <sum1:Desglose>
                                <sum1:DetalleDesglose>
                                        <sum1:Impuesto>01</sum1:Impuesto>
                                        <sum1:ClaveRegimen>01</sum1:ClaveRegimen>
                                        <sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
                                        <sum1:TipoImpositivo>21.00</sum1:TipoImpositivo>
                                        <sum1:BaseImponibleOimporteNoSujeto>900.00</sum1:BaseImponibleOimporteNoSujeto>
                                        <sum1:CuotaRepercutida>189.00</sum1:CuotaRepercutida>
                                </sum1:DetalleDesglose>
                        </sum1:Desglose>
                        <sum1:CuotaTotal>189.00</sum1:CuotaTotal>
                        <sum1:ImporteTotal>1089.00</sum1:ImporteTotal>
                        <sum1:Encadenamiento>
                                <sum1:RegistroAnterior>
                                        <sum1:IDEmisorFactura>11111111H</sum1:IDEmisorFactura>
                                        <sum1:NumSerieFactura>-5</sum1:NumSerieFactura>
                                        <sum1:FechaExpedicionFactura>24-07-2025</sum1:FechaExpedicionFactura>
                                        <sum1:Huella>44782BCD8DF3F186FB0C3D9880CD99265769DB11A29C664ADF7101EED31E5A83</sum1:Huella>
                                </sum1:RegistroAnterior>
                        </sum1:Encadenamiento>
                        <sum1:SistemaInformatico>
                                <sum1:NombreRazon>MIEmpresa</sum1:NombreRazon>
                                <sum1:NIF>B12345678</sum1:NIF>
                                <sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
                                <sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
                                <sum1:Version>1.0</sum1:Version>
                                <sum1:NumeroInstalacion>12121212121212121212121212</sum1:NumeroInstalacion>
                                <sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
                                <sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
                                <sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
                        </sum1:SistemaInformatico>
                        <sum1:FechaHoraHusoGenRegistro>2025-07-24T07:13:53Z</sum1:FechaHoraHusoGenRegistro>
                        <sum1:NumRegistroAcuerdoFacturacion/>
                        <sum1:IdAcuerdoSistemaInformatico/>
                        <sum1:TipoHuella>01</sum1:TipoHuella>
                        <sum1:Huella>EEA2E840A55FD0DE033F37FCCF52467BE7E361FECA3816B3ACA2311D1E5DEF8E</sum1:Huella>
                </sum1:RegistroAlta>
        </sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>


seccion_31 24-07-2025 09:45:25

gracias Neftali,

Voy a darle una mirada, a ver....

ahora tenemos:
La sustitutiva F3 la empleamos para cambiar un ticket a factura.

La rectificativa por diferencias tipo I, para hacer abonos, (siempre negativos).



Nos faltaría una rectificativa por sustitución, tipo S, entiendo para reemplazar una factura por otra.


Saludos !

Neftali [Germán.Estévez] 24-07-2025 10:09:31

Estas 2 son las únicas que implementamos nosotros.

DarkDudae 25-07-2025 13:43:42

Cita:

Empezado por seccion_31 (Mensaje 566572)
gracias Neftali,

Voy a darle una mirada, a ver....

ahora tenemos:
La sustitutiva F3 la empleamos para cambiar un ticket a factura.

La rectificativa por diferencias tipo I, para hacer abonos, (siempre negativos).



Nos faltaría una rectificativa por sustitución, tipo S, entiendo para reemplazar una factura por otra.


Saludos !

Una factura simple (F2) puede incluir también los datos fiscales de un cliente sin tener que pasar a ser una F1.

Así que en realidad, lo propuesto por Neftali no deja de ser lo mismo que ahora hay implementado para las F3, con la excepción de que no se sustituye a un único ticket, sino a dos. En realidad esto es bastante común en pequeños comercios. Los grandes clientes a final del mes piden factura de todos los tickets que han ido adquiriendo durante el mes.


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

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