Confirming Sub-merchant Onboarding

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.

Sub-merchant approvedAnchorIcon

Once you have webhooks configured, you can listen for a SubMerchantAccountApproved webhook that looks like this:
  1. Python
notification = gateway.webhook_notification.parse(bt_signature, bt_payload)
if notification.kind == braintree.WebhookNotification.Kind.SubMerchantAccountApproved:
    # Handle approved notification
    notification.merchant_account.status = "active"
    notification.merchant_account.id = "blue_ladders_store"
    notification.merchant_account.master_merchant_account.id = "14ladders_marketplace"
    notification.merchant_account.master_merchant_account.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 declinedAnchorIcon

You can also listen for a SubMerchantAccountDeclined webhook that looks like this:
  1. Python
notification = gateway.webhook_notification.parse(bt_signature, bt_payload)
if notification.kind == braintree.WebhookNotification.Kind.SubMerchantAccountDeclined:
    # Handle declined notification
    notification.message = "Credit score is too low"
    notification.errors = <braintree.validation_error_collection.ValidationErrorCollection object at 0x1474a90>
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 contact our Customer Success team with the sub-merchant's first and last name and we'll be happy to assist.