# Exchange process

The Sx3 Housing applications have integration code to support the Keyfax web service. The basic principles utilised in the exchange process are illustrated below. Note that **KFnnWS** refers to either the Keyfax **3.2** or Keyfax **4.0** version of the Web Service.

<figure><img src="/files/dI4FVeQs7reHB6EYamEo" alt=""><figcaption><p>Exchange process</p></figcaption></figure>

The numbered steps above are explained in more detail below:

1. The Sx3 Housing application receives a repair request call from a tenant or caller.
2. The Sx3 Housing application calls the Sx3 Integrator to create XML instructions to pass to Keyfax. This includes details of tenant, their property (asset), repair history and planned maintenance.
3. The Sx3 Integrator adds a unique session ID, and wraps the XML data in a SOAP envelope and passes to the Keyfax web service.
4. The Keyfax web service (KFnnWS where n = version no.) receives the XML SOAP request and extracts the Keyfax request data.
5. The Keyfax web service puts the Keyfax request data in the Keyfax database, using the Sx3 unique session ID as the key.
6. The Keyfax web service validates the XML data, and returns a status in the SOAP request response.
7. The Sx3 Integrator processes the SOAP request response, and if OK, will pause the Sx3 application while the Keyfax is processed.
8. The Sx3 Integrator loads an Internet Explorer window to the Keyfax URL to begin the diagnostic script.
9. The Keyfax application guides the user through a repair diagnostic.
10. Keyfax completes and generates repair data to export, or the user cancels a script / exits the application.
11. Keyfax builds a return XML packet, and includes the Keyfax status (1 = Complete, 2=Cancelled, 3=Exited).
12. Keyfax wraps the XML packet in a SOAP envelope and sent it to a Sx3 web service, where the Sx3 KEYFAX\_DATA API will process the results.
13. The Sx3 Integrator validates the XML packet, and returns a validation response to Keyfax for logging.
14. The Sx3 Housing application receives focus back from the Integrator and if Works Order data is received; displays a new Works Order populated from Keyfax data.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.keyfax.biz/integrations/host-systems/northgate/exchange-process.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
