Once you're set up to receive webhooks, you can collect information from them to create reports based on different triggers. For example, you could collect the information on notifications for:
- Subscription Canceled to create a report for customer subscription cancelations
- Dispute Opened and compare that to your transactions sales to create a report on your chargeback ratio
- Disbursement to create a funding report
General workflow
- Set up at least one destination URL to receive webhooks from the gateway
- Parse the contents of the webhook notifications
- Create logic to store the details of the
WebhookNotification
objects for a specific kind of trigger
Disbursements
Disbursement webhooks are a bit different from other webhooks. Each disbursement or disbursement exception webhook includes a disbursement object. This object can't be retrieved from the gateway in any other way, unlike transactions or subscriptions.
Transactions associated with a disbursement
To find all transactions associated with a given disbursement, you can parse the disbursement webhook notification and use the data in the payload to perform a transaction search:
Python
webhook_notification = gateway.webhook_notification.parse(
bt_signature,
bt_payload
)
transactions = webhook_notification.disbursement.transactions_ids
search_results = gateway.transaction.search(
braintree.TransactionSearch.ids.in_list(transactions)
)
See Search Results for more information.