Artículo
· 20 mar, 2024 Lectura de 2 min

SOAP SII

En el proceso de consumir los servicios del SII me encontré con algunas dificultades y quiero compartirlas para facilitar el trabajo posterior.

El contexto es bastante local, por eso no expondré documentación comprometedora, solo los detalles de cómo adaptarse a los requerimientos del Servicio.

Hay un proceso de autenticación que demanda adjuntar la firma en el body de un documento, que a su vez va en un campo string en el body del mensaje. Para ello había que mezclar la documentación con la obtención del string, usando oportunamente estas líneas :

set status=writer.OutputToString()

Set xml = writer.GetXMLString(.tSC)

El resto de lo anterior corresponde a la documentación.

La dificultad mayor empieza en que ese documento XML debe ir en un campo del SOAP Envelope, como string, así que di varias vueltas para encontrar cómo alterar el WebClient, donde el parámetro del método es un string, dejándolo así:

%String(CONTENT="MIXED")

Junto con un par de cambios más en la definición del método:

SoapBindingStyle = document, SoapBodyUse = literal

 Esta fue la forma en la que logré eliminar el 

<![CDATA[ ... ]]>

Dejando solo el text escapado, como lo requería el servicio.

Se que esto no es una descripción completa en detalle, pero son las piezas que faltaban para que lograra consumir el servicio, después de revisar toda la documentación.

Si alguien necesita más ayuda que la expresada, me podéis contactar directamente.

Comentarios (0)1
Inicie sesión o regístrese para continuar