FBE Reservations Onboarding

The Facebook Business Extension (FBE) Reservations flow enables sellers on your platform to access a broad suite of business tools, such as Reserve call-to-action buttons, on their Facebook Page, Instagram account and Messenger chats with customers. This flow does not have Catalog capabilities.

Example — Onboarding flow from partner surface (Business Login)

Before You Start

  1. Register as a Facebook developer to access our developer tools and create Meta apps.
  2. If you haven’t yet, create a Meta app.
  3. Create a test app.
  4. Your apps (live/production and test) must be owned by a Meta 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 FBE Developer Panel to your Meta App.

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 FBE onboarding flow can be used to accomplish this. The Reservations flow includes:

  • Asset creation/selection
  • Granting permissions
    • Manage business extension
  • 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
Type: 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 {RESERVATIONS}

Required.
Vertical associated with the business.

Use RESERVATIONS as the vertical associated with the business.

business_config

Use this object to configure the business settings for an end user. This includes CTAs 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: Reserve

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: Reserve

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: Reserve

Example Reservations extras

{
    "setup": {
        "external_business_id": "<YOUR_ID_FOR_THE_BUSINESS>",
        "timezone": "<BUSINESS_TIMEZONE>",
        "currency": "<BUSINESS_CURRENCY>",
        "business_vertical": "RESERVATIONS"
    },
    "business_config": {
        "business": {
            "name": "<BUSINESS_NAME>"
        },
        "page_cta": {
            "enabled": true,
            "cta_button_text": "Reserve",
            "cta_button_url": "<BUSINESS_URL_FOR_CTA>",
            "below_button_text": "Powered by <YOU>"
        },
        "ig_cta": {
            "enabled": true,
            "cta_button_text": "Reserve",
            "cta_button_url": "<BUSINESS_URL_FOR_CTA>"
        },
        "messenger_menu": {
            "enabled": true,
            "cta_button_text": "Reserve",
            "cta_button_url": "<BUSINESS_URL_FOR_CTA>"
        }
    },
    "repeat": false
}

Learn more about Business Configurations.

Next Steps