Business Login for Direct Businesses

Business Login is the process for generating Page access tokens not bound to a User access token. These Page access tokens are dependent on a System User, and so they remain valid through changes in personal accounts. To make these tokens more resilient, they are not subject to an expiration date.

A direct business, a business that holds the ownership of its Pages and apps, can set up a stable Page access token through a System User.

Because business login for direct businesses requires access to the Graph API, it does not offer a login path without ads tracking and measurement.

Generating a Stable Page Access Token

If your app is supporting Pages that are owned by other businesses, use the Business Login flow. This flow is recommended for direct businesses only.

Before you generate a Page access token based on a System User, you need the following:

  • A business entity created in Facebook. You can create one using the Business Manager tool.
  • Your app and the Pages you generate a token for to be associated with that business entity.
  • Facebook Login requires dvanced public_profile permission, to be used by external users.

To Create a Stable Page Access Token:

  1. Create a system user (or reuse an existing one) for this business in Business Settings under Users > System Users tab.
  2. Add the system user above as someone who acts as an admin for a Page you're about to generate access token for.
    1. Add the system user to a selected Page by clicking Add People button under Accounts > Pages tab.
    2. For Messenger platform integrations, select either Moderate comments or Manage Page permissions.
  3. Generate a user access token for this system user for your app.
    1. Go to Users > System Users tab, and click on the Generate New Token button. Copy this token.
    2. Make sure all the Page permissions you need are selected. For Messenger platform integrations, choose pages_messaging.
  4. Get a Page access token by calling the /<PAGE_ID>?fields=access_token endpoint with the system user access token above.
GET /<PAGE_ID>?fields=access_token&access_token=<SYSTEM_USER_ACCESS_TOKEN>