Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   SII -Nuevo sistema de la Agencia Tributaria española de envío de datos vía Webservice (https://www.clubdelphi.com/foros/showthread.php?t=91252)

keys 22-11-2023 09:08:18

Cita:

Empezado por Nasca (Mensaje 553356)
Pues lo cierto es que no he notado nada así al enviar y te puedo asegurar que me habría enterado inmediatamente.

¿Estas enviando con con la versión 1.1? Me temo que han dejado de aceptar los wsdl de la anterior.

Nasca 22-11-2023 09:22:15

Cita:

Empezado por keys (Mensaje 553357)
¿Estas enviando con con la versión 1.1? Me temo que han dejado de aceptar los wsdl de la anterior.


Si. Puede que sea eso.

keys 22-11-2023 09:23:25

Cita:

Empezado por Nasca (Mensaje 553358)
Si. Puede que sea eso.

No habíamos adaptado a esa versión por que no nos afectaba ningún cambio, pero bueno parece que ha llegado el momento de hacerlo.

newtron 21-12-2023 17:26:39

Facturas ventanilla única
 
Buenas.


Estoy intentando enviar al sii una factura de ventanilla única (operaciones OSS) y no doy con la tecla. ¿Alguien ha resuelto este tema para pasarme un ejemplo?


Gracias y un saludo.

newtron 22-12-2023 12:21:44

Ok, he seguido haciendo pruebas y me estoy dando cuenta de que no es que no de con la tecla (que todavía no sé si daré) es que me da error en todos los envíos que hago al endpoint de pruebas y la verdad es que no sé por dónde van los tiros. Me sale este mensaje:




¿A alguien le suena este error?


Gracias y un saludo.

pablog2k 22-12-2023 13:13:46

Cita:

Empezado por newtron (Mensaje 553670)
Ok, he seguido haciendo pruebas y me estoy dando cuenta de que no es que no de con la tecla (que todavía no sé si daré) es que me da error en todos los envíos que hago al endpoint de pruebas y la verdad es que no sé por dónde van los tiros. Me sale este mensaje:




¿A alguien le suena este error?


Gracias y un saludo.

A nosotros esto nos ha pasado varias veces, y siempre era por culpa de la configuración del navegador web, que estaba configurado de tal manera que no aceptaba acceder al certificado desde aplicaciones externas. Lo hemos solucionado o bien restaurando valores predeterminados del navegador, o bien probando en otro ordenador con el mismo certificado....

newtron 22-12-2023 13:35:29

Gracias por tu respuesta pero, por lo menos en este caso, no es el problema. He probado en otro ordenador y hace exactamente lo mismo.


Saludos.

pablog2k 22-12-2023 13:56:17

Cita:

Empezado por newtron (Mensaje 553673)
Gracias por tu respuesta pero, por lo menos en este caso, no es el problema. He probado en otro ordenador y hace exactamente lo mismo.


Saludos.

al instalar el certificado le marcas la opción de 'confiar en aplicaciones externas'?? No se llama asi exactamente el checkbox, pero dice algo parecido....

newtron 22-12-2023 17:28:10

Vale, he vuelto a importar los wsdl y ya funciona. No tengo ni idea del motivo porque he vuelto a importar los que tenía pero bueno...


Gracias y un saludo.

Edito: Ahora me estoy dando cuenta de que estos wsdl no están actualizados.

¿Alguien me podría pasar los últimos para no dar muchas vueltas?

newtron 26-12-2023 09:40:03

Buenos días de nuevo.


Sigo haciendo pruebas veo que el problema del error que tengo me lo da solamente cuando envío al endpoint de pruebas. Si envío al servidor de producción no me da problemas.



¿Alguien podría hacerme el favor de enviar un registro al endpoint de pruebas a ver si el problema es solo mío o genérico?



Gracias y un saludo.

pablog2k 26-12-2023 10:15:20

a mi me ha dejado enviar un registro de factura expedida al servidor de pruebas

newtron 26-12-2023 11:18:12

Gracias compañero. Pues a mi, por el motivo que sea, no me va en preproducción.


¿Podrías confirmarme las urls de los wsdl y de preproducción?


Gracias y un saludo.

pablog2k 26-12-2023 11:46:39

Address: https://prewww1.aeat.es/wlpl/SSII-FA...iiFactFEV1SOAP

de los WSDL no enviamos nada, utilizamos un componente THTTPRIO que le pasamos la Address que te he comentado arriba, utilizando la función GetsiiSOAP que viene definida en la unidad que se crea al importar el WSDL de facturas emitidas ( que por lo que veo ahora es esta: https://sede.agenciatributaria.gob.e...tEmitidas.wsdl , pero nosotros no enviamos dicha url)

newtron 26-12-2023 19:59:35

Muchas gracias.


A ver qué averiguo.


Saludos.

nincillo 30-12-2023 13:19:56

Cita:

Empezado por keys (Mensaje 553355)
Hola a todos.

A alguien más le esta pasando desde el viernes mas o menos, que al enviar facturas emitidas al SII de la aeat le aparece el siguiente error.



Ya se que si le pongo UseWSDL := false funciona, pero alguien sabe que ha pasado. Es como si ese enlace ya no estuviera disponible, pero si pinchas sobre el si funciona.

Lo mismo ocurre con todos los demás envíos, ventas, pagos, etc...
Gracias.



Cita:

Empezado por pablog2k (Mensaje 553705)
Address: https://prewww1.aeat.es/wlpl/SSII-FA...iiFactFEV1SOAP

de los WSDL no enviamos nada, utilizamos un componente THTTPRIO que le pasamos la Address que te he comentado arriba, utilizando la función GetsiiSOAP que viene definida en la unidad que se crea al importar el WSDL de facturas emitidas ( que por lo que veo ahora es esta: https://sede.agenciatributaria.gob.e...tEmitidas.wsdl , pero nosotros no enviamos dicha url)

Hola. ¿Habéis conseguido solucionar lo del problema del Empty Document?

Yo estaba intentando hacer la importación del wsdl en un nuevo proyecto de Delphi 2007 y me da el mismo error. Con ambos links de los post que he citado me pasa lo mismo.

Si me descargo el wsdl a un fichero local, entonces ya no me da error al cargarlo, pero luego no lo puedo compilar ya que me da error en la declaración de las siguientes funciones:

Código:

  siiSOAP = interface(IInvokable)
  ['{1E877A56-F627-1434-7788-1955A279ED58}']

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  SuministroLRFacturasEmitidas(const SuministroLRFacturasEmitidas: SuministroLRFacturasEmitidas): RespuestaLRFacturasEmitidas; stdcall;

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  AnulacionLRFacturasEmitidas(const AnulacionLRFacturasEmitidas: BajaLRFacturasEmitidas): RespuestaLRBajaFacturasEmitidas; stdcall;

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  ConsultaLRFacturasEmitidas(const ConsultaLRFacturasEmitidas: ConsultaLRFacturasEmitidas): RespuestaConsultaLRFacturasEmitidas; stdcall;

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  ConsultaLRFactInformadasCliente(const ConsultaLRFactInformadasCliente: ConsultaLRFactInformadasCliente): RespuestaConsultaLRFactInformadasCliente; stdcall;

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  ConsultaLRFactInformadasAgrupadasCliente(const ConsultaLRFactInformadasAgrupadasCliente: ConsultaLRFactInformadasAgrupadasCliente): RespuestaConsultaLRFactInformadasAgrupadasCliente; stdcall;
  end;

¿Ese "Cannot unwrap" que aparece delante de cada función puede servirle de "pista" a alguien para saber que problema podemos estar teniendo?.

Gracias.

Edito: Acabo de hacer la importación del wsdl mediante la url en un Delphi 11.3, no me ha dado error de "Empty Document" que me daba al importarlo en el Delphi 2007, pero se me dan dos casos:
- Si el que importo es el wsdl https://sede.agenciatributaria.gob.e...tEmitidas.wsdl si que tengo el mismo problema a la hora de compilar. Las funciones siguen dando los mismos errores.
- Si por el contrario importo el https://www2.agenciatributaria.gob.e...tEmitidas.wsdl entonces aparentemente me lo hace todo normal.

nincillo 30-12-2023 13:58:24

Cita:

Empezado por nincillo (Mensaje 553772)
Hola. ¿Habéis conseguido solucionar lo del problema del Empty Document?

Yo estaba intentando hacer la importación del wsdl en un nuevo proyecto de Delphi 2007 y me da el mismo error. Con ambos links de los post que he citado me pasa lo mismo.

Si me descargo el wsdl a un fichero local, entonces ya no me da error al cargarlo, pero luego no lo puedo compilar ya que me da error en la declaración de las siguientes funciones:

Código:

  siiSOAP = interface(IInvokable)
  ['{1E877A56-F627-1434-7788-1955A279ED58}']

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  SuministroLRFacturasEmitidas(const SuministroLRFacturasEmitidas: SuministroLRFacturasEmitidas): RespuestaLRFacturasEmitidas; stdcall;

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  AnulacionLRFacturasEmitidas(const AnulacionLRFacturasEmitidas: BajaLRFacturasEmitidas): RespuestaLRBajaFacturasEmitidas; stdcall;

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  ConsultaLRFacturasEmitidas(const ConsultaLRFacturasEmitidas: ConsultaLRFacturasEmitidas): RespuestaConsultaLRFacturasEmitidas; stdcall;

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  ConsultaLRFactInformadasCliente(const ConsultaLRFactInformadasCliente: ConsultaLRFactInformadasCliente): RespuestaConsultaLRFactInformadasCliente; stdcall;

    // Cannot unwrap:
    //    - Input part does not refer to an element
    //    - Output part does not refer to an element
    function  ConsultaLRFactInformadasAgrupadasCliente(const ConsultaLRFactInformadasAgrupadasCliente: ConsultaLRFactInformadasAgrupadasCliente): RespuestaConsultaLRFactInformadasAgrupadasCliente; stdcall;
  end;

¿Ese "Cannot unwrap" que aparece delante de cada función puede servirle de "pista" a alguien para saber que problema podemos estar teniendo?.

Gracias.

Edito: Acabo de hacer la importación del wsdl mediante la url en un Delphi 11.3, no me ha dado error de "Empty Document" que me daba al importarlo en el Delphi 2007, pero se me dan dos casos:
- Si el que importo es el wsdl https://sede.agenciatributaria.gob.e...tEmitidas.wsdl si que tengo el mismo problema a la hora de compilar. Las funciones siguen dando los mismos errores.
- Si por el contrario importo el https://www2.agenciatributaria.gob.e...tEmitidas.wsdl entonces aparentemente me lo hace todo normal.

Amplio la información sobre el mi post anterior ya que ya no me lo deja editar:

Tras intentar utilizar el wsdl que me deja compilar y empezar a rellenar los datos de la cabecera y meter Versión del SII, solo me da la versión 1.0 y si no me confundo, ahora debería de ser la 1.1, con lo cual me temo que tienen / tenemos algún lío con los wsdl a utilizar...

muli 07-01-2024 17:03:57

LLevo unos dias peleandome con lo del SII, mirando unidades de aqui, de allí, del FTP, he conseguido compilar sin errores usando las unidades que están en este hilo, solo de SuministroFactEmitidas, es lo unico que necesito. y ahora me pregunto lo siguiente, utilizo como la gran mayoria el componente HTTPRIO1, cuando se llama la funcion GetSiiSoap de la unidad de SuministroFactEmitidas, que tengo con las siguientes constantes:
Código Delphi [-]
const
  defWSDL = 'http://www.agenciatributaria.es/static_files/AEAT/Contenidos_Comunes/La_Agencia_Tributaria/Modelos_y_formularios/Suministro_inmediato_informacion/FicherosSuministros/V_1_1/SuministroFactEmitidas.wsdl';
  defURL  = 'https://prewww1.aeat.es/wlpl/SSII-FACT/ws/fe/SiiFactFEV1SOAP';
  defSvc  = 'siiService';
  defPrt  = 'SuministroFactEmitidas';

Me arroja el siguiente error:
Código Delphi [-]
Project Project1.exe raised exception class Exception with message 'Unable to load WSDL File/Location: http://www.agenciatributaria.es/stat...tEmitidas.wsdl.  Error [Error sending data: (12002) Se superó el tiempo de espera para la operación]'.

Entiendo que las direcciones indicadas no son correctas, donde puedo encontrar las correctas?, ya no entro si estoy en periodo de pruebas o no, me da igual, lo que quiero es enviar una factura emitida con el certificado seleccionado (eso creo que lo hago bien). Gracias por todo, agradecería algún ejemplo completo de un envio de una factura emitida y puestos a pedir tambien de la consulta de emitidas.
También secundo la proposición que hizo un miembro del foro, de unir todo lo realmente útil en un solo post, yo por mi parte, una vez que tenga hecho lo de las facturas emitidas, colgaré todo el proyecto en el FTP, aunque mio no tiene mucho, es una modificación de lo que había. Ahh, por cierto me olvidaba, como puedo guardar para ver a posteriori el XML generado antes del envio, pongo todo el código por si alguien me puede ayudar, como dije es código descargado del foro del club.

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  i:LongInt;
  ASuministroLRFacturasEmitidas: SuministroLRFacturasEmitidas;
  ARegistroLRFacturasEmitidas:Array_Of_LRfacturasEmitidasType;
  result:RespuestaLRFacturasEmitidas;
  CERTIFICADO :Pointer;
  IVAS: DesgloseIva3;
  a,mes,d:word;

begin
  if comboBox1.itemindex<0 then exit;
  CERTIFICADO := BUSCAR_CERTIFICADO(comboBox1.text);
   if(CERTIFICADO = nil) then begin
       ShowMessage('No encuento el certificado');
       Exit();
    end;
    setCERTIFICADO(CERTIFICADO);

  try
    ASuministroLRFacturasEmitidas := SuministroLRFacturasEmitidas.Create;
    ASuministroLRFacturasEmitidas.Cabecera := CabeceraSii.Create;
    // DATOS:
    ASuministroLRFacturasEmitidas.Cabecera.IDVersionSii:=VersionSiiType(0);       // 0.1
    ASuministroLRFacturasEmitidas.Cabecera.titular := PersonaFisicaJuridicaESType.Create;
    ASuministroLRFacturasEmitidas.Cabecera.Titular.NombreRazon:=Edit1.Text;          
    ASuministroLRFacturasEmitidas.Cabecera.Titular.NIF:=Edit2.Text;              
    // (0) A0 - ALTA
    // (1) A1-  MODIFICACION
    // (2) A4-  MODIFICACION REGIMEN VIAJEROS
    ASuministroLRFacturasEmitidas.Cabecera.TipoComunicacion:=ClaveTipoComunicacionType(0);

    //Se crean todas las estructuras de datos de la consulta

    SetLength(ARegistroLRFacturasEmitidas, 1);
    ARegistroLRFacturasEmitidas[0]:=LRfacturasEmitidasType.Create;
    ARegistroLRFacturasEmitidas[0].IDFactura:=IDFacturaExpedidaType.create;
    ARegistroLRFacturasEmitidas[0].FacturaExpedida:=FacturaExpedidaType.create;               // <- clase para tipo de factura
    ARegistroLRFacturasEmitidas[0].PeriodoLiquidacion:=PeriodoLiquidacion11.Create;

    ARegistroLRFacturasEmitidas[0].PeriodoLiquidacion.Ejercicio:=Edit8.text;                       //  AÑO
    decodeDate(strtodate(edit7.Text),a,mes,d);

    ARegistroLRFacturasEmitidas[0].PeriodoLiquidacion.periodo  :=TipoPeriodoType(mes - 1);          //  PERIODO 01- ENERO ... 12-DICIEMBRE  (0A - ANUAL )


    With ARegistroLRFacturasEmitidas[0].IDFactura do
    begin
       IDEmisorFactura:= IDEmisorFactura3.Create;
       IDEmisorFactura.NIF  :=Edit2.text;                      
       NumSerieFacturaEmisor:=Edit6.text;                    
       FechaExpedicionFacturaEmisor:=Edit7.Text;          
    end;
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.tipofactura:=ClaveTipoFacturaType(0);      //  F1- FACTURA / F2 TICKET / ...
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.ClaveRegimenEspecialOTrascendencia:=IdOperacionesTrascendenciaTributariaType(0);  // 01-REGIMEN COMUN / 02-BIENES USADOS... 15-EXPORTACION
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.ImporteTotal:=Edit12.Text;                       //  TOTAL (opcional)
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.descripcionOperacion:='Nuestra Factura';   //  DESCRIPCION FACTURA (LIBRE)

    // CONTRAPARTE:
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.Contraparte:=PersonaFisicaJuridicaType.Create;  // CREAR CLIENTE:
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.Contraparte.NombreRazon:=Edit4.Text;           // NOMBRE DEL CLIENTE
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.Contraparte.NIFRepresentante:='';
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.Contraparte.NIF:=Edit5.Text;                      // NIF DEL CLIENTE

(*
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.Contraparte.IDotro:=IDOtroType.Create;          // identifiacion del nif.
   //ARegistroLRFacturasEmitidas[0].FacturaExpedida.Contraparte.IDotro.CodigoPais:=countryType2(10);  // EN CASO DE ESPAÑA NO ES NECESARIO
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.Contraparte.IDotro.IDType:=PersonaFisicaJuridicaIDTypeType(0);   // 2-NIF / 3-PASAPORTE / 4- DOCUMENTO OFICIAL IDENT. PAIS RESIDENCIA
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.Contraparte.IDotro.ID:='';         // EN CASO DE 3 Ó 4 INDICAR EL ID.
*)

   // EMPEZAMOS CON LOS DESGLOSES (IVAs)
    ARegistroLRFacturasEmitidas[0].FacturaExpedidA.TipoDesglose:= TipoDesglose3.create;

    setLength(IVAS,1);
    IVAS[0]:=DetalleIvaEmitidaType.Create;
    IVAS[0].BaseImponible:=Edit9.Text;            // BASE IMPONIBLE
    IVAS[0].TipoImpositivo:=Edit10.Text;            // IVA %
    IVAS[0].CuotaRepercutida:=Edit11.Text;          // IMPORTE IVA
    IVAS[0].TipoRecargoEquivalencia:='0';    // REQ %
    IVAS[0].CuotaRecargoEquivalencia:='0';   // IMPORTE RECARGO
    //   opcion 1
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.TipoDesglose.desgloseFactura:=TipoSinDesgloseType.create;
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.TipoDesglose.desgloseFactura.sujeta:=SujetaType.create;
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.TipoDesglose.desgloseFactura.sujeta.noexenta:=NoExenta2.create;
    // ASIGNAR IVAS
    ARegistroLRFacturasEmitidas[0].FacturaExpedida.TipoDesglose.desglosefactura.sujeta.noexenta.desgloseIVA:=IVAS;
                                        // documento pais residencia (extranjero)
    //se añade el array de facturas creado anteriormente
    ASuministroLRFacturasEmitidas.RegistroLRFacturasEmitidas:=ARegistroLRFacturasEmitidas;

   try
      // se hace la llamada a la funcion suministrada por el WS
      result := GetsiiSOAP(true,'',HTTPRIO1).SuministroLRFacturasEmitidas(ASuministroLRFacturasEmitidas);

      //mostrar los resultados devueltos por la llamada
      for i := low(result.RespuestaLinea) to High(result.RespuestaLinea) do begin
        with result.RespuestaLinea[i] do begin
          Memo1.lines.add('factura: ' + IDFactura.NumSerieFacturaEmisor + ' ' + IDFactura.NumSerieFacturaEmisorResumenFin + ' ' + IDFactura.FechaExpedicionFacturaEmisor);
          //si el estado no es correcto, se muestran los errores
          if EstadoRegistro <> EstadoRegistroType(0) then begin
            Memo1.lines.add('Error no.: ' + InttoStr(CodigoErrorRegistro));
            Memo1.lines.add(DescripcionErrorRegistro);
          end;
        end;
      end;
    except
      On E:Exception do
        //El proceso de envio dio error
        MessageDlg(E.Message, mtError, [mbOK], 0);
    end;
  finally
    // se eliminan los objetos creados
    ASuministroLRFacturasEmitidas.Free;
    result.Free;
  end;
end;

Gracias. Y saludos a todos.

keys 08-01-2024 13:33:20

Tienes toda la información en este enlace.

https://sede.agenciatributaria.gob.e...ini/G417.shtml

En la parte de información técnica tienes todos los enlaces. Si en la propiedad del HTTPRIO.UseWdsl le pones a false, ya no se va a conectar a hacienda para comprobar las estructuras y así no te dará ese error. Puedes enviar al entorno de pruebas previamente antes de enviar al de producción.

antoine0 08-01-2024 13:41:10

Cita:

Empezado por muli (Mensaje 553875)
[...] tengo con las siguientes constantes:
Código Delphi [-]
const
  defWSDL = 'http://www.agenciatributaria.es/static_files/AEAT/Contenidos_Comunes/La_Agencia_Tributaria/Modelos_y_formularios/Suministro_inmediato_informacion/FicherosSuministros/V_1_1/SuministroFactEmitidas.wsdl';
  defURL  = 'https://prewww1.aeat.es/wlpl/SSII-FACT/ws/fe/SiiFactFEV1SOAP';
  defSvc  = 'siiService';
  defPrt  = 'SuministroFactEmitidas';

Me arroja el siguiente error:
Código Delphi [-]
Project Project1.exe raised exception class Exception with message 'Unable to load WSDL File/Location: http://www.agenciatributaria.es/stat...tEmitidas.wsdl.  Error [Error sending data: (12002) Se superó el tiempo de espera para la operación]'.
Entiendo que las direcciones indicadas no son correctas, donde puedo encontrar las correctas?

Según la página de las informaciones técnicas, empiezan por https: seguido de //sede.agenciatributaria.gob.es/static_files/Sede/Procedimiento_ayuda/G417/FicherosSuministros/V_1_1/ para los esquemas, y seguido de //sede.agenciatributaria.gob.es/static_files/Sede/Procedimiento_ayuda/G417/FicherosSuministros/V_1_1/WSDL/ para los WSDLs.

También me funcionan las direcciones empezando con //www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii_1_1_bis/fact/ws/ (para todo, esquemas como wsdl). Pero siempre con https:.

Para las pruebas, se puede remplazar www2 por prewww2. Pero no creo que haya ninguna diferencia en la actualidad (se refieren a pruebas de novedades de protocolos o funcionalidades).

edari 09-01-2024 12:57:45

Buenos días,


A ver si os suena a alguno


Estoy intentando subir al SII una factura de proveedores varios sin nif

Cita:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:siiLR="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroLR.xsd" xmlns:sii="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroInformacion.xsd">
<soapenv:Header/>
<soapenv:Body>
<siiLR:SuministroLRFacturasRecibidas>
<sii:Cabecera>
<sii:IDVersionSii>1.1</sii:IDVersionSii>
<sii:Titular>
<sii:NombreRazon>EMPRESA</sii:NombreRazon>
<sii:NIF>NIF DE EMPRESA</sii:NIF>
</sii:Titular>
<sii:TipoComunicacion>A0</sii:TipoComunicacion>
</sii:Cabecera>
<siiLR:RegistroLRFacturasRecibidas>
<sii:PeriodoLiquidacion>
<sii:Ejercicio>2023</sii:Ejercicio>
<sii:Periodo>12</sii:Periodo>
</sii:PeriodoLiquidacion>
<siiLR:IDFactura>
<sii:IDEmisorFactura>
<sii:NIF/>
</sii:IDEmisorFactura>
<sii:NumSerieFacturaEmisor>89788 </sii:NumSerieFacturaEmisor>
<sii:FechaExpedicionFacturaEmisor>31-12-2023</sii:FechaExpedicionFacturaEmisor>
</siiLR:IDFactura>
<siiLR:FacturaRecibida>
<sii:TipoFactura>F2</sii:TipoFactura>
<sii:ClaveRegimenEspecialOTrascendencia>01</sii:ClaveRegimenEspecialOTrascendencia>
<sii:ImporteTotal>110.00</sii:ImporteTotal>
<sii:DescripcionOperacion>DOCUMENTO COMPRAS 89788</sii:DescripcionOperacion>
<sii:DesgloseFactura>
<sii:DesgloseIVA>
<sii:DetalleIVA>
<sii:TipoImpositivo>10</sii:TipoImpositivo>
<sii:BaseImponible>100.00</sii:BaseImponible>
<sii:CuotaSoportada>10.00</sii:CuotaSoportada>
</sii:DetalleIVA>
</sii:DesgloseIVA>
</sii:DesgloseFactura>
<sii:FechaRegContable>09-01-2024</sii:FechaRegContable>
<sii:CuotaDeducible>10.00</sii:CuotaDeducible>
</siiLR:FacturaRecibida>
</siiLR:RegistroLRFacturasRecibidas>
</siiLR:SuministroLRFacturasRecibidas>
</soapenv:Body>
</soapenv>

Y me da un error
1143-Valor del campo NIF del bloque IDFactura con tipo incorrecto


"Este mensaje aparece cuando se está presentando al SII facturas recibidas tipo tiquet (simplificadas) sin informar el NIF en los datos de proveedor".


Se pueden hacer facturas a proveedores varios sin NIF?


Gracias de antemano


Un saludo

keys 09-01-2024 13:12:03

Cita:

Empezado por edari (Mensaje 553918)
Buenos días,


A ver si os suena a alguno


Estoy intentando subir al SII una factura de proveedores varios sin nif


Y me da un error
1143-Valor del campo NIF del bloque IDFactura con tipo incorrecto


"Este mensaje aparece cuando se está presentando al SII facturas recibidas tipo tiquet (simplificadas) sin informar el NIF en los datos de proveedor".


Se pueden hacer facturas a proveedores varios sin NIF?


Gracias de antemano


Un saludo

En las recibidas es obligatorio identificar al proveedor, aunque sea un ticket.

edari 09-01-2024 15:14:17

Cita:

Empezado por keys (Mensaje 553919)
En las recibidas es obligatorio identificar al proveedor, aunque sea un ticket.


Gracias keys.


No veo entonces el sentido a tener una factura de tipo F2 para un proveedor si tienes que identificarle con su nif exactamente igual que al resto...

antoine0 09-01-2024 17:07:03

Cita:

Empezado por edari (Mensaje 553929)
No veo entonces el sentido a tener una factura de tipo F2 para un proveedor si tienes que identificarle con su nif exactamente igual que al resto...

¿Para cuadrar con tu contabilidad?
No se puede recuperar el IVA de un ticket, pero se puede registrar un ticket en contabilidad para poder deducir el gasto. Y entiendo que si registras en contabilidad una factura de proveedor, simplificada o no, a ser factura estas obligado a registrarla en el libre de IVA de facturas recibidas.

newtron 09-01-2024 18:40:46

Cita:

Empezado por antoine0 (Mensaje 553935)
¿Para cuadrar con tu contabilidad?
No se puede recuperar el IVA de un ticket, pero se puede registrar un ticket en contabilidad para poder deducir el gasto. Y entiendo que si registras en contabilidad una factura de proveedor, simplificada o no, a ser factura estas obligado a registrarla en el libre de IVA de facturas recibidas.


Igual me equivoco pero yo tengo entendido que teniendo un ticket puedes deducir el total como gasto pero no el IVA por lo que entiendo que ese ticket no iría al libro de facturas recibidas y por lo tanto no subiría al SII.


Saludos.

keys 10-01-2024 08:15:14

Cita:

Empezado por newtron (Mensaje 553939)
Igual me equivoco pero yo tengo entendido que teniendo un ticket puedes deducir el total como gasto pero no el IVA por lo que entiendo que ese ticket no iría al libro de facturas recibidas y por lo tanto no subiría al SII.


Saludos.

Los tickets de compra hay que enviarlos a SII, para eso esta el tipo F2, otra cosa es que te lo puedas deducir o no, para eso esta el campo cuota deducible. El tipo F2 en compras esta para indicar que se tratar de un ticket (Factura Simplificada), pero tienes que identificar al proveedor.

Un Saludo.

newtron 10-01-2024 10:34:04

Cita:

Empezado por keys (Mensaje 553944)
Los tickets de compra hay que enviarlos a SII, para eso esta el tipo F2, otra cosa es que te lo puedas deducir o no, para eso esta el campo cuota deducible. El tipo F2 en compras esta para indicar que se tratar de un ticket (Factura Simplificada), pero tienes que identificar al proveedor.

Un Saludo.


Gracias Keys por la info.


Saludos.

antoine0 10-01-2024 14:15:22

Cita:

Empezado por keys (Mensaje 553944)
Los tickets de compra hay que enviarlos a SII, para eso esta el tipo F2, otra cosa es que te lo puedas deducir o no, para eso esta el campo cuota deducible. El tipo F2 en compras esta para indicar que se tratar de un ticket (Factura Simplificada), pero tienes que identificar al proveedor.

Y concretamente en las validaciones del SII hay un control en LRFR, si el TipoFactura es F2 entonces la CuotaDeducible debe ser 0. Código de error 1279 en caso contrario.

muli 14-01-2024 23:46:48

Ya tengo listo el envio, ahora estoy consultando los envios, pero estoy atascado en traer los datos correspondientes a la base imponible, iva, tipo de iva, ya que luego tengo pensado que utilizando los datos de las consultas, seleccionar ese registro y si quiere anularlo, proceder a la anulacion.
Se que en DatosFacturaEmitida trae esos datos pero no consigo acceder a ellos, alguna luz que me ilumine, gracias.

Saludos

newtron 15-01-2024 09:51:56

Cita:

Empezado por muli (Mensaje 554017)
Ya tengo listo el envio, ahora estoy consultando los envios, pero estoy atascado en traer los datos correspondientes a la base imponible, iva, tipo de iva, ya que luego tengo pensado que utilizando los datos de las consultas, seleccionar ese registro y si quiere anularlo, proceder a la anulacion.
Se que en DatosFacturaEmitida trae esos datos pero no consigo acceder a ellos, alguna luz que me ilumine, gracias.

Saludos


No lo he probado pero mira a ver si esto te serviría teniendo en cuenta que [0] es la primera base imponible.


Código Delphi [-]
DatosFacturaEmitida.TipoDesglose.DesgloseFactura.Sujeta.NoExenta.DesgloseIVA[0].BaseImponible;


Saludos.

muli 15-01-2024 12:05:47

Perfecto, Muchas gracias. Ya tengo listo todo el proceso de envio, anulacion y consulta de facturas emitidas, captura los datos de la factura desde un fichero INI, si alquien quiere se lo paso por privado, o lo subo al FTP del club, es totalmente operativo, me gustaria ampliarlo ahora a enviar muchas facturas juntas, no creo que sea muy problematico, seguiremos trabajando.
Saludos a todos

Casimiro Notevi 15-01-2024 12:47:26

Cita:

Empezado por muli (Mensaje 554021)
Perfecto, Muchas gracias. Ya tengo listo todo el proceso de envio, anulacion y consulta de facturas emitidas, captura los datos de la factura desde un fichero INI, si alquien quiere se lo paso por privado, o lo subo al FTP del club, es totalmente operativo, me gustaria ampliarlo ahora a enviar muchas facturas juntas, no creo que sea muy problematico, seguiremos trabajando.
Saludos a todos


Pues estaría bien que lo compartieras, así todos tendrían una base para no empezar de cero.

muli 15-01-2024 19:36:30

Pongo un fichero RAR con los siguientes ficheros un ejecutable que funciona perfectamente capturando datos del fichero ini que lo acompaña y luego todos los fuentes que tengo, ha sido todo descargado del club, mantengo los comentarios en los fuentes, y añado algún procedimiento.
En el futuro la idea es guardar los ficheros enviados y recibidos y luego generar una lista de facturas para enviarlas todas en un solo envio. De momento solo envia de una en una, Anula y consulta.Creo que esto es un buen punto de partida para lo que nos espera con los envíos de verifactu. Tan pronto lo tenga listo, seguiré enviando el fichero. Aunque lo que me corría prisa era el envío.Pongo enlace de Drive pues pesa dos megas y no me deja subirlo al foro, y la subida al FTP está desactivada.

Saludos. a todos.

https://drive.google.com/file/d/1vYl...usp=drive_link

muli 17-01-2024 11:49:32

Hola a todos, necesitaba enviar una factura con iva 0, que es una inversión de sujeto pasivo. Alguien ha tratado este tipo de envio?
Gracias.

antoine0 17-01-2024 13:47:48

Cita:

Empezado por muli (Mensaje 554064)
Hola a todos, necesitaba enviar una factura con iva 0, que es una inversión de sujeto pasivo. Alguien ha tratado este tipo de envio?

Creo que hay una pregunta similar en este hilo pero no la encuentro. Lo que sí hay cierto es una FAQ, epigrafo 3.5 en la sección de facturas expedidas.
Al final es una factura expedida normal, con S2 (o S3) en lugar de S1 en el campo <TipoNoExenta> y 0 en los campos correspondiente al IVA.
Como dice la FAQ, las facturas intracomunitarias de prestaciones de servicios son distintas (y las entregas intracomunitarias de bienes o las triangulares van por el mismo camino).

muli 25-01-2024 03:39:09

Añadir link a proyecto
 
Hola a todos, bueno lo que pasa siempre, solo Emitidas, y ahora tambien piden las recibidas, enfin, podeis poner la funcion de generación de las recibidas, gracias, la adjuntaré al enlace puesto y así ya tendriamos la aplicación casi completa.

Gracias.

P.D.: He tenido que eliminar el fichero rar del google drive, si lo envio al moderador lo puede poner en el area de descargas.
NOTA MODERADOR: Ya está subido al FTP del club aquí.


Gracias.

muli 26-01-2024 00:05:50

Estoy enviando facturas recibidas con las siguientes constantes,
Código Delphi [-]
const

  defWSDL = 'http://www.agenciatributaria.es/static_files/AEAT/Contenidos_Comunes/La_Agencia_Tributaria/Modelos_y_formularios/ Suministro_inmediato_informacion/FicherosSuministros/V_1_1/SuministroFactRecibidas.wsdl';
  defURL  = 'https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fr/SiiFactFRV1SOAP';
  defSvc  = 'siiService';
  defPrt  = 'SuministroFactRecibidas';

Recibo error Sending data (12002), supongo que tengo alguna direccion erronea,

keys 26-01-2024 08:34:26

Cita:

Empezado por muli (Mensaje 554160)
Estoy enviando facturas recibidas con las siguientes constantes,
Código Delphi [-]
const

  defWSDL = 'http://www.agenciatributaria.es/static_files/AEAT/Contenidos_Comunes/La_Agencia_Tributaria/Modelos_y_formularios/ Suministro_inmediato_informacion/FicherosSuministros/V_1_1/SuministroFactRecibidas.wsdl';
  defURL  = 'https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fr/SiiFactFRV1SOAP';
  defSvc  = 'siiService';
  defPrt  = 'SuministroFactRecibidas';

Recibo error Sending data (12002), supongo que tengo alguna direccion erronea,

LA url tienes bien, prueba a poner usewsdl a false

keno_71 26-01-2024 09:33:23

Hola Muli, no puedo poner todavía links pero tengo un defWSDL diferente:

Código:

www2.agenciatributaria.gob.es

muli 26-01-2024 09:36:45

Definitivas a dia de hoy, funciona en emitidas y en recibidas:

FACTURAS RECIBIDAS:
Código Delphi [-]
const
  defWSDL = 'https://sede.agenciatributaria.gob.es/static_files/Sede/Procedimiento_ayuda/G417/FicherosSuministros/V_1_1/WSDL/SuministroFactRecibidas.wsdl';
  defURL  = 'https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fr/SiiFactFRV1SOAP';
  defSvc  = 'siiService';
  defPrt  = 'SuministroFactRecibidas';

FACTURAS EMITIDAS:
Código Delphi [-]
const
  defWSDL = 'https://sede.agenciatributaria.gob.es/static_files/Sede/Procedimiento_ayuda/G417/FicherosSuministros/V_1_1/WSDL/SuministroFactEmitidas.wsdl';
  defURL  = 'https://www1.agenciatributaria.gob.es/wlpl/SSII-FACT/ws/fe/SiiFactFEV1SOAP';
  defSvc  = 'siiService';
  defPrt  = 'SuministroFactEmitidas';

Necesito la función de enviar las recibidas para comparar los desgloses de los ivas, me están dando muchos problemas, también me gustaría enviar un paquete de registros, eso lo puedo prepara con un bucle sobre la funcion que ya utilizo para enviar una?

Saludos

muli 28-01-2024 01:43:36

Los que no doy encontrado son las direcciones para las pruebas. Alguien las puede poner.

Gracias


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

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