Dwolla Developers Logo
API Reference
  • SDK Support
    Drop-in Components
    Knowledge-based Authentication (KBA)
    Beneficial Owners
    Funding Sources
    Mass payments
    Webhook subscriptions
    OverviewCreate a webhook subscriptionRetrieve a webhook subscriptionUpdate a webhook subscriptionList webhook subscriptionsDelete a webhook subscriptionList webhooks for a webhook subscription
CommunityOpen in new tabChangelog
Get API Keys
CommunityOpen in new tabChangelog
Get API Keys

Webhook subscriptions #

Create a webhook subscription to receive POST requests from Dwolla (called webhooks) when events associated with your application occur. Webhooks are sent to a URL which you provide when creating a webhook subscription. While we see most applications maintain one webhook subscription, you can have up to ten active webhook subscriptions in Sandbox, and up to five in Production at a time. Refer to the events section for the complete list of events that trigger webhooks. To view example payloads for Customer related events, refer to the Webhooks Events resource within the Developer Docs.

Automatic pause of a webhook subscription #

Dwolla will automatically pause subscribed webhook endpoints that are no longer reachable. The webhook subscription will be paused after 400 consecutive failures and 24 hours since the last success. This will help us ensure that unavailable endpoints don’t cause delays or issues in delivery of notifications for other API customers. Webhook subscriptions can be unpaused by calling this endpoint.

Acknowledgement and retries #

When your application receives a webhook, it should respond with a HTTP 2xx status code to indicate successful receipt. If Dwolla receives a status code greater than or equal to 3xx, or your application fails to respond within 10 seconds of the attempt, another attempt will be made. Dwolla will not follow redirects and will treat them as a failure.

Dwolla will re-attempt delivery 8 times over the course of 72 hours according to the backoff schedule below. If a webhook was successfully received but you would like the information again, you can call retrieve a webhook by its Id.

Delivery rate #

Webhooks are delivered in near real-time as events tied to your application are created. If there is a large number of events created for your application within a short timeframe, Dwolla may deliver bursts of 10 concurrent webhook requests to your subscribed URL. We encourage applications to make their webhook handler do as little as possible and only perform a high level validation of the request. Once initial validation is performed, immediately acknowledge the webhook request and process it in the background later. If your subscribed webhook URL is unable to handle the volume of concurrent requests, please contact Dwolla developer support and the delivery rate can be adjusted.

Retry numberInterval (relative to last retry)Interval (relative to original attempt)115 min15 min245 min1 h32 h3 h43 h6 h56 h12 h612 h24 h724 h48 h824 h72 h

Webhook subscription resource #

ParameterDescriptionidWebhook subscription unique identifier.urlSubscribed url where Dwolla should deliver the webhook notification.pausedA boolean true or false value indicating if the webhook subscription is paused. A webhook subscription will be automatically paused after 400 consecutive failures. In addition, a subscription can be paused or unpaused by calling this endpoint in the API.createdISO-8601 timestamp

Test in the Sandbox for free today.

Use sandbox environment to test API requests.

Get API Keys
2021 All Rights Reserved


  • About
  • Blog
  • Pricing
  • Contact Sales
  • Terms of Service
  • Privacy Policy
Financial institutions play an important role in our network.

Dwolla, Inc. is the operator of a software platform that communicates user instructions for funds transfers to our financial institution partners.

Dwolla is an agent of Veridian Credit Union. All ACH and Wire transfers are performed by Veridian Credit Union. Your Dwolla Balance, if any, is held in one or more pooled holding accounts held by Veridian Credit Union. These funds may not be eligible for share insurance by the National Credit Union Share Insurance Fund.

Sponsorship and Settlement of Push-to-Debit payment services provided by MetaBank®, N.A.
Push-to-Debit payments are typically available within 30 minutes.

Real-Time Payments are performed by Cross River Bank, which holds funds on behalf of the Receiver of such transactions in one or more pooled custodial accounts. These funds are not subject to FDIC pass-through deposit insurance.