Practice Better
Connect Practice Better for booking, service sync, contact sync, activity webhooks, and booking-message ownership.
Connect Practice Better (PB) so Hiveality can use your PB services, practitioners, availability, client records, booking activity, and booking-message ownership in the right places.
PB-backed services can be booked through your Hiveality AI chat widget, embedded booking widget, or funnels, with the session landing directly in your Practice Better calendar. Hiveality also mirrors supported PB activity into Booking and Contacts so flows, follow-up, and analytics can stay aligned without moving clinical records out of PB.
What this connects
- Services, practitioners, and locations. Hiveality imports your PB catalog so you can choose which services should appear on your website.
- Booking creation. Eligible 1:1 services booked through chat, embedded booking widgets, or funnels write the session directly into your PB calendar.
- Client records for bookings. New booking invitees are created in PB, and existing PB clients are matched by email.
- Hiveality contact sync. PB booking invitees can be auto-created in Contacts. You can also opt into mirroring client records created or updated directly in PB.
- Activity webhooks. Sessions, intake form completions, client record updates, and selected PB activity categories can be delivered back to Hiveality.
- Two-way booking changes. Cancellations and reschedules can stay aligned between PB and Hiveality when webhooks are healthy.
- Booking-message ownership. Choose whether Practice Better or your website sends client-facing booking confirmations, reminders, intake-form messages, and cancellations.
What this does NOT do
- Payment collection. For services that require payment at booking in PB, the chat will surface a "Continue on Practice Better" link rather than collecting payment in-chat.
- Group sessions. Group classes stay bookable through PB's own page in v1. Hiveality chat only handles 1:1 services.
- Clinical data. SOAP notes, chart notes, and clinical records stay in Practice Better. Hiveality never sees them.
- Form responses. Hiveality can receive a completion signal for supported intake form requests, but the completed form answers stay in PB.
- Full revenue or package automation. Invoice, payment, and package activity can be subscribed for future automation, but Hiveality does not act on those categories yet.
- Telehealth join links. PB sends the join URL in its own confirmation email; we don't surface it in Hiveality.
Before you start
You will need:
- A paid Practice Better plan with the API Access (Beta) add-on enabled (currently free during beta).
- A Client ID and Client Secret minted in PB's API Access settings.
- (Recommended) Google Calendar connected in both Hiveality and Practice Better, so the two systems share busy-time info and don't double-book the same slot when you mix native and PB bookings.
Step 1 — Enable PB API Access
Log in to Practice Better
Open Settings → My Subscription.
Enable the API add-on
Click View Add-ons, find API Access (Beta) , and enable it. This is free during PB's beta period. PB support typically approves the request within 1-3 business days.
Mint credentials
Once approved, go to Settings → API Access and click Create new credentials. You will receive a Client ID and Client Secret.
What to put in PB's access request form
PB will ask a few questions when you enable the API add-on. Here are answers that match the Hiveality integration:
- Do you have the support of a software developer? → Yes
- What is your intended use for the API? → Reporting and External Integrations
- Are you looking to integrate Practice Better with other tools? → Yes, Hiveality.com
- What data points are you interested in accessing? → Appointments/sessions, client records, services, practitioners, locations, availability, intake form dispatch/completion signals, and webhooks
- How often do you expect to use the API? → Daily
Step 2 — Connect Practice Better in Hiveality
Open Integrations
Paste your credentials
Paste the Client ID and Client Secret you minted in PB. Optionally provide your Hosted Booking URL (for services that require payment at booking).
Test the connection
Click Test Connection. You should see a green check with your PB account email. If the test fails, double-check that you pasted the credentials exactly and that API Access is enabled on your PB plan.
Connect
Click Connect Practice Better. Hiveality will register webhooks automatically and import your practitioners, services, and locations.
Step 3 — Choose which services to expose
By default, all imported services are hidden from your Hiveality booking surfaces. This is intentional — you opt in per service so you don't accidentally publish internal-only or unfinished services.
For each service you want bookable through Hiveality:
- Check the Expose box.
- Confirm the duration matches.
- For services that require payment at booking in PB, the wizard will note this; those services will use the hand-off link.
Group services are auto-detected and marked as "Group" — those will hand off to PB's hosted booking page rather than booking in-chat.
Click Save Selections when done. You can come back to change visibility at any time.
Manage sync and activity settings
After Practice Better is connected, the connection tab shows the imported practitioners, services, and locations. Use Re-sync after you add or change services, practitioners, or locations in Practice Better.
The connection tab also shows webhook subscription health. When the status is healthy, cancellations, reschedules, and new bookings made in Practice Better mirror back to Hiveality automatically. If the status is degraded or not subscribed, booking creation can still work, but changes made in Practice Better may not sync back until the subscription is repaired. Click
Retry webhook subscription from the connection tab to try the registration again. This retry also applies any webhook category changes saved from Sync Settings.
Open the Sync Settings tab to control what gets copied into Hiveality after the connection is active.
- Keep Auto-create Hiveality contacts from PB bookings on when booking invitees should appear in Contacts and become available for flows.
- Turn on Mirror all PB clients to Hiveality contacts only when clients created or updated directly in Practice Better should also appear in Contacts.
- Choose which Practice Better activity categories Hiveality should receive, then click Retry webhook subscription on the Connection tab to apply the updated subscription.
The available activity categories are:
- Client Sessions: required. Keeps core PB booking creation, confirmation, update, cancellation, and deletion activity mirrored.
- Form Requests: on by default. Fires a flow trigger when a client completes a supported PB intake form request.
- Client Records: optional. Required when you want PB client records created or updated outside Hiveality bookings to mirror into Contacts.
- Group Sessions, Invoices & Payments, and Packages: optional subscription categories for future automation. Hiveality receives the raw signal but does not act on these categories yet.
Step 4 — Connect Google Calendar (recommended for mixed users)
If you also use Hiveality for native bookings (free discovery calls, webinars, etc.) while using PB for clinical visits, connect Google Calendar in both Hiveality and Practice Better. This prevents either system from booking a time that's already busy in the other.
- In Hiveality: Booking → Staff → Calendar Integrations
- In Practice Better: Settings → Calendar Integrations
Both systems read each other's calendar events as "busy" to block availability.
How PB-backed bookings flow
- A visitor chats with your AI agent, uses an embedded booking widget, or books from a funnel.
- Hiveality shows real availability pulled live from your Practice Better calendar.
- Visitor picks a slot and provides contact info.
- Hiveality creates the client record in PB (or matches an existing client by email), then creates the session.
- PB sends its standard confirmation email + intake form + reminders.
- If contact auto-create is on, Hiveality creates or updates the matching Contact for flow and activity tracking.
- The booking also appears in your Hiveality booking calendar, with a "PB" badge and a "View in Practice Better" link.
- Any flow you've configured against booking events (welcome series, pre-appointment prep emails, post-appointment follow-up) will fire.
Cancellations and reschedules
- If a client cancels in Practice Better, Hiveality updates the mirrored record within seconds.
- If a client cancels in Hiveality (or you cancel on their behalf), Hiveality calls PB to cancel the session.
- If you reschedule a PB-backed booking from Hiveality, Hiveality sends the new time back to Practice Better and keeps the booking record aligned.
- Either side's cancellation triggers your "booking cancelled" flows.
Notification ownership
Practice Better is the recommended sender for booking confirmations, reminders, intake form messages, and cancellation emails because those messages stay close to the clinical booking record.
If you want every client-facing booking message to come from your website instead, open the Notifications tab in the Practice Better dialog and choose Your website. Your marketing flows can still run for follow-up either way.
For Practice Better-backed event types, the Event Settings Notifications tab is available only when your website owns those booking messages. When Practice Better owns them, manage transactional booking emails in Practice Better.
Disconnect
Disconnecting from the Practice Better integration page does the following:
- Stops syncing new bookings or webhooks.
- Soft-archives your PB-backed services in Hiveality (they're preserved but hidden until reconnect).
- Removes the saved connection credentials from Hiveality's secure storage.
- Leaves existing mirrored bookings intact for audit.
To reconnect later, just paste your credentials again; the previously-exposed services will be restored automatically.
Troubleshooting
Test Connection fails with "Authentication failed". Verify that:
- Your PB plan has API Access enabled (Settings → My Subscription → Add-ons).
- The Client ID and Client Secret are pasted exactly (no extra spaces).
- PB support has approved your API Access request (this can take 1-3 business days).
"Webhook subscription failed" warning after connecting. The credentials are saved and bookings will still flow, but PB → Hiveality sync is paused. Click Retry webhook subscription on the Connection tab or contact support. The most common cause is that your dev/staging URL isn't reachable from PB's servers.
A specific service won't show available times. Make sure the service is mapped to a practitioner and that practitioner has availability configured in PB. The chat reads PB's live availability — if PB shows no times for a given day, Hiveality won't either.
Visitor got a "slot just taken" message mid-conversation. Expected behavior — PB enforces conflict-checking server-side. The AI will show updated availability and let the visitor pick again.
PB clients are not appearing in Contacts. Open Sync Settings. Keep Auto-create Hiveality contacts from PB bookings on for booking invitees. Turn on Mirror all PB clients to Hiveality contacts plus the Client Records webhook category when clients created or updated directly in PB should also appear in Contacts, then retry the webhook subscription.
Intake form completion flows are not firing. Keep the Form Requests webhook category enabled and make sure the client already has a Hiveality contact. Hiveality receives the completion signal, not the completed form answers.
Notes
- This integration is in beta while Practice Better's API itself is in beta. We'll update this page when PB announces general availability.
- API Access in PB is free during beta. PB has indicated they will eventually charge for the add-on; we'll surface that change in your Hiveality settings when it happens.
Related Help Docs
Was this helpful?