Patients track progress and buy again in your branded portal, while contacts, tags, custom fields, payments and milestones sync back to HighLevel. Your workflows keep running, and there is no second system to manage.
From $199/month · 14 days free · No card to start · Start your trial →

A patient buys again, the clinic ships, and nobody picks up the phone. The patient app first, then the dashboard behind it. 1:45, no audio.

Open Willow Aesthetics, our demo clinic, as a sample patient. Real screens, real data, nothing to install and nothing to fill in.
See a live patient portalUnder your clinic's name, colors and logo, in the browser on any phone. Everything they do in it lands on their contact.
Progress charts, a weekly log, a shop with saved cards, order tracking, rewards and messages under your brand, on the web and on the home screen.
The chat bubble in the portal is wired to your HighLevel Conversations inbox on every plan, including the trial. Patients write in the app; your team answers where it already works.
Their plan and its products are saved. When it is time to continue, the app says so, and the purchase lands on the contact as a payment.
Approval, shipping and delivery with carrier tracking in the app, and a status change can text them from a workflow you own.
Weight, measurements and check-ins charted over time, progress photos side by side, streaks and milestones, and every milestone can start a workflow.
Email and push reminders for check-ins and for continuing their plan, timed to each patient, alongside whatever your HighLevel sequences already send.
HighLevel, also known as GoHighLevel (GHL), is where many clinics already run their marketing, pipeline and inbox. The portal does not replace any of that. It gives patients an app and sends what happens in it back to the contact. Here is the full list.
A patient who signs up in the portal becomes a contact in your location, or is matched to the one you already have. Every event the portal emits also applies a tag on the contact, so tag-based workflows work with no further setup. Tags you apply in HighLevel can earn store credit in the rewards program, and a tag is the usual way a workflow decides who gets the portal invite.
On every plan the portal writes a snapshot onto the contact after each log or weigh-in: streak in weeks, total entries, entries in the last 30 days, the date of the last entry and the last logged weight. The fields are created on the location the first time and refreshed at most every 30 minutes per patient, so a smart list like "fewer than two entries this month and tagged active" is an ordinary HighLevel filter.
Triggers from our marketplace app fire on a missed weekly entry, a broken streak, an order status change, a milestone reached, a reward earned and a new patient, each with the contact and the details in the payload. In the other direction, the Invite to patient portal action is a step you drop into any workflow: it creates the contact's portal account and sends the claim link by email, or by text from your HighLevel number, and replies with a status (invited, resent, already claimed, no usable email) that the workflow can branch on.
Orders appear as payments on the contact. An order created with an opportunity moves it to won when delivered and to lost when cancelled or refunded, with nothing to configure. A status change fires your workflows, so "shipped" can send the tracking number by text in your own words.
A panel next to the contact shows the linked patient's orders with Confirm, Approve, Mark shipped, Delivered and Cancel, tracking numbers, their tracking summary and active treatments, plus a button that copies a buy-again link for the conversation. Changes land in the same history the dashboard uses, stamped with the HighLevel user who made them. Patient chat from the portal lands in Conversations on every plan.
Examples with round figures; swap in yours. Say your team re-keys each portal order and its status into HighLevel by hand, and say a four-week supply is $249.
80 orders a month at three minutes each is 240 minutes. With sync on, the payment, the tag and the field update land on the contact as they happen.
A broken-streak trigger into a re-engagement sequence that brings back two patients at $249 is $498 against the $449 plan.
Orders are approved, shipped and tracked from the panel inside the contact. The platform fee is 2% of patient payments, on top of Stripe's processing.
Contact and payment sync, workflow triggers, custom fields and the contact panel are on Starter and up. No card to start, nothing billed until the trial ends, and you can cancel any time.
Starter includes the HighLevel connection in full. Growth adds custom forms, a custom domain, at-risk campaigns and API access. Signature adds your own app in the stores. Every plan includes a Business Associate Agreement and Stripe payouts to your own account; patient payments carry a 2% platform fee on top of Stripe's processing.
You do not need a developer, an agency or a free weekend. Create the clinic, send us your price list, invite your patients.
About a minute: name, colors, logo. Your portal address and dashboard exist the moment you finish.
Integrations, Connect HighLevel, choose the sub-account. Then send us your price list and we load the products, or book a free 20-minute setup call. Your patient list is imported from your own dashboard, or patients are invited straight from a HighLevel workflow.
Send invites by email or text. Patients claim their account from the link in one tap, and the app is theirs.
Patient data is handled as health data from the first day, on every plan.
No. The portal works on its own. If your clinic uses HighLevel, connect the location in Integrations and three toggles control what syncs: contacts, orders as payments and workflow triggers. Disconnect any time; your patients and orders stay in the portal.
Every event tags the contact with its event name. On every plan the contact also carries a snapshot after each entry: streak weeks, total entries, entries in the last 30 days, last entry date and last logged weight, refreshed at most every 30 minutes per patient.
Triggers: missed weekly entry, broken streak, order status changed, milestone reached, reward earned and new patient. One action: Invite to patient portal, which creates the account, sends the claim link by email or text, and replies with a status your workflow can branch on.
Yes. The contact panel shows the linked patient's orders with Confirm, Approve, Mark shipped, Delivered and Cancel, tracking numbers, their tracking summary and active treatments. Changes are written to the same order history as the dashboard, stamped with who made them.
The chat bubble in the portal is wired to your HighLevel Conversations inbox on every plan, including the trial: messages arrive as their own channel and your replies go straight back to the patient.
Yes. Each clinic connects its own location (sub-account), and the contact panel loads inside any HighLevel domain, including agency white-label domains. An agency running several clinics gives each one its own portal account and connects each location.
From $199/month · 14 days free · No card to start