Dwolla Developers Logo
Back
Guides
  • Getting Started
    Testing in the Sandbox
    Generate an OAuth Access Token
    Send Money to Users
    OverviewStep 1: Create a customerStep 2: Add a funding sourceStep 3: Retrieve funding sourcesStep 4: Create a transfer
    Receive Money from Users
    Transfer Money Between Users
    Transfer Money Me-to-Me
    Building With Drop-in Components
  • Customers
    Create a Business Verified Customer
    Create a Personal Verified Customer
  • Funding Sources
    Add a Debit Card Using Dwolla-cards.js
    Add a Bank Using Dwolla.js
    Add a Bank Using Dwolla.js + IAV
    Verify Bank with Micro-deposits
    Add Bank via Dwolla + Plaid Integration
  • Webhooks
    Create a Webhook Subscription
API DocsOpen in new tabChangelog
Get API Keys
API DocsOpen in new tabChangelog
JavaScript
Get API Keys

Step 3: Retrieve funding sources #

Now that you’ve created a Customer and associated its funding source, you are close to being able to initiate your first transfer. The transfer requires the following information:

  • The funding source to pull the funds from (a bank attached to your Dwolla Master Account)
  • The funding source to push the funds to (a bank attached to your created Customer)

Dwolla uses URLs to represent relations between resources. Therefore, you’ll need to provide the full URL of the funding source when creating the transfer.

Step 3A: Retrieve your Dwolla Master Account's list of available Funding Sources #

Use the list an account’s funding sources endpoint to fetch a list of your own funding sources. You’ll need your account URL which can be retrieved by calling the Root of the API.

Request and Response (view schema in raw)

JavaScript
var accountUrl =
  "https://api-sandbox.dwolla.com/accounts/ad5f2162-404a-4c4c-994e-6ab6c3a13254";

appToken
  .get(`${accountUrl}/funding-sources?removed=false`)
  .then(function (res) {
    res.body._embedded["funding-sources"][0].name; // => 'ABC Bank Checking'
  });

When the funding sources list is successfully retrieved, you will receive a 200 HTTP response with the details of each funding source. After retrieving your list of funding sources, we recommend storing the full URL for future use as it will be referenced when creating the transfer to your user’s bank account.

Step 3B: Fetch your Customer's list of available funding sources #

Use the list an Customer’s funding sources endpoint to fetch a list of your own funding sources. You’ll need the Customer URL which can be retrieved from the API.

Request and Response (view schema in raw)

JavaScript
var customerUrl =
  "https://api-sandbox.dwolla.com/customers/ad5f2162-404a-4c4c-994e-6ab6c3a13254";

appToken.get(`${accountUrl}/funding-sources`).then(function (res) {
  res.body._embedded["funding-sources"][0].name; // => 'ABC Bank Checking'
});

When the list of funding sources is successfully retrieved, you will receive a 200 HTTP response with the details for the funding sources. After retrieving the funding sources, we recommend storing the full URL for future use as it will be referenced when creating the transfer to this user’s bank account.

Test in the Sandbox for free today.

Use sandbox environment to test API requests.

Get API Keys
2021 All Rights Reserved

Dwolla

  • 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.