Connect SmileReply to your CRM
SmileReply can send each new lead to your CRM as it arrives, and keep it up to date as the patient moves through their consultation. Your team works from the CRM they already use, and nobody has to copy details across by hand.
What gets sent
Each step of a patient's journey is sent as it happens. You choose which ones.
Each one carries the patient's name, email and mobile, what they'd like to improve, and where they're up to. Once you've sent their consultation, it also includes the treatments you recommended, the price and time estimates, and links to their consultation.
What you need
Your CRM needs a way to receive data from another app. Look for an automation trigger called something like Inbound webhook, Incoming webhook or Catch hook. It gives you a web address to paste into SmileReply.
- If your CRM has one: it connects directly.
- If it doesn't: connect through a tool like Zapier, Make or n8n. It receives the lead from SmileReply and adds it to your CRM.
Connect your CRM
- In your CRM, create an automation that starts with an incoming webhook, and copy its web address.
- In SmileReply, go to Practice Settings and find Send leads to your CRM.
- Paste the address into Endpoint URL.
- Open Events and tick the steps you want sent.
- Press Save connection.
- Press Send test event. A test lead goes out within a minute, with made-up patient details.
Back in your CRM, use the test to set up what happens to each lead: create the contact, add it to a pipeline, or notify your team.
When you create the contact, set its source to SmileReply, so your team can see where every lead came from. You can type it straight into the source field. It doesn't need to come from SmileReply's data.
You can also tag each contact, for example smilereply. It's optional, but a tag makes your SmileReply leads easy to filter, and to use as the trigger for other automations.
event. Use it in your CRM to do something different for each step, like moving the lead along your pipeline.Everything that's sent
Every step sends the same list of fields, so a mapping you build for one works for all of them. A field with nothing in it yet is sent empty, like the price before you've sent the consultation.
The patient
patient_first_name,patient_last_nameandpatient_name(the full name).patient_emailandpatient_phone. The mobile is in international form, like +64271234567.patient_concern: what they said they'd like to improve, in their own words.
Where they're up to
event: the step that just happened, likeconsult.sent.stage: the furthest they've reached:new,sent,replied(you answered by text),viewedorbooking_requested.outcome: what your team set:booked,treatment_completed,not_interestedorno_show. Empty until someone sets one.submitted_at,sent_to_patient_at,viewed_atandbooking_requested_at: when each happened.booking_via:calendarwhen they went to your online booking page, empty when they used the booking form.booking_preferred_time: the time they asked for on the booking form.
Their consultation
treatments(a list) andtreatments_text(the same, as one line).price_lowandprice_highas plain numbers, andprice_textas the patient saw it, like "$7,500 – $9,500".duration_text: the estimated treatment time, like "12 – 18 months".
Links
consult_urlandplan_url: the patient's own consultation and plan. Use these in messages to the patient, not for your team to click. Anyone who opens them without being signed in to SmileReply is treated as the patient, so it can mark the consultation viewed.consult_preview_urlandplan_preview_url: the same pages for your team. Opening these doesn't count as the patient viewing them.dashboard_url: the patient in SmileReply, for your team to open.photo_urls(a list) andphoto_urls_csv(the same, comma separated): the patient's photos. These links stop working once the photos are deleted under your retention settings.
Other details
practice_nameandpractice_id: the location the patient chose. Useful in a group.submission_id: SmileReply's number for this patient. It stays the same at every step, so you can use it to match updates to the right contact.sent_at: when this update was sent.has_recordsandrecord_count: whether the patient uploaded records from another clinic, like X-rays. The files themselves are never sent.
Check it's working
Open Delivery history on the card. It lists every lead sent and whether your CRM accepted it.
If your CRM is unavailable, SmileReply tries again five times over about nine hours. A lead your CRM never accepts stays in the history, so you can see what went wrong.
Groups
In a group, leads from every location go to the group's CRM, set up in Group Settings. A location can send its own leads somewhere else: on its Send leads to your CRM card, press Send this location's leads somewhere else, then connect it as above. See Group settings and location overrides.
Disconnect
Clear the Endpoint URL and press Save connection. Nothing more is sent.
For developers
Every request is signed, so whoever receives it can check it came from SmileReply. On the card, open For developers to see the signing secret and how to check the signature. Most CRMs can't check it and don't need it. If the secret is ever shared by mistake, press New secret.
Message us from your dashboard and we’ll get back to you as soon as possible.