You can request Facebook Marketplace approval and then check the status of the request for your sellers.
You can request a shop to be listed on Marketplace by updating the seller's settings' marketplace_approval_requested
to true
curl -X POST \
-F 'onsite_commerce_merchant="..."' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/{merchant-settings-id}
POST /{merchant-settings-id} HTTP/1.1
Host: graph.facebook.com
onsite_commerce_merchant=...
/* PHP SDK v5.0.0 */
/* make the API call */
try {
// Returns a `Facebook\FacebookResponse` object
$response = $fb->post(
'/{merchant-settings-id}',
array (
'onsite_commerce_merchant' => '...',
),
'{access-token}'
);
} catch(Facebook\Exceptions\FacebookResponseException $e) {
echo 'Graph returned an error: ' . $e->getMessage();
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
"/{merchant-settings-id}",
"POST",
{
"onsite_commerce_merchant": "..."
},
function (response) {
if (response && !response.error) {
/* handle the result */
}
}
);
{ "onsite_commerce_merchant": { "marketplace_approval_requested": "true" } }
After a seller request to sell on Marketplace is received by the Facebook Ops team. If all prerequisites met we validate that the seller complies with our seller policies you will be able to sell on Facebook Marketplace. If there are any issues with the request you can use this endpoint to get information about them.
A seller request is going through few statuses before it is fully approved:
curl -X GET -G \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/{merchant-settings-id}/?fields=cta,setup_status
GET /{merchant-settings-id}/?fields=cta,setup_status HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
// Returns a `Facebook\FacebookResponse` object
$response = $fb->get(
'/{merchant-settings-id}/?fields=cta,setup_status',
'{access-token}'
);
} catch(Facebook\Exceptions\FacebookResponseException $e) {
echo 'Graph returned an error: ' . $e->getMessage();
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
"/{merchant-settings-id}/?fields=cta,setup_status",
function (response) {
if (response && !response.error) {
/* handle the result */
}
}
);
curl -X GET -G \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/{page-id}/shop_setup_status
GET /{page-id}/shop_setup_status HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
// Returns a `Facebook\FacebookResponse` object
$response = $fb->get(
'/{page-id}/shop_setup_status',
'{access-token}'
);
} catch(Facebook\Exceptions\FacebookResponseException $e) {
echo 'Graph returned an error: ' . $e->getMessage();
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
"/{page-id}/shop_setup_status",
function (response) {
if (response && !response.error) {
/* handle the result */
}
}
);
No request parameters
Attribute | Type | Description |
---|---|---|
| Status of the Page Shop. | |
| Status of the seller payment details. | |
| Status of seller's Marketplace approval | |
| Status of seller's Daily Deals allow list. | |
| Details on the seller’s approval status. |
shop_setup_status
Value | Description |
---|---|
| |
| |
| |
| |
| |
|
payment_setup_status
Value | Description |
---|---|
| |
| |
| |
|
marketplace_approval_status
Value | Description |
---|---|
| Seller's application has not been submitted. |
| Seller's application is in review. |
| Seller's is approved for Marketplace listings. |
| Seller's has been rejected for Marketplace listings. |
| Seller's is on hold for further review. |
deals_setup
Value | Description |
---|---|
| Seller is not set up on Daily Deals. |
| Seller is set up on Daily Deals. |
| Seller is under review. |
marketplace_approval_status_details
Value | Type | Description |
---|---|---|
| array of | Array of issues the seller has on Marketplace. |
issue
Value | Type | Description |
---|---|---|
| Coded type of an issue. | |
| Severity of an issue. | |
| string | Description of the issue and recommended actions to take. |
| string | Additional URL. |
issue
Value | Description |
---|---|
| Seller has not published their Page shop. |
| Seller doesn’t support onsite checkout. |
| Seller fails quality review. |
| Seller does not have any in stock product. |
severity
Value | Description |
---|---|
| Blocking sellers from being approved for Marketplace. |
1. Seller has applied for Marketplace, and they are waiting to be reviewed.
{ "cta": "ONSITE_CHECKOUT", "setup_status": { "data": [ { "shop_setup": "SETUP", "payment_setup": "SETUP", "marketplace_approval_status": "WAITING_FOR_REVIEW", "deals_setup": "NOT_SETUP" } ] } }
2. Seller is being reviewed for Marketplace. There is nothing blocking so far, and we are still reviewing the seller.
{ "cta": "ONSITE_CHECKOUT", "data": [ { "shop_setup": "SETUP", "payment_setup": "SETUP", "marketplace_approval_status": "IN_REVIEW", "deals_setup": "NOT_SETUP" } ] }
3. We found out some blocking issues after reviewing the seller.
{ "cta": "ONSITE_CHECKOUT", "data": [ { "shop_setup": "SETUP", "payment_setup": "SETUP", "marketplace_approval_status": "ON_HOLD", "deals_setup": "NOT_SETUP", "marketplace_approval_status_details": { "issues": [ { "issue": "no_inventory", "description": "Your catalog has no in stock product. Please make sure your catalog has products and at least one product has inventory count greater than 0.", "severity": "blocking" } ] } } ] }
4. Seller becomes approved.
{ "cta": "ONSITE_CHECKOUT", "data": [ { "shop_setup": "SETUP", "payment_setup": "SETUP", "marketplace_approval_status": "APPROVED", "deals_setup": "NOT_SETUP" } ] }