Estimating a GoMeddo implementation
This article provides information about the effort and duration of a typical GoMeddo implementation.
Businesses often adopt GoMeddo to streamline their business operations related to planning. Like any Salesforce implementation, without a clear vision, roadmap, coordination across departments, adequate training, and proper support, your team may lack the confidence and knowledge needed for a successful rollout. At GoMeddo we praise ourselves in providing support to our partner to ensure these areas are covered in their proposal.
We intentionally did not provide estimated hours for these topics because they vary greatly depending on the specific implementation. We recognise that partners need guidance on the actual hours required for their implementation.
As a reminder, any implementation usually involves extending the data model, validation rules, and automation using tools like Apex or Lightning Flows. We are not explicitly mentioning those as part of the GoMeddo implementation, but you might require them for the overall implementation.
If you want to discuss any requirements more in-depth, we recommend contacting presales@gomeddo.com to schedule a call with us.
Effort involved
A typical basic GoMeddo implementation consists of 2 Dimensions (the things you want to schedule, such as physical spaces, boats, people, or maybe even projects) and 2 Reservation Types (the type of booking you want to make, such as Meeting, Event, or Maintenance). GoMeddo includes 3 Dimensions (Resource, Staff, Group) and 1 Reservation Type (Reservation) out of the box, making it easy to implement for a Salesforce admin. However, GoMeddo implementations are usually part of a larger implementation. For example, automation needs to be created to integrate with external systems, Salesforce Sales Cloud needs enhancement to check availability, and a Digital Experience Cloud needs to be set up to expose GoMeddo functionality. All of these additional tasks increase the workload for the implementation partner.
The following items are for you to take into account when you are making a GoMeddo estimation:
Action | Description | Complexity | Development needed? |
---|---|---|---|
Configure bookable resources that don’t exist in a Salesforce object yet | Use the OOTB Resources & Types functionality if you don’t have an object yet that holds what you want to schedule. Make sure to understand the difference between Resources & Resource Types: the structure you chose is important, as can be tedious to change once fully implemented. Make sure to understand how Availability inheritance works | Low to Medium | No |
Configure bookable resources that already exist in a Salesforce object | GoMeddo allows you to configure which existing objects to schedule using Dimensions. For example, if you have multiple Assets that you want to schedule or a custom 'Car__c' object, you can set this up. The scheduling can be done either through a lookup on the Reservation (1-to-1) or through a Dimension Junction (1-to-many), which functions similarly to junction objects. | Medium to High | Dimension Junctions require an Apex Trigger to be deployed, which is provided in the documentation. |
Conflict checking | Conflict checking let’s you define Availability, Double Bookings and Capacity checking functionality. This covers both Hard Conflicts (prevent conflicts) and Soft Conflicts (allow conflicts and create a Conflict record for each). | Low to Medium | No |
Make things available with dependency on other records. | Multi-Dimensional Availabilities allow you to specify that certain things should only be bookable with other things. For example, Joey works in London every Monday, and on Thursdays, he works in Manchester. | Low | No |
Create calendars and views for objects in Salesforce | Configure the appearance of the calendars for each dimension. Using one of the out-of-the-box dimensions requires no effort. | Low | No |
Set up Calendar Titles and Hovers | Define what information should be visible on Reservations and Hovers Dynamic Resource Titles let you create titles that update in real time | Very Low to Medium, depending on the use of Dynamic Titles | Standard No. Yes, when using Dynamic Resource Titles |
Configure Reservation Types, Statuses, Colours, Field Sets, Record Types and Page Layouts | Reservation Types let you define which fields to display on the Reservation Form, and which Record Type and thus Page Layout a Reservation will get. Reservation Statuses let you implement a business process. A Reservation may for example start with a ‘Pending Payment’ status, go to ‘Payment Received’ and at some point become ‘Canceled’ Reservation Colours need to be defined for every Reservation Type + Reservation Status combination | Low | No |
Reports & Dashboards | GoMeddo comes with 9 Reports and 9 Dashboards that can easily be adapted using Salesforce Reports & Dashboards. | Very Low | No |
Configure Sharing | Sharing" defines who can access specific information and is managed through the Salesforce Sharing system. Generally, you'll need to set up Sharing Rules for Reservations and Resources, and use OWD (Organization-Wide Defaults) for other GoMeddo objects when you want to restrict visibility. | Medium | No |
Configure Permissions | GoMeddo comes with Admin, User and Community User Permission Sets which should cover most use cases. For exceptions we suggest using Permission Set Groups to mute permissions | Low | No |
Allow users to make bookings using alternative booking flows and not the calendar. | If you want to provide a more guided ('wizard') approach to booking for your (internal and/or external) users, you can chose to not let the use them OOTB calendars and instead build a Lightning Screen Flow. You can use components such as our Time Slot Picker or Apex Action to check availability The effort here will completely depend on the use case you want to implement. We can provide an example Flow of how this could work that you can extend if needed. | Low to High | No |
Make calendars context-aware | You can use Calendar Wrapping to make calendars context-aware: when a single calendar is embedded on a record page, you may want to pass that record’s ID in the calendar. Or you may want to build a search functionality around you multi calendar to search for specific resources to book | Medium to High | Yes, code examples are provided in the documentation |
Manipulate the reservation form | Custom Form Logic lets you manipulate the reservation form on the calendar, based on information that’s already filled in. This can be used for skill-based filtering for example: when your reservation form has a lookup to a Course and a Trainer, when the Course is filled in, make sure only Trainers are returned that can actually give that Course. | Medium to High | Yes, code examples are provided in the documentation |
Add-ons
When it comes to integrating these add-ons, it's important to keep in mind that their implementation might require a bit of extra effort.
GoMeddo Widget
The widget add-on lets you provide bookings capabilities to your customers by means of a simple JavaScript widget that can be placed on a website.
This integration will require working together with the party that is responsible for the website, as they will need to integrate the JavaScript widget to the appropriate pages. Make sure you are aligned around this with the appropriate people.
Action | Description | Complexity |
---|---|---|
Install and configure widget | The following articles explain how to install and configure the widget | Low |
Publish widget on website | This will require alignment with the party responsible for the website | Low |
Google Calendar / Outlook 365 sync
The Google Calendar/Outlook 365 sync allows you to synchronize individual calendars between both systems.
This integration requires admin access to the Google Workspaces/Outlook 365 environment. Make sure to discuss this with the relevant individuals within the organisation implementing GoMeddo.
Action | Description | Complexity |
---|---|---|
Install extension package | The following articles contain the appropriate links to the Outlook 365 and Google Calendar extension packages | Very Low |
Configure Outlook 365 / Google Calendar sync | Outlook 365 and Google Calendar integrations will depend on the number of Sync Connections (synced calendars) that need to be configured | Low to Medium, depending on the field mappings that are needed |
Discovery Questions
Also have a look at our https://gomeddo.atlassian.net/wiki/spaces/APC/pages/3426189313 to help you get the right information!