As part of the sub-merchant onboarding process for Braintree Marketplace, you can confirm the creation of a merchant account as either approved or declined via a webhook. The webhook is triggered after the sub-merchant's information has been verified with several third-party services.

Webhooks allow Braintree to push messages to your servers when you configure a webhook endpoint URL. If you are not using webhooks already, you will need to follow the webhooks guide to get started.

note

The $btSignature and $btPayload variables in the code snippets below represent parameters received from the webhook POST request. For more information, read the documentation on parsing webhooks.

Sub-merchant approved

Once you have webhooks configured, you can listen for a SubMerchantAccountApproved webhook that looks like this:

PHP
Click to copy
Copied
$notification = Braintree_WebhookNotification::parse(
  $btSignature,
  $btPayload
);
$notification->kind == Braintree_WebhookNotification::SUB_MERCHANT_ACCOUNT_APPROVED;
// true
$notification->merchantAccount->status;
// "active"
$notification->merchantAccount->id;
// "blue_ladders_store"
$notification->merchantAccount->masterMerchantAccount->id;
// "14ladders_marketplace"
$notification->merchantAccount->masterMerchantAccount->status;
// "active"

Once you've confirmed that the new sub-merchant has been successfully onboarded, you can start to run transactions on their account.

Sub-merchant declined

You can also listen for a SubMerchantAccountDeclined webhook that looks like this:

PHP
Click to copy
Copied
$notification = Braintree_WebhookNotification::parse(
  $bt_signature,
  $bt_payload
);
$notification->kind == Braintree_WebhookNotification::SUB_MERCHANT_ACCOUNT_DECLINED;
// true
$notification->message;
// "Credit score is too low"
$notification->errors;
// Braintree_Error_ValidationErrorCollection Object ( . . . )

If it is Declined, the webhook will contain validation errors indicating why the sub-merchant was declined. There are several reasons this can occur:

  • Failed OFAC
  • Failed Mastercard MATCH
  • Failed KYC
  • SSN invalid
  • SSN matches deceased person

See merchant account validations for specific errors.

In this case, we'll need to gather more information about the sub-merchant in order to approve them. Please email our Accounts team with the sub-merchant's first and last name and we’ll be happy to assist.

See also

Next: Creating Transactions →

Still have questions?

If you can’t find an answer, contact our Support team.