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)

marine 06-06-2017 13:11:11

Buenas,

Alguien sabe como debe estructurarse el XML para solventar este error ?

Error 2006
"La factura contiene un desglose a nivel de factura cuando le corresponde un desglose a nivel de operación, por no ser factura simplificada ni asiento resumen y la contraparte contiene un IdOtro o tiene un NIF que empiece por N"

PepCat 06-06-2017 13:12:07

Cita:

Empezado por Sergio J. (Mensaje 517779)
Hola a todos. Estoy, por un lado orgulloso de pertenecer a este club desde que empecé a chapurrear delphi y tranquilo por la información aportada a este hilo sobre el famoso SII hasta hace poco desconocido para mí, y por otro agobiado por tener que dar solución a un cliente que está acogido al REDEME y me pidió que le diera una solución el otro día, sin tener conocimiento de lo que me esperaba y en tan poco tiempo :eek:.
Como trabajo con delphi 6, a la hora de crear el XML, tendré que hacerlo a mano, pero para enviarlo a través de Web Service y el tema de la autenticación tenía pensado crear un proyecto nuevo con Delphi XE7 o subirlo con algún formulario al estilo que ahora tiene publicado la AEAT en su enlace https://www7.aeat.es/static_files/co...teWSAEAT2.html para pruebas, pero no sé si para envíos reales habrá una plataforma similar para hacerlo a partir del 1 de Julio.
He leído gran parte de este hilo pero no sé con seguridad si se podrá.

¿Alguien sabe algo al respecto? Agradecería cualquier referencia, muchísimas gracias.


qP:-) Si quieres mandar el XML directamente desde Delphi 6 puedes mirar el post #964 que en el caso del Delphi 7 funciona perfectamente.

scooterjgm 06-06-2017 13:27:45

Cita:

Empezado por PepCat (Mensaje 517785)
qP:-) Si quieres mandar el XML directamente desde Delphi 6 puedes mirar el post #964 que en el caso del Delphi 7 funciona perfectamente.

Yo he conseguido enviar el XML en Delphi 7 siguiendo el ejemplo de Web Service que comenta el compañero.

El XML lo he construido a mano, ahora el problema lo tengo al interpretar el XML de respuesta. Estoy utilizando el componente TXMLDocument, pero no me deja acceder a los nodos hijos. ¿A alguien le ha pasado algo similar?¿Alguna recomendación de otro componente?

El nodo 'Body' lo encuentra, pero de ahí no paso

Código:

<?xml version="1.0" encoding="ISO-8859-1"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body Id="Body">
<siiR:RespuestaLRFacturasRecibidas xmlns:sii="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroInformacion.xsd" xmlns:siiR="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/RespuestaSuministro.xsd">
[....]
</siiR:RespuestaLRFacturasRecibidas>
</env:Body>
</env:Envelope>

Código:

    nodoBody:= xmlDoc.DocumentElement.ChildNodes.FindNode('Body');
    //pruebas debug...
    nodoRespuestaLRFacturasRecibidas:= nodoBody.ChildNodes.FindNode('RespuestaLRFacturasRecibidas','siiR');
    nodoRespuestaLRFacturasRecibidas:= xmlDoc.DocumentElement.ChildNodes.FindNode('RespuestaLRFacturasRecibidas','siiR');
    nodoEstadoEnvio:= nodoRespuestaLRFacturasRecibidas.ChildNodes.FindNode('siiR:EstadoEnvio');

Gracias.

vicjr 06-06-2017 13:35:04

Error endPoint
 
Cita:

Empezado por vboloradito (Mensaje 515202)
¿tienes que usar el endpoint /wlpl/SSII-FACT/ws/fr/SiiFactFRV1SOAP?

con vuestra explicaciones ya he podido enviar facturas recibidas

vicjr 06-06-2017 13:46:44

Facturas con dos tipos de impuestos (IGIC/IPSIC)
 
Buenas tardes, cuando una factura agrupada tiene distintos impuestos, sabéis como se debe poner en la etiqueta "ClaveRegimenEspecialOTrascendencia" y como se desglosa dicha factura ¿?

vboloradito 06-06-2017 15:05:35

Cita:

Empezado por marine (Mensaje 517784)
Buenas,

Alguien sabe como debe estructurarse el XML para solventar este error ?

Error 2006
"La factura contiene un desglose a nivel de factura cuando le corresponde un desglose a nivel de operación, por no ser factura simplificada ni asiento resumen y la contraparte contiene un IdOtro o tiene un NIF que empiece por N"

he pegado en el otro hilo un ejemplo:
https://www.clubdelphi.com/foros/sho...92&postcount=4

tienes que hacer el desglose por tipo de operacion o entrega de bienes.

vboloradito 06-06-2017 15:14:09

Cita:

Empezado por vicjr (Mensaje 517789)
Buenas tardes, cuando una factura agrupada tiene distintos impuestos, sabéis como se debe poner en la etiqueta "ClaveRegimenEspecialOTrascendencia" y como se desglosa dicha factura ¿?

extraido del documento SII_Descripcion_ServicioWeb_v0.7.pdf

- Se añaden los campos opcionales
<ClaveRegimenEspecialOTrascendenciaAdicional1> y
<ClaveRegimenEspecialOTrascendenciaAdicional2> en los esquemas de
facturas emitidas y recibidas. Así se recoge la posibilidad de combinar “claves
de regímenes especial o trascendencia”. Por tanto, existe la posibilidad de
informar de más de una clave (hasta tres), pero la informada en el campo
<ClaveRegimenEspecialOTrascendencia> será la principal en el sentido de
que esta primera clave marca las validaciones a considerar.


Entiendo que puedes añadir dos valores mas de trascendencia pero el que manda es el primero.
Y luego insertas ,en el array en el desglose de IVA, un elemento para cada tipo de iva que tengas distinto en esa factua.

Patry159 06-06-2017 15:30:13

Hola, vuelvo de nuevo a preguntar sobre el error que he escrito anteriormente. No sé si estoy buscando donde debo, pero pongo el codigo de mi app.config a ver si ahí hay algo erróneo y por eso me da el error que vuelvo a escribir:


Cita:

No se encontró el elemento de extremo predeterminado que hace referencia al contrato 'SuministroFacturasRecibidas.siiSOAP' en la sección de configuración de cliente de ServiceModel. La razón puede ser que no se encontró ningún archivo de configuración para la aplicación o que no se encontró ningún elemento de extremo correspondiente a este contrato en el elemento de cliente
Mi codigo en el app.config es este:
Código:


  </system.serviceModel>
      <client> 
            <endpoint address="https://www7.aeat.es/wlpl/SSII-FACT/ws/fr/SiiFactFRV1SOAP"
                binding="basicHttpBinding" bindingConfiguration="siiBinding2"
                contract="SuministroFacturasRecibidas.siiSOAP" name="SuministroFactRecibidasPruebas" />
      </client>
    </system.serviceModel>

A ver si alguien me puede echar una mano que ya ando perdida y no sé el porque del error.
Muchas gracias!

xamminf 06-06-2017 15:36:22

En el ejemplo, solo por curiosidad, el IDOtro no esta informado.


Cita:

Empezado por vboloradito (Mensaje 517793)
he pegado en el otro hilo un ejemplo:
https://www.clubdelphi.com/foros/sho...92&postcount=4

tienes que hacer el desglose por tipo de operacion o entrega de bienes.


vboloradito 06-06-2017 16:14:48

Cita:

Empezado por xamminf (Mensaje 517798)
En el ejemplo, solo por curiosidad, el IDOtro no esta informado.

cierto, el IDotro no hay que informarlo. Ya que es un NIF emitido en "españa" para un no residente .
PArece que no puedo editar el comentario en el otro hilo. no tengo permisos.

vboloradito 06-06-2017 16:24:04

L9 Causa de exención de operaciones sujetas y exentas
 
Entiendo que indicar la causa de excepcion es opcional.
Pero ya que tengo que indicar si exenta en facturas emitidas queria informarlo.

¿hay algun sitio web donde se indique de manera clara a que caso aplica cada articulo? HE buscado por google y no lo encuentro.

Queria revisar que tenemos bien configurado los tipos de IVA

L9  Causa de exención de operaciones sujetas y exentas

VALORES DESCRIPCIÓN
E1 Exenta por el artículo 20
E2 Exenta por el artículo 21
E3 Exenta por el artículo 22
E4 Exenta por el artículo 24
E5 Exenta por el artículo 25
E6 Exenta por Otros


Me respondo yo solo:

Art. 20. Exenciones en operaciones interiores
https://www.supercontable.com/inform...dido-_IVA.html

Art. 21. Exenciones en las exportaciones de bienes
.https://www.supercontable.com/inform...dido-_IVA.html

Art. 22. Exenciones en las operaciones asimiladas a las exportaciones.
https://www.supercontable.com/inform...dido-_IVA.html

Art. 24. Exenciones relativas a regímenes aduaneros y fiscales.
https://www.supercontable.com/inform...dido-_IVA.html

Art. 25. Exenciones en las entregas de bienes destinados a otro Estado miembro.
https://www.supercontable.com/inform...dido-_IVA.html

anabelda 06-06-2017 16:36:40

Envio de más de 12 facturas
 
Hola,
por lo que he leído por aquí, y por lo que he podido comprobar por mi misma, hay problemas cuando intentamos enviar más de 12 facturas. Habláis del uso de CAPICOM. No lo he utilizado nunca y he copiado el código que indicáis. Pero creo que ya me estoy volviendo loca. No hay forma de hacerlo funcionar. Debe de ser la mayor tontería del mundo, pero me he atascado . Me debe de faltar algún uses, pero no se cual es. Me da error en PCCERT_CONTEXT, en InternetSetOption y en CERT_CONTEXT. ¿Puede echarme alguien un cable, o subir un ejemplo?

Gracias

Txemari 06-06-2017 16:43:09

Error
 
Hola, compañeros

¿ sabéis algo del siguiente error ?

Emitida : BE6002810 Incorrecto El valor del campo TipoImpositivo solo es permitido para fecha de operación inferior o igual al año 2012

Saludos

CMB 06-06-2017 16:48:39

Cita:

Empezado por Txemari (Mensaje 517807)
Hola, compañeros

¿ sabéis algo del siguiente error ?

Emitida : BE6002810 Incorrecto El valor del campo TipoImpositivo solo es permitido para fecha de operación inferior o igual al año 2012

Saludos

En el año 2012 hubo el último cambio de tipos de IVA, y quizás estés poniendo uno de entonces.

marine 06-06-2017 17:28:15

Cita:

Empezado por vboloradito (Mensaje 517793)
he pegado en el otro hilo un ejemplo:
https://www.clubdelphi.com/foros/sho...92&postcount=4

tienes que hacer el desglose por tipo de operacion o entrega de bienes.


muchas gracias ! , solucionado

nincillo 06-06-2017 17:51:20

Cita:

Empezado por figo21 (Mensaje 517215)
Vuelvo a adjuntar el proyecto en delphi7 con conexión a los web services del SII.

Como verás, aquí el XML se construye a pelo, nada de importación de wsdl.

Un saludo.

Muy buenas.

Ante todo, muchas gracias por compartir.

Estoy intentando probar tú código fuente en Delphi 2007 y aparentemente compila sin problemas.

El "problema" es que no consigo recibir respuesta respuesta alguna de la parte del servidor.

Si no le pongo un nombre de certificado correcto no me deja seguir, si le pongo uno correcto, sigue para adelante, hace la petición pero en la respuesta no obtiene nada y el memo de la derecha permanece en blanco.

¿Hará falta tener instalada alguna librería en el PC para que funcione correctamente?

Un saludo y gracias de nuevo.

EDITO:
El mismo ejecutable que compilé con Delphi 2007 en windows7 (y no obtiene respuesta), lo ejecuto en Windows 10 y funciona correctamente así que está claro que algo me "falta" por instalar en el Windows7.

marine 06-06-2017 18:04:29

Buenas , otra pregunta a ver quien me la aclara ....

Como funciona el CSV del archivo de respuesta ?.

Estoy realizando pruebas y por lo que entiendo , existe codigo CSV cuando parte o totalidad del envío es correcta .... pero.... no se obtiene un CSV individual por factura enviada ? es decir. Mando de una vez 60 facturas , todas con estado correcto y solo obtengo un CSV del envío general.

Si hago otras pruebas donde ya hay errores de aceptaciones parciales o incorrectas , a veces tengo CSV otras no ... la verdad es que me lio un poco.. a ver si alguien me lo puede aclarar.

Gracias!

mrobles 06-06-2017 18:08:51

Cita:

Empezado por marine (Mensaje 517814)
Buenas , otra pregunta a ver quien me la aclara ....

Como funciona el CSV del archivo de respuesta ?.

Estoy realizando pruebas y por lo que entiendo , existe codigo CSV cuando parte o totalidad del envío es correcta .... pero.... no se obtiene un CSV individual por factura enviada ? es decir. Mando de una vez 60 facturas , todas con estado correcto y solo obtengo un CSV del envío general.

Si hago otras pruebas donde ya hay errores de aceptaciones parciales o incorrectas , a veces tengo CSV otras no ... la verdad es que me lio un poco.. a ver si alguien me lo puede aclarar.

Gracias!

ACEPTADA = Con CSV en el padre
ACEPTADA CON ERRORES = CSV en el padre (y si es duplicada el CSV en el que se envio, en la factura)
RECHAZADO = SIN CSV

jorgenavarro 06-06-2017 19:56:43

Cita:

Empezado por brincola (Mensaje 516976)
Hola, compañeros.
Al compilar con Delphi XE5 tanto la versión 2 como la 3 del programa (Webservices AEAT Berlin) me está dando los 3 errores siguientes:

[dcc32 Error] Soap.SOAPHTTPTrans.pas(113): E2291 Missing implementation of interface method IWebNode.GetMimeBoundary
[dcc32 Error] Soap.SOAPHTTPTrans.pas(113): E2291 Missing implementation of interface method IWebNode.SetMimeBoundary
[dcc32 Fatal Error] Soap.SOAPHTTPTrans.pas(384): F2063 Could not compile used unit 'Soap.Win.CertHelper.pas'


¿Seríais tan amables de decirme dónde puede estar el problema?
Gracias anticipadas. Un saludo.

Hola. ¿te han dado respuesta a este problema?
Gracias por anticipado.

jorgenavarro 06-06-2017 20:06:16

Cita:

Empezado por mike_GK (Mensaje 517282)
Al final no pude hacerme con el WSDL Importer y los estoy creando a mano.

Y me decante por crearlo a mano y haciendo una conexion para enviar como el ejemplo que te facilitaron, ahi aun tengo que mirar si la conexion la hago por delphi o de forma externa

Hola, cuando importas los wdsl desde delphi para crear los .pas, tienes que tener en la misma carpeta esos wdsl y además los .xsd que te descargas desde otro link. Han de estar los .xsd para que te declare bien las variables.


La franja horaria es GMT +2. Ahora son las 23:18:57.

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