The necessary permissions are ads_management
and business_management
.
Also make sure your app has Ads Management Standard Access for higher rate limiting.
Learn more about App Review:
Make sure that you are using an admin system user of the parent (marketplace) Business Manager and that your app has the required permissions for App Review.
It depends on which Page the seller is using for advertising. Generally, there are 3 Pages a seller can use for advertising:
The marketplace can expose these Pages on their platform to sellers to choose for advertising. If sellers choose their own official Page for advertising, the marketplace can request access to the Page via the client_ad_accounts
endpoint. If sellers choose the marketplace's official Page or the newly created Page during seller onboarding, the marketplace automatically gets access to this Page.
Yes, page creation can be skipped.
To do so, set the skip_partner_page_creation
field to true when onboarding a seller.
partner_facebook_page_url
is the seller's identity Page for integrity checks purpose.page_profile_image_url
, page_name
, and seller_external_website_url
are used to create an advertising Page for the seller to use in an ad campaign.page_profile_image_url
and page_name
are optional, and default values will be used if not specified. Marketplaces/sellers are encouraged to pass in page_profile_image_url
and page_name
values of their own for potential better campaign performance.Steps for onboarding seller with their existing page
1) Onboarding a seller via Seller Creation API with their existing page.
curl -X POST \ -F "id=<BUSINESS_ID>" \ -F "catalog_id=<CATALOG_ID>" \ -F "line_of_credit_id=<CREDIT_LINE_ID>" \ -F "child_business_external_id=<SELLER_ID>" \ -F "name=<SELLER_NAME>" \ -F "seller_external_website_url=<SELLER_WEBSITE>" \ -F "page_name=<SELLER_PAGE_NAME>" \ -F "page_profile_image_url=<SELLER_PAGE_PROFILE>" \ -F "sales_rep_email=<SELLER_EMAIL>" \ -F "partner_facebook_page_url=<SELLER_OWN_PAGE_URL>" \ -F "partner_registration_countries=['US', 'UK']" \ -F "ad_account_currency=USD" \ -F "credit_limit=<CREDIT_LIMIT>" \ -F "seller_targeting_countries=['US', 'UK']" \ -F "vertical=<OTHER>" \ -F "timezone_id=<TIMEZONE_ID>" \ -F "access_token=<ACCESS_TOKEN>" \ "https://graph.facebook.com/v<API_VERSION><Business_id>/aams_seller_businesses"
2) Request seller page access with advertisement permission.
curl -X POST \ -F "page_id=<SELLER_PAGE_ID>" \ -F 'permitted_tasks=["ADVERTISE"]' \ -F "access_token=<ACCESS_TOKEN>" \ "https://graph.facebook.com/v<API_VERSION>/<SELLER_ID>/client_pages"
3) Switch active page to seller own page after the seller accepts the request. Then run a MPA campaign.
You can manage the marketplace catalog or individual seller catalog segment with the Catalog Batch API.
You may use the channels_to_integrity_status
endpoint to check the integrity review status of product items. It works on product item level (i.e., {product_item_id}
), as well as on the catalog products level (i.e.,{catalog_id}/products
).
You can set the spend_cap
field of the ad account to the amount that a seller has prepaid.
This is possible. Sellers can set the ad campaign's lifetime_budget
to be more than the child Business Manager credit line. Normally a credit line is settled/reset monthly.
Ad campaign(s) getting paused is a bad experience for sellers. It is recommended to provide basic checks and alerts to sellers if they set a lifetime_budget
greater than the credit line of the child Business Manager.
Credit allocation to the seller's Business Manager should always be USD. However, for ad account currency, one can specify any supported currency, and this will be the same currency used for monthly invoicing.
Refer to the credit_limit
(must be USD) and ad_account_currency
(any supported currency) parameters in the Seller Business Creation API.
See Accepted Currencies for Monthly Invoicing for more information.
Yes, you can use different currencies for different ad accounts. You may specify the ad_account_currency
(any supported currency) in the Seller Business Creation API and this will be the same currency used for monthly invoicing.
See Accepted Currencies for Monthly Invoicing for more information.
No, only the line of credit that is owned by the marketplace Business Manager can be used to allocate credit to another business. A shared line of credit from another business cannot be used as the line_of_credit_id
.
Refer to the Update Ads Campaign documentation for information on updating a Managed Partner ads campaign lifetime_budget
and end_time
parameters.
Or you can make the update via the generic campaign update endpoint.
Ad review can take anywhere from a few minutes up to 24 hours. See How Ads Get Approved for more information.
Check if the effective_status
of a campaign is ACTIVE
to see if it is running:
For a catalog products review, it can be checked with the /{catalog_id}/check_batch_request_status
endpoint.
Refer to the Collaborative Ads Insights documentation for Managed Partner Ads campaigns metrics and breakdowns.
For generic campaigns metrics (i.e., spend, impressions, clicks etc.), refer to the Insights API.
In general, you may want to pull the insights hourly or a few times a day. You may also pull more frequently or less frequently according to your needs.
You may consider using catalog URL links that are specific for Managed Partner Ads in the template. When the system recognises these URLs, it would hide links to other sellers on this seller’s product pages.