Webhooks
Let other tools receive automatic notifications when things happen in your clinic — appointment booked, invoice paid, patient registered.
Overview
A webhook is an automated message MyDentalPractice sends to another system as soon as something happens — a new appointment is booked, an invoice is paid, a patient is registered. Useful if you want to mirror clinic events into a CRM, an accounting tool, or your clinic's website. Like API keys, you don't write the code; your developer sets up the receiving side and you configure the trigger here.
Prerequisites
- Owner or Admin role
- API access enabled (Enterprise tier or addon)
- A web address your developer has provided for receiving the notifications
- A short secret string your developer can use to confirm messages are genuinely from MyDentalPractice (not someone pretending)
Steps
Open Webhooks. Settings → Integrations → Webhooks.
Click "+ New webhook".
Enter the destination URL. Provided by your developer. Must use HTTPS.
Pick the events you want sent. Common ones: appointment created, appointment cancelled, appointment completed, invoice created, invoice paid, patient created, patient updated. Tick all that apply.
Generate or paste a secret. A short shared password used to confirm messages are genuine. Save it on both ends.
Save. MyDentalPractice immediately sends a test message to verify the destination is reachable.
Verify the test arrived. Status Active appears with the time of last success. If it failed, the error explains why — usually a wrong URL or an expired certificate on the receiving end.
Monitor delivery. Each webhook row shows the last 100 deliveries with status. Failed deliveries auto-retry after a few minutes, with backoff up to a couple of hours.
Replay a failed delivery. Click any failed delivery → Replay. Useful when the receiving end was briefly down and you want to push the missed event manually.
Expected outcome
- The events you picked trigger automatic messages to your developer's URL
- Failed deliveries auto-retry; persistent failures alert you in the dashboard
- The receiving end can verify each message is genuine using the shared secret
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| Test message fails | Wrong URL or expired SSL on the receiving end | Confirm both with your developer |
| Receiving end reports invalid signature | Secret doesn't match on both sides | Re-copy the secret to your developer |
| Events fire but nothing arrives | Firewall on the receiving end blocking inbound traffic | Ask your developer to check their server logs |
| Same event delivered twice | A retry of an earlier failure | Your developer should handle this by event ID |
| Want a new event type | Limited to what MyDentalPractice supports today | Submit a feature request |