Dwolla strongly encourages all applications to establish a webhook subscription in production. It’s a vital tool for receiving timely notifications about crucial actions within your Dwolla account, ensuring seamless updates and notifications for your end users.
Webhook request details
When your webhook subscription is configured, events will be created and sent asynchronously via webhooks as they occur. The webhook notification from Dwolla is a POST request that contains a JSON-encoded payload as well as HTTP headers, which are both used when consuming the webhook. Webhook payloads are designed to be lightweight with only minimum details regarding the triggered event. Dwolla returns links within the Event object pointing to relevant resources in the API which are used to lookup more detailed information on the resource that changed states.Webhook headers
There are a few HTTP headers that are useful for your application when consuming the webhook request.X-Dwolla-Topic lets your app know, at a high level, the type of event being sent in the payload. X-Request-Signature-SHA-256 contains an HMAC SHA-256 hash based on the webhook payload and a key which is your webhook secret. The webhook signature should be processed and validated prior to parsing the webhook payload.
X-Dwolla-Topic- transfer:createdX-Request-Signature-SHA-256- ed551cfb4acb48d31e14886bffa33aa417dfa4a3d3778f6141a7f7f92ee64861
Webhook payload
All webhook payloads will include an Event object. An Event contains_links to: the relevant resource that caused the Event to be triggered, the Account or External Party that the Event belongs to, and a self link to identify the unique Event. In addition to relevant _links, the payload will include attributes such as a created timestamp, event topic, and resourceId (see table below for more information).