> This page is for version 0.0.60.
> For other versions, use one of these documentation indexes:
> - 0.0.79 (default): https://docs.refer.health.gov.sg/0-0-79/llms.txt
> - 0.0.78: https://docs.refer.health.gov.sg/0-0-78/llms.txt
> - 0.0.77: https://docs.refer.health.gov.sg/0-0-77/llms.txt
> - 0.0.76: https://docs.refer.health.gov.sg/0-0-76/llms.txt
> - 0.0.75: https://docs.refer.health.gov.sg/0-0-75/llms.txt
> - 0.0.74: https://docs.refer.health.gov.sg/0-0-74/llms.txt
> - 0.0.73: https://docs.refer.health.gov.sg/0-0-73/llms.txt
> - 0.0.72: https://docs.refer.health.gov.sg/0-0-72/llms.txt
> - 0.0.71: https://docs.refer.health.gov.sg/0-0-71/llms.txt
> - 0.0.70: https://docs.refer.health.gov.sg/0-0-70/llms.txt
> - 0.0.69: https://docs.refer.health.gov.sg/0-0-69/llms.txt
> - 0.0.68: https://docs.refer.health.gov.sg/0-0-68/llms.txt
> - 0.0.67: https://docs.refer.health.gov.sg/0-0-67/llms.txt
> - 0.0.66: https://docs.refer.health.gov.sg/0-0-66/llms.txt
> - 0.0.65: https://docs.refer.health.gov.sg/0-0-65/llms.txt
> - 0.0.64: https://docs.refer.health.gov.sg/0-0-64/llms.txt
> - 0.0.63: https://docs.refer.health.gov.sg/0-0-63/llms.txt
> - 0.0.62: https://docs.refer.health.gov.sg/0-0-62/llms.txt
> - 0.0.61: https://docs.refer.health.gov.sg/0-0-61/llms.txt
> - 0.0.60: https://docs.refer.health.gov.sg/0-0-60/llms.txt
> - 0.0.59: https://docs.refer.health.gov.sg/0-0-59/llms.txt
> - 0.0.58: https://docs.refer.health.gov.sg/0-0-58/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.refer.health.gov.sg/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.refer.health.gov.sg/_mcp/server.

Referrals can be cancelled when the referring doctor or institution needs to withdraw a referral for instance, if the patient no longer wishes to proceed, the wrong destination was selected, or duplicate referrals were made.

Cancelling a referral ensures that downstream systems (e.g. HAS or Epic) receive a proper cancellation event and can close the loop cleanly, avoiding administrative errors or unnecessary appointments.

Depending on the downstream system, you may or may not be able to invoke a cancellation. In all cases, you will only be able to cancel a pending referral.

### How it works

1. **Identify the referral to cancel**

   Retrieve the referral details from your list and confirm its current status is cancellable (e.g. `pending`, not yet confirmed).

2. **Submit the cancellation request**

   Call the cancel endpoint and include optional fields such as:

   * `cancelledByName` or `cancelledByUin` (who performed the action)
   * `cancelNote` (reason for cancellation)

3. **RefX updates the record**

   The referral will transition to the `cancelled` status, and a cancellation event will be recorded in the timeline.

### Implementation notes

* **User permissions:**

  Only the originating (sending) institution can cancel a referral.

  Attempts by receiving systems will be rejected.

* **UX considerations:**

  Always show a confirmation dialog before proceeding with cancellation, since this action cannot be undone.

  Include a text box to capture the cancellation reason, and display a success message once completed.

* **Status propagation:**

  Downstream systems are automatically notified. You do not need to call them directly.

* **Audit trail:**

  The cancellation is recorded as a timeline event (`referral.cancelled`) with metadata about who initiated it and when.

  You can display this in your system’s activity log or “Referral History” section.