Before anything else, open the contact in Aesthetix CRM and click Notes.
Every time 4D EMR sends an update — a new appointment, a status change, a charge — the integration automatically logs it as a note on that contact. This is the fastest way to know whether the integration is working.
You see a note → Aesthetix CRM received the update. Keep reading to find out why something still looks wrong.
No note at all → Aesthetix CRM never received the update. Start troubleshooting from there.
The 4D EMR integration checks for new activity every 5 minutes. That means changes made in 4D EMR can take 5 to 10 minutes to appear in Aesthetix CRM.
Always wait at least 10 minutes before assuming something didn't sync.
Wait 10 minutes first. If it hasn't been that long since the appointment was booked, just wait and check again.
The appointment type might not be set up yet. Every appointment type in 4D EMR needs to be mapped in your setup so Aesthetix CRM knows what to do with it. If someone added a new appointment type in 4D EMR after your integration went live, it won't be recognized yet.
Find the exact appointment type name as it appears in 4D EMR
Send that name to Aesthetix CRM support
Support will add it to your setup — appointments of that type will sync correctly going forward
Lots of contacts are affected, not just one. Contact Aesthetix CRM support right away and include the date the problem started plus a few example patient names.
The appointment type is mapped to the wrong category. This is the most common reason a contact doesn't move — or moves to the wrong stage. The note will show you what category the integration assigned. If it's wrong, that's your answer.
Contact support with the appointment type and the correct category. Don't try to edit the workflows yourself — they're locked to protect the integration.
The appointment is Pre-Op, Post-Op, or Block. These three categories are set up to not move the pipeline — that's intentional. If the appointment falls into one of these, no stage change will happen and that's normal.
A cancellation came through after a reschedule. If a patient rescheduled and then the old appointment was marked cancelled, the cancellation may have synced last — making it look like the contact moved backward. Check the notes to see the order things came in, and contact support to fix the pipeline stage if needed.
There's no opportunity on the contact. The integration moves existing opportunities — it doesn't create new ones. If there's no opportunity on the record, create one manually in the right pipeline and future updates from 4D EMR will start moving it.
Surgical Pipeline:
Appointment Category | 4D Status | Pipeline Stage |
Surgical Consult | Unconfirmed / Confirmed | Consult Booked |
Surgical Consult | Seen / CheckedOut | Consult Complete |
Surgical Consult | Cancelled / NoShow | Cancelled / No-Show |
Surgical Appointment | Unconfirmed / Confirmed | Surgery Scheduled |
Surgical Appointment | Seen / CheckedOut | Surgery Complete |
Surgical Appointment | Cancelled / NoShow | Cancelled / No-Show |
Non-Surgical Pipeline:
Appointment Category | 4D Status | Pipeline Stage |
Non-Surgical Consult | Unconfirmed / Confirmed | Booked |
Non-Surgical Consult | Seen / CheckedOut | Patient |
Non-Surgical Appointment | Unconfirmed / Confirmed | Booked |
Non-Surgical Appointment | Seen / CheckedOut | Patient |
Non-Surgical Consult / Appointment | Cancelled / NoShow | Cancelled / No-Show |
***Pre-Op, Post-Op, and Block appointments don't trigger any pipeline movement.
Here's when each field updates:
Next Visit Date — updates when an appointment is Confirmed in 4D EMR
Last Visit Date — updates when an appointment is marked Seen or CheckedOut in 4D EMR
If a field didn't update:
Check the Notes tab to confirm the appointment event came through
Make sure the right status was set in 4D EMR — if the appointment was completed but never marked Seen or CheckedOut, Last Visit Date won't update
If the note is there but the field is still blank, contact support and include a screenshot of the note
These fields store the date only — appointment times aren't included.
This comes from the Patient Charges trigger, which is optional.
Med spa / non-surgical practices: This generally works well and gives you accurate lifetime value data.
Plastic surgery practices: We don't recommend using the Patient Charges trigger. Surgical billing is more complex — credits, payment plans, and adjustments often result in numbers that don't look right. If you're a surgical practice and your lifetime value figures seem off, contact support to talk about turning off the charges trigger and tracking value manually instead.
To create a patient in 4D EMR from Aesthetix CRM, apply the tag 4D Create to the contact. The patient will appear in 4D EMR within 2 to 5 minutes.
Before applying the tag, make sure these fields are filled in on the contact:
Field | Notes |
First name | — |
Last name | — |
— | |
Phone number | — |
Date of birth | — |
4D EMR Facility | Multi-location practices only — must match the facility name exactly as it appears in 4D EMR |
Still not working? The most common cause is a missing field or a facility name that doesn't match exactly (watch for spacing and capitalization). Double-check everything, remove the tag, and apply it again.
Patient already exists in 4D EMR? The system won't create a duplicate. Search by email and phone in 4D EMR before assuming it failed.
4D EMR sends birthday data into a field called 4D Birthday — not the standard Date of Birth field. A built-in workflow automatically copies it over to Date of Birth, but it only runs after the patient has had at least one completed appointment (Seen or CheckedOut status).
If birthday automations aren't firing:
Open the contact and check that 4D Birthday has a value
Check that the native Date of Birth field is also filled in
Confirm the patient has had at least one appointment reach Seen or CheckedOut in 4D EMR
If 4D Birthday is filled in but Date of Birth is empty, contact support
The main integration workflows are locked — but you can build on top of them. These tags and fields are automatically created by the integration and can be used as triggers in your own workflows:
Tags: Appointment Booked, Patient, Cancel/No-Show
Fields: Next Visit Date, Last Visit Date, 4D Appointment Status, 4D Appointment Type, 4D Appointment Subtype, 4D Provider Name, 4D EMR Facility, Patient Lifetime Value
Need a workflow unlocked or a new appointment type added? Contact Aesthetix CRM support.
What's happening | What to do |
No note after 10 minutes, one patient | Check the appointment type, then contact support |
No note, multiple patients affected | Contact support right away |
New appointment type not syncing | Send support the exact appointment type name |
Contact moved to the wrong pipeline stage | Send support the appointment type and correct stage |
Contact moved backward after a reschedule | Contact support to fix the pipeline stage |
Patient creation not working | Check all required fields and re-apply the tag |
Patient already exists in 4D EMR | Search by email and phone before re-trying |
Birthday automation not running | Confirm a completed appointment exists, then contact support |
Lifetime value looks wrong (surgical practice) | Contact support to discuss turning off the charges trigger |
Need to customize a locked workflow | Contact support |