Home
Blog
Onboard SMB Advertisers to Your Platform at Scale

May 22, 2018

Onboard SMB Advertisers to Your Platform at Scale

By Zain Aziz

If you manage ads for hundreds or thousands of small businesses and want to offer ads buying within your website or platform, Facebook has a new solution for you. Our new API solution allows you to onboard your clients to Facebook advertising with great ease by letting you programatically create a Business Manager, ad account, and other assets on their behalf. This solution allows our partners to either offer managed services or build complete end-to-end ads buying experiences within their website or platform without requiring the user to create an ad account, set up a payment method and other assets.

Get the New API Solution

To use this solution, you can apply for app capability to allow your application to get access to this new API.

Challenges

Partners who serve SMB advertisers can experience a significant churn while onboarding a new advertiser to their platform. A typical advertiser requires a Facebook account, page, ad account, assets (such as Pixels, Custom Audiences, Product Catalogs, and so on) and a payment method associated with the ad account. There's a drop off at each step of this process, which can lead to friction while onboarding new advertisers to their platform or managed service.

Workaround

One way that partners worked around this challenge was to automate as many of these steps as possible to streamline the onboarding experience. By building a user interface within their website that fetches a user's access token for their app, they use that access token to create an ad account under their Business Manager, and then share the user's page to their Business Manager.

Results

  • The partner has complete access to the ad account they just created and use a system user to create ads for the user in this ad account.
  • The partner could also alternatively choose to pay for the ads. They would share their extended credit line with these ad accounts and separately charge the user using their own billing mechanism through their website. See example diagram, illustrating the old solution.

Limitations

  • There was one system user under the Business Manager who had access to all the pages and ad accounts. This meant that there was a single point of failure and if the system user's access token was compromised, it would compromise all ad accounts.

  • The same one system user also had access to all the pages, which meant that if the user was blocked due to scale issues or policy violations, it would affect all ad accounts.

  • There is a limit on how many ad accounts a Business Manager can have. That is, if the limit is reached, someone from the partners company must reach out to Facebook and ask them to manually increase the limit.

  • If a certain number of ad accounts are blocked for policy violations under a Business Manager, it blocks the entire Business Manager or its System user, which negatively effects the partners.

  • Because there are some assets that live at the Business Manager level, all of your clients assets are all present at the Business Manager level. This, in turn, means that you must track which Pixel/Custom Audience/Product Catalog belonged to which user.

Ultimately, these limitations led to creating a new two-tiered Business Manager solution.

BM=Business Manager | C=Child | SAU=System Admin User

Highlights of the New Solution

You can programmatically create a child Business Manager on behalf of your client using their Facebook access token with manage_business permissions. Each child Business Manager comes with its own system user whose access token you can use to create assets under the child Business Manager.

Note: By default, a user does not have access to the new child Business Manager. However, your parent Business Manager has complete access to the child Business Manager, and can choose to explicitly give their clients permission if they have a use case for it. Note: Your clients don't have access to the new child Busienss Manager and its ad account, unless you explicitly grant them access.

Additional notes about this setup:

  • This new child Business Manager has a system admin user attached to it with advertiser access to the page provided by your client during the child Business Manager creation.
  • Using the access token of the system admin user for the child Business Manager, an ad account can be created for the child Business Manager and any other assets, such as Pixel, Custom Audience, Product Catalog, and so on can be associated with it.
  • You can also share the line of credit attached to your parent Business Manager with its child Business Manager, and assign a spend limit to it to prevent accidental overspend.

Benefits of the New Solution

  • Lowers the friction for your client who signs up for Facebook advertising and improves your clients stickiness to your platform.
  • Allows more revenue models for you and settles the balance with Facebook after setting aside service fees. You can share your LOC with the child Business Managers on behalf of your clients.
  • Scales well - It doesn't require any manual intervention from Facebook every time your Business Manager reaches the limit of maximum number of ad accounts.
  • Organizes all client assets more efficiently - Instead of you managing all the assets (Pages/Custom Audiences/Pixels, and so on) within one Business Manager, it organizes all client assets within their own Business Manager.
  • Provides you with actionable notifications for critical errors when an ad account has been blocked due to policy violation.
  • Get consolidated invoices for all your ad accounts, which helps with bookkeeping.

Learn more about how to get started.


TAGS

Get our newsletter

Sign up for monthly updates from Meta for Developers.

Sign up