The notification kind, returned by calling kind on the notification object, reveals what triggered the webhook. The webhookNotification.getKind() for Disbursement webhooks will be one of the following:
WebhookNotification.Kind.DISBURSEMENT
WebhookNotification.Kind.DISBURSEMENT_EXCEPTION
WebhookNotification.Kind.TRANSACTION_DISBURSED
The following table describes the conditions that trigger each kind of webhook.
Notification Type
Description
disbursement
Braintree-funded merchant accounts only We have sent a disbursement to your account (meaning it will leave our bank account today). The difference between this and a transaction_disbursed webhook is that this is sent per merchant account per day, rather than per transaction.
disbursement_exception
Braintree Marketplace master merchants only A disbursement to one of your sub-merchants has failed. This webhook is not triggered when we attempt to disburse funds to a Venmo account that does not exist. See our Braintree Marketplace Funding article for details.
transaction_disbursed
Braintree-funded merchant accounts only Deprecated A transaction has been marked for disbursement (meaning it will leave our bank account today).
Attributes
getKind()enum
The kind of webhook notification.
getTimestamp()date
The UTC time at which the webhook was triggered.
getDisbursement()
getId()string
The id of the disbursement.
getAmount()decimal
The amount of the disbursement.
getDisbursementDate()date
The date the funds were disbursed.
getDisbursementType()string
The type of disbursement (debit/credit).
getTransactionIds()Array
The ids of all transactions associated with this disbursement.
getMerchantAccount()
The merchant account the disbursement corresponds to. You will only receive a disbursement webhook if Braintree manages funding for the selected merchant account. You'll know this is the case if Disbursement Summary reports are available for that account.
getRetry()bool
true if the disbursement previously failed and this webhook is for a second attempt. false if this is the first time this disbursement has been attempted, and false for disbursement exception webhooks.
getSuccess()bool
true if the disbursement was successful.
getExceptionMessage()string
Only present for disbursement exception webhooks. indicates the type of failure:
bank_rejected
insufficient_funds
account_not_authorized
getFollowUpAction()string
Only present for disbursement exception webhooks. Indicates what (if any) action you should take