Event Structure
All webhooks follow this standard structure:Root Event Fields
Data Object (Common Fields)
Reserved Metadata Fields
Every webhook includes a top-levelmetadata object carrying three reserved fields.
They are opaque pass-through values for partner use: you supply them and Parchment
echoes them back unchanged on the resulting webhook, so you can correlate an event to
your own context (an order id, session, etc.).
How they are populated: append
reserved_1 / reserved_2 / reserved_3 as
query parameters on the redirect_path when generating an SSO token (see
Embedded iframe → Reserved parameters).
Each field is delivered on the webhook only when present and non-empty; absent fields
arrive as null, and values longer than 30 characters are truncated.
Example: SSO request → webhook metadata
A telehealth partner tying a prescription back to their own booking, consultation, and acquisition channel generates the SSO token with those values on theredirect_path:
metadata so the partner can reconcile the event against
their booking system:
Prescription Events
prescription.created
Sent when a new prescription is created in Parchment.
Data Fields:
When to expect:
- After a prescription is successfully created via the Parchment portal or iFrame
- Sent immediately after prescription creation is complete
- Update your system with the new prescription SCID
- Use the SCID to fetch full prescription details via the Get Patient Prescriptions API endpoint
- Sync prescription data to your platform
- Trigger follow-up workflows (e.g., patient notifications)
The webhook provides the SCID (Script Control Identifier) which you can use to retrieve the complete prescription details by calling the Get Patient Prescriptions API endpoint with the
partner_patient_id.prescription.ceased
Sent when an active prescription is ceased (stopped) in Parchment.
Data Fields:
When to expect:
- After an active prescription is ceased via the Parchment portal or iFrame
- Sent immediately after the cease action is complete
- Mark the prescription as no longer active in your system
- Stop any follow-up workflows tied to the ceased prescription
- Use the SCID to fetch the latest prescription state via the Get Patient Prescriptions API endpoint
prescription.cancelled
Sent when a prescription is cancelled in Parchment.
Data Fields:
When to expect:
- After a prescription is cancelled via the Parchment portal or iFrame
- Sent immediately after the cancel action is complete
- Mark the prescription as cancelled in your system
- Reverse or void any workflow tied to the cancelled prescription
- Use the SCID to fetch the latest prescription state via the Get Patient Prescriptions API endpoint
prescription.reissued
Sent when a prescription is reissued in Parchment (the prescription token is re-delivered; the SCID is unchanged).
Data Fields:
When to expect:
- After a prescription token is reissued via the Parchment portal or iFrame
- Sent immediately after the reissue action is complete
- Notify the patient that the prescription token has been re-sent
- Refresh any cached prescription token / delivery details in your system
- Use the SCID to fetch the latest prescription state via the Get Patient Prescriptions API endpoint
The fetched prescription includes a
delivery object describing how and where it
was sent (channel, recipient type, destination, and the pharmacy identity for
pharmacy sends). delivery always reflects the current version, so a reissue
overwrites it. To build a full delivery history (e.g. an original send followed by
reissues to different addresses), fetch the prescription in response to each
prescription.created / prescription.reissued notification — every fetch returns
the delivery state as at that event. The webhook payload itself carries IDs only.
