Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(AutoIt) SOAP e-factura.sunat.gob.pe getStatusCdrMake a SOAP call to https://e-factura.sunat.gob.pe/ol-it-wsconscpegem/billConsultService
; This example requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. ; -------------------------------------------------------------------------------- ; Also see Chilkat's Online WSDL Code Generator ; to generate code and SOAP Request and Response XML for each operation in a WSDL. ; -------------------------------------------------------------------------------- $oHttp = ObjCreate("Chilkat.Http") Local $bSuccess ; <soapenv:Envelope xmlns:ser="http://service.sunat.gob.pe" ; xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" ; xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> ; <soapenv:Header> ; <wsse:Security> ; <wsse:UsernameToken> ; <wsse:Username>MY_USERNAME</wsse:Username> ; <wsse:Password>MY_PASSWORD</wsse:Password> ; </wsse:UsernameToken> ; </wsse:Security> ; </soapenv:Header> ; <soapenv:Body> ; <ser:getStatus> ; <rucComprobante>99999999999</rucComprobante> ; <tipoComprobante>01</tipoComprobante> ; <serieComprobante>F001</serieComprobante> ; <numeroComprobante>55555</numeroComprobante> ; </ser:getStatus> ; </soapenv:Body> ; </soapenv:Envelope> ; $oXml = ObjCreate("Chilkat.Xml") $oXml.Tag = "soapenv:Envelope" $oXml.AddAttribute("xmlns:ser","http://service.sunat.gob.pe") $oXml.AddAttribute("xmlns:soapenv","http://schemas.xmlsoap.org/soap/envelope/") $oXml.AddAttribute("xmlns:wsse","http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd") $oXml.UpdateChildContent "soapenv:Header|wsse:Security|wsse:UsernameToken|wsse:Username","MY_USERNAME" $oXml.UpdateChildContent "soapenv:Header|wsse:Security|wsse:UsernameToken|wsse:Password","MY_PASSWORD" $oXml.UpdateChildContent "soapenv:Body|ser:getStatus|rucComprobante","99999999999" $oXml.UpdateChildContent "soapenv:Body|ser:getStatus|tipoComprobante","01" $oXml.UpdateChildContent "soapenv:Body|ser:getStatus|serieComprobante","F001" $oXml.UpdateChildContent "soapenv:Body|ser:getStatus|numeroComprobante","55555" Local $strXml = $oXml.GetXml() $oHttp.SetRequestHeader "SOAPAction","urn:getStatusCdr" $oHttp.SetRequestHeader "Content-Type","text/xml; charset=utf-8" Local $sEndPoint = "https://e-factura.sunat.gob.pe/ol-it-wsconscpegem/billConsultService" Local $oResp = $oHttp.PostXml($sEndPoint,$strXml,"utf-8") If ($oHttp.LastMethodSuccess <> True) Then ConsoleWrite($oHttp.LastErrorText & @CRLF) Exit EndIf Local $iStatusCode = $oResp.StatusCode If ($iStatusCode <> 200) Then ConsoleWrite("Non-success status code: " & $iStatusCode & @CRLF) ConsoleWrite("Response header: " & $oResp.Header & @CRLF) ConsoleWrite("Response body: " & $oResp.BodyStr & @CRLF) ConsoleWrite("Unsuccessful." & @CRLF) Exit EndIf $oXmlResp = ObjCreate("Chilkat.Xml") $oXmlResp.LoadXml($oResp.BodyStr) ConsoleWrite($oXmlResp.GetXml() & @CRLF) ; A sample response: ; <?xml version="1.0" encoding="UTF-8"?> ; <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> ; <S:Body> ; <ns0:getStatusResponse xmlns:ns0="http://service.sunat.gob.pe"> ; <status> ; <statusCode>0001</statusCode> ; <statusMessage>El comprobante existe y est� aceptado.</statusMessage> ; </status> ; </ns0:getStatusResponse> ; </S:Body> ; </S:Envelope> ; ; Parse the response... Local $sS_Envelope_xmlns_S = $oXml.GetAttrValue("xmlns:S") Local $sNs0_getStatusResponse_xmlns_ns0 = $oXml.ChilkatPath("S:Body|ns0:getStatusResponse|(xmlns:ns0)") $iStatusCode = $oXml.GetChildIntValue("S:Body|ns0:getStatusResponse|status|statusCode") Local $statusMessage = $oXml.GetChildContent("S:Body|ns0:getStatusResponse|status|statusMessage") |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.