Paso 3 – Preparación del fichero para enviar a la SUNAT

Según la documentación la definición de los parámetros es la siguiente para la llamada sendBill

Contenido de SOAP sendBill 1

Contenido de SOAP sendBill 2

Contenido de SOAP sendBill

Como plantilla de sendBill tomamos el de la documentación en lugar del que se ha descargado automáticamente:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.sunat.gob.pe" xmlns:wsse="http://docs.oasisopen.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
	<soapenv:Header>
		<wsse:Security>
			<wsse:UsernameToken>
				<wsse:Username>20100066603MODDATOS</wsse:Username>
				<wsse:Password>moddatos</wsse:Password>
			</wsse:UsernameToken>
		</wsse:Security>
	</soapenv:Header>
	<soapenv:Body>
		<ser:sendBill>
			<fileName>20100066603-01-F001-1.zip</fileName>
			<contentFile>cid:20100066603-01-F001-1.zip</contentFile>
		</ser:sendBill>
	</soapenv:Body>
</soapenv:Envelope>
Estructura de la llamada Soap con el token

Estructura de la llamada Soap

Construcción del nombre del fichero que se comunica en el fileName:

Construcción del nombre del fichero - fileName

Construcción del nombre del fichero – fileName

En el campo contentFile, se enviará el fichero dentro de un zip. Se debe disponer del fichero XML que ya debe de llevar el mismo nombre que el del fichero ZIP.

Para poder enviar el contenido de este zip, lo abriremos con un editor y lo convertiremos en base64 para que no se pierdan los caracteres de control que de otro modo no podrían enviarse. SoapUI dispone de la facilidad de conversión a base64 directamente, para ello, hay que dejar vacío y situarse dentro de la etiqueta <contentFile></contentFile> y realizar botón derecho y seleccionar “insert file as base64”.


Admin

Becommerce.es es una colección de mis notas a título personal, use at your own risk.

4 comentarios

Alfredo Pastor · 20 de julio de 2018 a las 17:51

Hola Raul,

Das consultorias a distancia sobre este tema?

Saludos.
Alfredo.

    Raúl Blasco Martín · 20 de septiembre de 2018 a las 23:45

    Hola Alfredo, Disculpe la demora, cayó en el spam, en estos momentos mi contrato no lo permite, pero sobre este tema intentaré ayudarle en lo posible.

Fabrizzio Valencia · 4 de octubre de 2019 a las 00:06

Estimado Raúl, quiero utilizar SoapUI para consultar el estado de un comprobante emitido por un proveedor, pero me sale error 0101-El encabezado es incorrecto.

La URL del WebService es https://www.sunat.gob.pe:443/ol-it-wsconscpegem/billConsultService

Espero puedas ayudarme.

Gracias
Saludos

    Raúl Blasco Martín · 5 de octubre de 2019 a las 23:54

    Hola Fabrizzio, sin más detalles no le puedo decir más que revise los datos de acceso que está utilizando en la llamada soap. ¿Le funcionó algún otro tipo de envío con esa misma configuración de seguridad?

Deja un comentario