load ./chilkat.dll
set xml [new_CkXml]
CkXml_put_Tag $xml "soapenv:Envelope"CkXml_AddAttribute $xml "xmlns:soapenv""http://schemas.xmlsoap.org/soap/envelope/"CkXml_AddAttribute $xml "xmlns:sfLR""https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd"CkXml_AddAttribute $xml "xmlns:sf""https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"CkXml_UpdateChildContent $xml "soapenv:Header"""CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:Cabecera|sf:ObligadoEmision|sf:NombreRazon""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:Cabecera|sf:ObligadoEmision|sf:NIF""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:IDVersion""1.0"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:IDFactura|sf:IDEmisorFactura""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:IDFactura|sf:NumSerieFactura""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:IDFactura|sf:FechaExpedicionFactura""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:NombreRazonEmisor""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:TipoFactura""F1"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:DescripcionOperacion""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:Desglose|sf:DetalleDesglose|sf:CalificacionOperacion""S1"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:Desglose|sf:DetalleDesglose|sf:BaseImponibleOimporteNoSujeto""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:CuotaTotal""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:ImporteTotal""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:Encadenamiento"""CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:SistemaInformatico|sf:NombreRazon""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:SistemaInformatico|sf:NIF""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:SistemaInformatico|sf:NombreSistemaInformatico""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:SistemaInformatico|sf:IdSistemaInformatico""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:SistemaInformatico|sf:Version""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:SistemaInformatico|sf:NumeroInstalacion""string"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:SistemaInformatico|sf:TipoUsoPosibleSoloVerifactu""S"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:SistemaInformatico|sf:TipoUsoPosibleMultiOT""S"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:SistemaInformatico|sf:IndicadorMultiplesOT""S"CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:FechaHoraHusoGenRegistro""dateTime"CkXml_UpdateChildContentInt $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:TipoHuella"01CkXml_UpdateChildContent $xml "soapenv:Body|sfLR:RegFactuSistemaFacturacion|sfLR:RegistroFactura|sf:RegistroAlta|sf:Huella""string"# In a SOAP HTTP request, including the XML declaration (<?xml version="1.0" encoding="UTF-8"?>) in the XML body is generally not required. CkXml_put_EmitXmlDecl $xml 0set soapRequestBody [CkXml_getXml $xml]
set endpoint "https://www1.agenciatributaria.gob.es/wlpl/TIKE-CONT/ws/SistemaFacturacion/RequerimientoSOAP"set soapAction ""# For SOAP requests, the standard Content-Type is usually set to "text/xml" or "application/soap+xml"set contentType "text/xml"
set http [new_CkHttp]
CkHttp_ClearHeaders $http
CkHttp_SetRequestHeader $http "Content-Type" $contentType
CkHttp_SetRequestHeader $http "SOAPAction" $soapAction
set resp [new_CkHttpResponse]
ERROR: Undefined variable(success)
ERROR: Undefined variable(success)
if {$success == 0} then {
puts [CkHttp_lastErrorText $http]
puts "Failed to send SOAP request."
delete_CkXml $xml
delete_CkHttp $http
delete_CkHttpResponse $resp
exit
}
# Get the XML response body.
set responseXml [new_CkXml]
CkHttpResponse_GetBodyXml $resp $responseXml
set statusCode [CkHttpResponse_get_StatusCode $resp]
puts "response status code: $statusCode"
# If the status code does not indicate succcess, then show the response XML,
# which probably contains error information.if {$statusCode != 200} then {
puts [CkXml_getXml $responseXml]
delete_CkXml $xml
delete_CkHttp $http
delete_CkHttpResponse $resp
delete_CkXml $responseXml
exit
}
puts [CkXml_getXml $responseXml]
# Parse the successful SOAP response XML.# This is a sample of the response XML, but the namespace prefixes will be different.
# We can parse the result using "*" for the namespace prefixes (see below).set NombreRazon [CkXml_getChildContent $responseXml "*:Body|*:RespuestaRegFactuSistemaFacturacion|*:Cabecera|*:ObligadoEmision|*:NombreRazon"]
set NIF [CkXml_getChildContent $responseXml "*:Body|*:RespuestaRegFactuSistemaFacturacion|*:Cabecera|*:ObligadoEmision|*:NIF"]
set TiempoEsperaEnvio [CkXml_getChildContent $responseXml "*:Body|*:RespuestaRegFactuSistemaFacturacion|*:TiempoEsperaEnvio"]
set EstadoEnvio [CkXml_getChildContent $responseXml "*:Body|*:RespuestaRegFactuSistemaFacturacion|*:EstadoEnvio"]
delete_CkXml $xml
delete_CkHttp $http
delete_CkHttpResponse $resp
delete_CkXml $responseXml