Availability of “good funds” within seconds.The power of Real-Time Payments (RTP®) is finally part of the Dwolla platform! Over the past several months we’ve been hyper focused on delivering enhancements that are centered around speed and simplicity. Push-to-Debit, Drop-in Components and now RTP® are all product features that modernize the Dwolla platform and provide flexibility for businesses that leverage the Dwolla API to enable faster payment capabilities into their applications.
We are proud to partner with Cross River Bank (CRB) to perform the funds transfers through the RTP® Network. CRB is one of many participating financial institutions in the RTP® Network, which is operated by The Clearing House. Learn more about our approach to a simplified RTP® experience in this blog.
Eligibility and Considerations
You may be wondering, “Do I qualify as a business to utilize RTP®? What are the considerations?”
Currently, Dwolla and CRB offer RTP® transactions only to businesses sending funds from a Dwolla Balance. Any business model sending disbursements or refunds is a perfect use case for real-time payments, which would allow a consumer to receive a payment in seconds to an attached bank account.
A few key conditions of RTP® Network include:
- Transactions cannot exceed $100,000 per push. Dwolla may establish additional limitations on RTP® transactions.
- The receiving bank account must be within the U.S. at an RTP® Network participating financial institution.
- RTP® transactions are final and irrevocable.
Changes in the Dwolla API
Identifying an RTP®-enabled Funding Source
On the Dwolla Platform, Funding Sources represent a resource that reflects a payment account that can be added for sending and/or receiving funds transfers. Bank accounts are a type of Funding Source that can be added and retrieved. Available on both the Dwolla Master Account and Customer (End User) resources, Funding Sources have represented accounts used for ACH, Wire, and/or Push-to-Debit activities. Dwolla will be able to identify a bank account as RTP®-enabled, so no additional information is needed from your end users or application. The following section explores the changes to support RTP®-enabled funding sources.
Retrieve a Funding Source
The “channels” attribute on the Funding Source resource represents the different capabilities available for transfer processing. For a bank account, historically the only values available have been “ach” and “wire”. Outlined below represents how “real-time-payments” will be added to the “channels” array to identify an RTP® eligible account.
Channels including ACH, RTP, & Wire
"channels": [
"ach",
"real-time-payments",
“wire”
]
Initiating an RTP® Credit Transfer
A transfer represents money being transferred from a source to a destination. Transfers are available for the Dwolla Master Account and Customer (End User) resources. The following section explores updates to transfer related endpoints to support real-time payments.
Initiate a Transfer
When initiating a transfer, RTP® will be available on the destination bank account only. Below summarizes the addition of a “processingChannel” object to support a destination of a RTP®-enabled bank account.
processingChannel JSON Object
"processingChannel": {
"destination": "real-time-payments"
}
Example Transfer HTTP request with RTP® processing
POST https://api.dwolla.com/transfers
Accept: application/vnd.dwolla.v1.hal+json
Content-Type: application/vnd.dwolla.v1.hal+json
Authorization: Bearer {accessToken}
{
"_links": {
"source": {
"href": "https://api-sandbox.dwolla.com/funding-sources/{sourceFundingSource}"
},
"destination": {
"href": "https://api-sandbox.dwolla.com/funding-sources/{destinationFundingSource}"
}
},
"amount": {
"currency": "USD",
"value": "10.00"
},
"processingChannel": {
"destination": "real-time-payments"
}
}
Retrieving a Transfer
In addition to passing in the appropriate processingChannel when initiating a transfer, the “processingChannel” object will also be returned when retrieving a Transfer sent as RTP®.
"processingChannel": {
"destination": "real-time-payments"
}
Webhook Notifications
Webhooks notification events will be processed in the same sequence as an ACH transfer. The primary difference is the transfer will be created and the success/failure moments later (rather than days). The specific events include:
Event | Description |
---|---|
customer_bank_transfer_created | Sent when the RTP transfer is created |
customer_bank_transfer_failed | Sent if the RTP transfer fails* |
customer_bank_transfer_completed | Sent if the RTP transfer is completed successfully |
customer_funding_source_channels_updated | Sent when a funding source is identified as RTP eligible |
What’s Next?
With Dwolla’s new RTP® functionality, you now have a seamless way to add real-time bank transfers as a part of your integrated payment solution with Dwolla’s technology. Want to learn more? Check out our updated Developer Docs to get more of the details on implementing this exciting new feature.
Do you have feedback or are interested in testing RTP® transfers in the Sandbox environment? Tell us in the thread below