How to Build a Legal Booking System with Gravity Forms

Prevent double bookings, sync calendars, control approvals, and distribute appointments across your team—all through Gravity Forms.

  1. Keep Your Forms and Calendars in Sync
    1. Send Appointments to an External Calendar
    2. Send Calendar Events to Gravity Forms
  2. Add Buffer Time Between Appointments
  3. Distribute Appointments Across Resources
  4. Require Approval Before Confirming Appointments
  5. Taking It Further with Spellbook
  6. What Else Can GP Bookings Do?
  7. All Rise for Your New Booking System ⚖️

GP Bookings is a scheduling plugin that turns Gravity Forms into a complete booking system. It’s a flexible beast that helps you set up your own booking workflow as you need it — all within WordPress.

For example, during set up you can define any kind of service (i.e. what’s being booked), any kind of role (i.e. who’s available), and then set your hours, capacity, and pricing once. From there, GP Bookings handles the rest, including sending reminders, syncing calendars, letting people manage their own bookings, and more.

GP Bookings works for pretty much any industry. But what makes it good for the legal practice?

Today we’ll show you! Here are a few examples to whet your whistle.

  • Sync bookings with external calendars
  • Automatically add buffer time between appointments
  • Distribute appointments across your team
  • Approve appointments before they’re confirmed

Let’s see how each one works. 🏛

This article requires the Gravity Forms Bookings perk.

Buy Gravity Perks to get this perk plus 51 other premium Gravity Forms plugins!

View Plugin Buy Now

Keep Your Forms and Calendars in Sync

If your team manages schedules in Google Calendar, Apple Calendar, or any ICS-based calendar, GP Bookings can connect to it and keep both sides current.

Send Appointments to an External Calendar

When someone books through your form, the appointment gets added to the assigned person’s calendar automatically.

A client books an attorney using the intake form, and the appointment appears on the attorney’s Apple calendar.

Send Calendar Events to Gravity Forms

Already have events in your external calendar? GP Bookings reads those and blocks the corresponding time slots on your form—so clients only see what’s actually open.

A court hearing event is added to Google Calendar and appears on the attorney's availability calendar, blocking that time slot.

Add Buffer Time Between Appointments

If your appointments run back to back, you might need some breathing room in between. GP Bookings lets you add automatic gaps between time slots.

Set a buffer, like 15 minutes, and that window gets blocked after every appointment.

An attorney’s availability calendar displays multiple time slots booked with 15-minute buffer time for each.

Distribute Appointments Across Resources

In GP Bookings, the people or things available for booking are called Resources. In a legal practice, those might be attorneys—but they could just as easily be rooms, equipment, or any other asset that needs scheduling.

If you have multiple resources available, GP Bookings can automatically assign incoming bookings using one of three strategies:

  • Round Robin distributes bookings evenly, routing the next one to whoever went the longest without a booking.
  • Capacity Spread goes to the person with the fewest bookings.
  • Capacity Pack fills up one person’s schedule completely before moving to the next.
A form editor displays a resources field with allocation mode set to automatic assignment and strategy set to round robin.

Pro Tip

Want to create a new category? Just add a new Resource Type (like “Conference Rooms” or “Equipment”), add your Resources to it, and you’re good to go.

Require Approval Before Confirming Appointments

GP Bookings lets you review appointments before they’re confirmed. Set the default Booking Status to Pending, and new appointments land in your dashboard first.

That way, your team can approve or decline before anything gets locked in.

The GP Bookings dashboard displays five upcoming appointments, all set to pending approval status.

If you want a more hands-off setup, GP Bookings also supports self-service scheduling. Clients can book, reschedule, or cancel appointments on their own without needing to contact your team.

Pro Tip

GP Bookings can send notifications automatically based on what happens to a booking. When a booking gets created, confirmed, rescheduled, or is coming up soon, the right people get notified at the right time.

Taking It Further with Spellbook

GP Bookings handles the scheduling, but pair it with Spellbook and you can take it even further:

  • Create a unique case number for every booking with GP Unique ID, making it easy to track files in your case management system.
  • Display your Terms of Representation directly in the form using GP Read Only. Clients can read it, but they can’t modify it.
  • Add a checkbox where clients agree to your terms before they book using GP Terms of Service.

What Else Can GP Bookings Do?

Beyond what we covered above, every business has its own way of operating. GP Bookings has more to match that, like setting different prices based on the date, day of the week, or booking duration. You can also control how many bookings or people fit in a single time slot.

All of it lives in one dashboard with multiple calendar views, drag-and-drop rescheduling, and filters to find what you need.

And there’s more where that came from. Check out the full GP Bookings documentation to see what else it can do.

All Rise for Your New Booking System ⚖️

Building something specific for your industry? Drop a comment below! We might write about it next. 🧙‍♂️

Leave a Reply

Your email address will not be published. Required fields are marked *

  • Trouble installing this snippet? See our troubleshooting tips.
  • Need to include code? Create a gist and link to it in your comment.
  • Reporting a bug? Provide a URL where this issue can be recreated.

By commenting, I understand that I may receive emails related to Gravity Wiz and can unsubscribe at any time.


This field is for validation purposes and should be left unchanged.
Grab a bundle of free Gravity Forms plugins

Enter your email and receive our most popular free plugins and snippets, plus access to hundreds of others.