Set Up Inbound Scheduling for Prospective Customers

Learning Objectives

After completing this unit, you’ll be able to:

  • Identify the purpose of guest scheduling.
  • Set up object access and permissions for guest users.
  • Add the guest appointment flow to the Experience Cloud site.
  • Add the guest appointment flow to an external website.

Tap Into the Unknown (or Prospects)

With Experience Cloud sites and embedded services, Matt ensures that existing customers at the bank can schedule appointments. But what about prospects who are not customers yet? Wouldn’t it be great if they could just as easily set up appointments with Cumulus Cloud Bank? Although the bank’s advisors can set up appointments with prospects who they’ve identified, Fola understands that there’s an unknown and large pool of prospective customers who might be interested in the bank's services. Giving them an easy way to set up appointments could bring a lot of business.

As always, Matt, the all-star admin at the bank, gets to work. Since prospects are not customers yet, they won’t be signing in or authenticating themselves. They’re unauthenticated or guest users. Let’s follow along as Matt sets up inbound scheduling for leads and prospects.

As with existing customers, there are two ways Matt would be setting up scheduling for guest users.

  • Add the inbound guest appointment flow in the Experience Cloud site.
  • Use a Lightning Out dependency app to add the inbound guest appointment flow to a page on the website.

Permissions and Time

First, Matt sets up object access and permissions for guest users.

  1. From Setup, enter Digital Experiences in the Quick Find box, then select All Sites.
  2. On the All Sites page, click Builder next to the Experience Cloud site where you want to configure guest access.
  3. In Experience Builder, click the Settings icon Settings.
  4. On the General settings page, under Guest User Profile, click the guest profile link.
  5. In the profile page, click Edit.
  6. Under General User Permissions, select Run Flows.
  7. Under Standard Object Permissions, define appropriate access levels for these objects.
    Object Permissions
    Leads, Service Appointments Read, Create
    Operating Hours, Service Resources, Service Territories, Work Types, Work Type Groups Read
    The Operating Hours section showing Read permission enabled.
  8. Save your changes.
  9. Again on the profile page, under Field-Level Security, click View next to Time Slot and then click Edit.
  10. Enable read access for Maximum Appointments and Work Type Group and click Save.

Matt has sorted out the permissions for guest users. But in which time zone would most guest users be expected to schedule appointments? You got it right. The same time zone in which Cumulus Bank falls. Here’s what Matt does to set the guest user’s default time zone.

  1. On the profile page, click View Users.
  2. Click Edit next to Guest User.
  3. Under Locale Settings, set the time zone, and then click Save.

Security First

With guests or unauthenticated users coming in, it’s imperative to keep security in mind. Matt creates criteria-based record-sharing rules to control which records are exposed to the site’s guest user profile. 

  1. From Setup, enter Sharing in the Quick Find box, then select Sharing Settings.
  2. Under Service Resource Sharing Rules, click New.
  3. Enter a label for the rule.
  4. Select Guest user access, based on criteria.
  5. Define the criteria for your guest record-sharing rule.
  6. From the Share with dropdown list, select your guest user.
  7. Set Access Level to Read Only, and then click Save.
  8. Repeat these steps for Service Territory, Work Type, and Work Type Group sharing rules.

Sharing Settings window.



Service Resource, Service Territory, Work Type, and Work Type Group require at least one sharing rule each. Without at least one sharing rule per object, unauthenticated users cannot access the records required for the Inbound New Guest Appointment flow.

Make the Guest Flow Work

With settings sorted out, it’s time to finally add the guest flow to an Experience Cloud site and the external website. 

  1. In your site, click Experience Builder in the profile menu.
  2. In Experience Builder, select the Components icon.
  3. Enter Flow into the search box.
  4. Drag the Flow component on a public page in your site.
  5. From the Flow list, select the Inbound New Guest Appointment flow.
  6. Click Publish to save and publish your changes.

Next, Matt adds a Lightning Out dependency app to the external website that gives unauthenticated users access to the guest flow. 

  1. Create a copy of the Inbound New Guest Appointment standard flow template.
  2. Add a <script>tag to your webpage that references the library directly, using a site endpoint URL. For example:
  3. Add the JavaScript code to load and activate the lightningOutGuest app on your webpage. This code is standard Lightning Out, with the important addition that you must use one of your org’s site URLs for the endpoint. The endpoint URL takes the form https://yourSiteDomain/siteURL/.
function() { // Callback once framework and app load
"lightning:flow", // top-level component of your app
{ }, // attributes to set on the component when created
"lexcontainer", // the DOM location to insert the component
function(component) { // API name of the Flow
}, 'https://yourSiteDomain/siteURL/' // Site endpoint


If you want a unique, branded experience for prospective customers coming to your website, you can use Salesforce Scheduler APIs. You also have the option to have service resources assigned automatically or hide their names on the appointment summary page. Check out the Resources section for more information.

There’s just one more thing left to do: Get things up and running for the customer session on investment banking.


Keep learning for
Sign up for an account to continue.
What’s in it for you?
  • 1 in 4 land a new job
  • 50% receive a promotion or raise
  • 80% learn new technologies that boost their resume
  • 66% say it increases productivity
Source: Trailblazer Community Impact Survey 2019