MBE Appointments Onboarding

The Meta Business Extension (MBE) Appointments flow enables sellers on your platform to access a broad suite of business tools, such as Book Now call-to-action buttons, on their Facebook Page, Instagram account and Messenger chats with customers.

Example — Onboarding flow from partner surface (Business Login)

Before You Start

  1. Register as a Meta developer to access our developer tools and create Facebook apps.
  2. If you haven’t yet, create a Meta app, selecting Business app type.
  3. Create a test app from your live/production app and use it to perform all new development and testing.
  4. Your apps (live/production and test) must be Business app type and owned by a Business Manager that is a verified business. Learn more about how to verify your business and how to add your apps to it.
  5. Add the MBE Developer Panel to your App.
  6. If you want to enable the Featured Services page card feature, your app will need to get approved Catalog permission (catalog_management) via App Review before going live. catalog_management allows your app to create, read, update and delete business-owned catalogs (Services inventory). Submit the App Review request as soon as you have a working demo you can use to screencast how:
    • Catalog permission is requested on the onboarding flow
    • The Services inventory is pushed to the connected Catalog
    • The Services card is enabled on the connected Page at the end

Onboarding Steps and Entry Points

Business owners (clients) need a mechanism to connect their business on a partner platform to their Facebook or Instagram profiles, and vice versa. The onboarding flow can be used to accomplish this. The Appointments flow includes:

  • Asset creation/selection
  • Granting permissions
    • Manage business extension
    • Manage catalogs (optional)
  • Business setup and features

To enable the connection, you need to support two authentication flows, depending on where the user (business owner) starts the connection:

  • Partner Surface (commonly known as Business Login) — Allows businesses to initiate the connection from your platform, using a button you place on your site.
  • Business Apps — Allows businesses to initiate the connection from Facebook/Instagram. To enable this flow and have your app listed on Business Apps, you must provide a custom authentication UI that allows the user to select their business on your site and then redirect them back to the Facebook or Instagram flow.

Required Configurations

extras

FieldDescription

setup

Type: setup

Required.

Seller’s Facebook setup, such as their unique identifier (external_business_id) or the currency of their catalog (currency). See setup object details.

business_config

Type: business_config

Required.

Configuration object that the Meta Business Extension uses to configure the Meta Business Extension workflow. See business_config object details.

repeat

Type: boolean

Required.

Set this value to false.

setup

Use this object to define the settings for the end user's Facebook presence

FieldDescription

external_business_id
string

Required.
Unique business ID to represent your client's business. We use this as a unique identifier. For example, if the seller's company is called "Fubar", then "fubar-123" could be their external_business_id.

timezone
Type: string

Required.
The time zone in which the business is located.

See possible time zone values.

currency
Type: string

Required.
Three-letter ISO currency code of the default currency used for the business's catalog items.

See supported currency codes.

business_vertical
Type: enum {APPOINTMENTS}

Required.
Vertical associated with the business.

Use APPOINTMENTS as the vertical associated with the business.

business_config

Use this object to configure the business settings for an end user. This includes CTAs, Services card, and more. Each field includes a "type" linked to the respective tables below.

FieldDescription

business
Type: FBEBusinessPropertiesConfigData

Required.
Information for the end user's business.

ig_cta
Type: FBEIGCtaConfigData

Required.
Features for the Instagram call-to-action (CTA) button, such as enabled, cta_button_text, cta_button_url, and so on.


Supported CTA text: Book Now

page_cta
Type: FBEPageCtaConfigData

Required.
Features for the Facebook page call to action (CTA) button, such as cta_button_text, cta_button_url, and so on.


Supported CTA text: Book Now

page_card
Type: FBEPageCardConfigData

Optional.
Enables card with the business's featured services (up to three) on their Facebook page.

Requires Catalog implementation.

messenger_menu
Type: FBEMessengerMenuConfigData

Optional.
Features for the Messenger call-to-action (CTA) button when a user is messaging the business, such as cta_button_text and cta_button_url


Supported CTA text: Book Now

thread_intent
Type: FBEThreadIntentConfigData

Optional.
Messenger suggestion for business admins to easily send their appointment availability to a user in chat.

Example Appointments extras

{
    "setup": {
        "external_business_id": "<YOUR_ID_FOR_THE_BUSINESS>",
        "timezone": "<BUSINESS_TIMEZONE>",
        "currency": "<BUSINESS_CURRENCY>",
        "business_vertical": "APPOINTMENTS"
    },
    "business_config": {
        "business": {
            "name": "<BUSINESS_NAME>"
        },
        "page_cta": {
            "enabled": true,
            "cta_button_text": "Book Now",
            "cta_button_url": "<BUSINESS_URL_FOR_CTA>",
            "below_button_text": "Powered by <YOU>"
        },
        "page_card": {
            "enabled": true,
            "see_all_text": "See All",
            "see_all_url": "<BUSINESS_URL_FOR_CTA>",
            "cta_button_text": "Book"
        },
        "ig_cta": {
            "enabled": true,
            "cta_button_text": "Book Now",
            "cta_button_url": "<BUSINESS_URL_FOR_CTA>"
        },
        "messenger_menu": {
            "enabled": true,
            "cta_button_text": "Book Now",
            "cta_button_url": "<BUSINESS_URL_FOR_CTA>"
        },
        "thread_intent": {
            "enabled": true,
            "cta_button_url": "<BUSINESS_URL_FOR_CTA>"
        }
    },
    "repeat": false
}

Learn more about Business Configurations.

Next Steps