Meta Business Extension for Conversions API

The Conversions API enables advertisers to send web, app, and physical store events to Meta through a single endpoint rather than across multiple sources. This consolidation will simplify an advertiser’s tech stack and create a more comprehensive view within Meta Events Manager by using datasets.

This document details how to configure the Meta Business Extension to onboard advertisers to send web, app and physical store events to the Conversions API. This is an update from MBE Pixel and Conversions API Onboarding with the option to onboard advertisers with datasets. It allows selection and creation of datasets for advertisers who want to send app and physical store events with web events.

The Meta Business Extension version for consolidation is under beta. For access, please contact your Meta Representative.

Datasets

Datasets allow advertisers to connect and manage event data from web, app, store and business messaging event sources to the Conversions API. Datasets may show event data from any of these integrations that you choose to set up:

  • Meta Pixel (website events)
  • App Events API (app events, including Facebook SDK for iOS or Android, mobile measurement partners (MMPs))
  • Offline Conversions API (Meta’s legacy API for offline events)
  • Messaging Events API (messaging events)

Datasets enable you to view all customer activities from a single interface. They also allow you to reduce the effort to build and maintain multiple API integrations.

In Events Manager, advertisers have different options to create a dataset depending on their starting point. Or you can create a brand new dataset in Events Manager by linking during offline event set creation or through an existing mobile app or during messaging event set creation information. Note that linking a dataset to an application is required before sending mobile app events to the Conversions API and only one application can be linked to a dataset. See more details and instructions here.

How to Detect a Dataset

The dataset is the container for events for web, app, and mobile. You will be able to onboard these types of events through this single container.

The dataset can be created or shown during the onboarding flow. You will still see pixel_id in the API responses. For selected pixels, you can always know if they are datasets to support receiving events from the mobile app or physical store by checking the flag pixel_is_consolidated_container in the MBE Install API response in additional_info:

{
 "data": [{
   "token_type": "<token_type>",
   "installed_features": [
       {
           "feature_instance_id": "<unique_id>",
           "feature_name" : string,
           "feature_type": enum,
           "connected_assets": {
               "ad_account_id": "<ad_account_id>",
               "business_manager_id": "<business_manager_id>",
               "catalog_id": "<catalog_id>",
               "commerce_merchant_settings_id": "<commerce_merchant_settings_id>",
               "ig_profile_id": "<instagram_profile_id>",
               "page_id": "<page_id>",
               "pixel_id": "<pixel_id>"
           },
           "additional_info": {
               "onsite_commerce_eligible": bool,
               "pixel_is_consolidated_container": bool
           }
       }
   ]
 }]
}

Before you Begin

  1. Your app must be owned by a Business Manager that is a verified business. Learn more about how to verify your business.

  2. A Facebook app is required with the following access level, feature and permissions:

    • Access Level: Advanced Access

    • Feature: Ads Management Standard Access

    • Public Permissions: ads_management, pages_read_engagement, and ads_read

    • Private Permissions: manage_business_extension. This is a private permission that requires your Facebook representative to add your app to the allow list.

    • System User Access Token: Sending events to the Conversions API requires an Access Token. To generate an Access Token on behalf of the client, use the Access Token returned via FBE and convert it into a System User Access Token by making an additional API call.

Prerequisites for Onboarding Advertisers

You can refer to this guide to share with advertisers on prerequisites before onboarding, except the token requirement. The Meta Business Extension will proceed automatically to obtain the token from the user during onboarding in a secured way.

  • For web onboarding: You can refer advertisers to follow the guidance and the required parameters.

  • For offline onboarding: You can refer advertisers to this developer documentation prior to onboarding for guidance and required parameters.

  • For app onboarding: You can refer advertisers to this developer documentation prior to onboarding for guidance and required parameters.

Required Configurations

Extras

Field Description

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.

Field Description

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

Optional

The time zone in which the business is located. See possible time zone values.

currency

Type: string

Optional

Three-letter ISO currency code of the default currency used by the business's catalog items. See supported currency codes.

business_vertical

Type: enum

Required

Vertical associated with the business. Value: ECOMMERCE

merchant_settings_id

Type: string

Optional

Used when upgrading from Meta Business Extension, v1. Contact your Meta representative if you are migrating from v1 to v2.

domain

Type: string

Required for COMMERCE and COMMERCE_OFFSITE channels Domain used for Instagram manual approval. For example: https://exampleshop.partnersite.com.

channel

Type: enum

Required

Provides a way for the partner to configure the Conversions API flow of FBE. For the Conversions API flow, this value should be CONVERSIONS_API.

  • CONVERSIONS_API — Flow that allows end-users to create or select Business Manager, Ad Account, and Meta Pixel objects. Creating these objects enables the end-user to send events from their website to Facebook using the Conversions API or browser pixel.

business_manager_id

Type: string

Optional

Business Manager ID for user's existing Business Manager that a partner can enter to preselect for the user in the setup flow.

ad_account_id

Type: string

Optional

Ad Account ID for user's existing ad account that a partner can enter to preselect for the user in the setup flow.

page_id

Type: string

Optional

Page ID for the user's existing Facebook Page that partner can enter to preselect for the user in setup flow.

ig_profile_id

Type: string

Optional

Instagram Business Profile ID for the user's existing Instagram Business Profile that a partner can enter to preselect for the user in the setup flow.

pixel_id

Type: string

Optional

Dataset for the user's existing Pixel or new dataset that a partner can enter to preselect for the user in the setup flow.

catalog_id

Type: string

Optional

Catalog ID for the user's existing catalog that a partner can enter to preselect for the user in the setup flow.

Business Config

Use this object to configure the business settings for an end user. This includes Call-to-action buttons and more. Each field includes a "type" linked to the respective tables below.

Field Description

business

Type: FBEBusinessPropertiesConfigData

Required

Information for the end user's business.

messenger_chat

Type: FBEMessengerChatConfigData

Optional

Messenger chat features on the end user's Facebook page, such as enabled and domains.

catalog_feed_scheduled

Type: FBECatalogFeedConfigData

Optional

Determines whether the Meta Business Extension should use a feed approach, which grabs catalog items from a feed_url.

page_cta

Type: FBEPageCtaConfigData

Optional

Call to action (CTA) button on end user's page, such as cta_button_text, cta_button_url, and so on.

ig_cta

Type: FBEIGCtaConfigData

Optional

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

messenger_menu

Type: FBEMessengerMenuConfigData

Optional

Features for the Messenger persistent menu feature, such as cta_button-text and cta_button_url.

Webhook

We fire Webhook events each time one of your businesses installs, modifies, or uninstalls MBE. See here for more information. Below is the example payload for installed webhook:

{
 "data": [{
   “ad_account_id”: “<ad_account_id>”
   “business_manager_id”: “<business_manager_id>”
   “catalog_id”: “<catalog_id>”
   “commerce_merchant_settings_id”: “commerce_merchant_settings_id”
   “onsite_eligible”: bool
   “profiles”: [“page_id”]
   “instagram_profile”: [instagram_profile_id]
   “pixel_id”: “<pixel_id>”
   "token_type": "<token_type>",
   "installed_features": [
       {
           "feature_instance_id": "<unique_id>",
           "feature_name" : string,
           "feature_type": enum,
           "connected_assets": {
               "ad_account_id": "<ad_account_id>",
               "business_manager_id": "<business_manager_id>",
               "catalog_id": "<catalog_id>",
               "commerce_merchant_settings_id": "<commerce_merchant_settings_id>",
               "ig_profile_id": "<instagram_profile_id>",
               "page_id": "<page_id>",
               "pixel_id": "<pixel_id>"
           },
           "additional_info": {
               "onsite_commerce_eligible": bool,
               "pixel_is_consolidated_container": bool
           }
       }
   ]
 }]
}