1. Home
  2. Corporate Node
  3. SOAP requests
  4. SOAP request and response form

SOAP request and response form

SOAP request

Typical SOAP request has following form:

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="ns1">
   <soapenv:Header/>
   <soapenv:Body>
      <ns1:nazwa_soap soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
         <argument1 xsi:type="xsd:string">value1</argument1>
         <argument2 xsi:type="xsd:string">value2</argument2>
         <!-- ... -->
      </ns1:nazwa_soap>
   </soapenv:Body>
</soapenv:Envelope>

Where: nazwa_soap is request name (ie. hello, startRegister, etc.), argument1, argument2 are argument names (ie. billonUserName), and value1, value2 are their values.

Standard SOAP response

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns1="ns1">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
      <ns1:response_name>
         <return xsi:type="ns1:response_type">
            <requestStatus>status</requestStatus>
            <requestStatusDescription>description</requestStatusDescription>
            <taskId>id</taskId>
         </return>
      </ns1:response_name>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Where meaning of the fields are:

field name type description
requestStatus string information if request has been successfully processed
requestStatusDescription string Additional description of status
taskId string id of created task (necessary to check task status or response)

In case of some messages (ie. hello, readSettings, getMpin etc.) all information is passed in response.
Howewer in most cases response doesn’t contain requested object, but it returns id of created task. Using this taskId we are able to poll task status/result. Usually we use getTaskStatus method for that.

Returned statuses

In case of failure, error codes are being returned. Most common error codes are presented below

name description
SUCCESS operation finished with success
ERR_TECHNICAL_PROBLEM technical error occured
ERR_TIMEOUT timeout has exceeded
ERR_NO_PERMISSION user is not allowed to do this operation
ERR_VUI_NOT_CONNECTED application is not yet connected
ERR_VUI_NOT_LOGGEDIN user is not logged in
ERR_VUI_CANT_READ data cannot be read yet
ERR_VUI_CANT_WRITE data cannot be written yet
ERR_VUI_NO_VAULT user cannot access to vault
ERR_VUI_LOGGING_IN_OR_REGISTERING logging or registering is in progress
ERR_ONGOING_SYNC_TRY_AGAIN_LATER synchronization is ongoing. Please try again later
ERR_JSON_PARSE_ERROR Json parsing error

Error codes specific for particular operations, are presented in their descriptions.

Was this article helpful to you? Yes No

How can we help?