Patient Discovery
Availability:
| Environment | status |
|---|---|
| Test | ✅ Available |
| Acceptance | ✅ Available |
| Production | ✅ Available |
Functional summary
With the Patient Discovery API a XIS can query Spreekuur.nl whether a Patient with a given BSN is already registered. It is also possible to invite a patient to start using Spreekuur.nl. The patient will receive an email with a link to the login page of Spreekuur.nl with the inviting organisation pre-selected.
The XIS must also provide an API for Spreekuur.nl to query if a patient with a given BSN is registered at a organisation with a given AGB. Spreekuur.nl uses this API to check if a patient is registered at the organisation before starting functional flows such as booking an appointment or starting triage for an e-consult.
XIS to Spreekuur.nl Patient Discovery
The flow to discover a patient is as follows:
- The XIS queries Spreekuur.nl for a patient with the given BSN.
- ⚠️ A FHIR POST based search is used to prevent the BSN from being logged in webserver logs.
- If the patient is registered, Spreekuur.nl returns the Patient resource.
- If the patient is not registered, Spreekuur.nl returns a 404 Not Found response.
XIS to Spreekuur.nl Invite Patient
The flow to invite a patient is as follows:
- The practitioner invites a patient in the XIS.
- The XIS sends a POST request to Spreekuur.nl to invite the patient with a BSN and email.
- If the patient is not registered, Spreekuur.nl sends an email to the patient with a link to the login page of Spreekuur.nl with the inviting organisation pre-selected.
- If the patient is already registered, Spreekuur.nl returns a 422 Conflict response.
XIS to Spreekuur.nl Invite Patient for a spreekuur chat
The flow to invite a patient is as follows:
- The practitioner invites a patient in the XIS having a chat channel with an opening message (this works if the XIS uses the same Chat service instance as spreekuur.nl).
- The XIS sends a POST request to Spreekuur.nl to invite the patient.
- If the patient not registered:
- Spreekuur.nl sends an email to the patient with a link to the login page of Spreekuur.nl with the inviting organisation pre-selected.
- Patient logs in first time and creates an account
- The patient is added to the chat and can continue the chat
- System message is added to the chat informing everyone that the patient has been added.
- If the patient is already registered: Spreekuur.nl returns a 422 Conflict response.
- If patient does not register within 6 weeks from the invitation the chat invitation expires. When the patient creates an account afterwards he will not be added to the channel. A System message is sent to the channel that the patient will no longer join.
Spreekuur.nl to XIS Patient Discovery
The flow to discover if a patient is registered at a given organisation is as follows:
- The patient configures the organisation in Spreekuur.nl.
- Spreekuur.nl queries the XIS for patients. Based on the BSN in the access token, the XIS queries if the patient is registered at the organisation.
- If the patient is registered, the XIS returns a Bundle with the Patient resource.
- If the patient is not registered, the XIS returns an empty Bundle.