Dwolla Developers Logo
Back
API Reference
  • SDK Support
    Drop-in Components
    Authorization
    Root
    Accounts
    OverviewRetrieve account detailsCreate a funding source for an accountList funding sources for an accountList and search transfers for an accountList mass payments for an account
    Customers
    Knowledge-based Authentication (KBA)
    Beneficial Owners
    Documents
    Funding Sources
    Transfers
    Mass payments
    Labels
    Events
    Webhook subscriptions
    Webhooks
CommunityOpen in new tabChangelog
Get API Keys
CommunityOpen in new tabChangelog
JavaScript
Get API Keys

Create a funding source for an account #

This section details how to add a bank account and a Virtual Account Number, or VAN, to a Dwolla Master Account.

To add a bank account as a Funding Source, you provide the account number and a routing number. A Virtual Account Number, or VAN, is a way to add a funding source by providing one number that acts as both account number and routing number.

VANs can be utilized outside of the Dwolla Platform to route ACH transactions both to and from a Dwolla Balance. Because a VAN behaves as a route to a Dwolla Balance, the only customers eligible to create a VAN funding source are the following:

Typically, a bank account that you add to a Dwolla Master Balance will have a status of “unverified”. In order to transfer money to and from your bank or credit union account to and from Dwolla Master Balance, you will need to verify ownership of the account. However, when you create a VAN, it will have a status of verified by default.

Bank #

HTTP request - bank funding source #

POST https://api.dwolla.com/funding-sources

Request parameters - bank funding source #

ParameterRequiredTypeDescriptionaccountNumberyesstringThe bank account number.routingNumberyesstringThe bank account's routing number.bankAccountTypeyesstringType of bank account: checking or savings.nameyesstringArbitrary nickname for the funding source.channelsnoarrayAn array containing a list of processing channels. ACH is the default processing channel for bank transfers. Acceptable value for channels is: "wire". e.g. “channels”: [ “wire” ]. A funding source (Bank Account) added using the wire channel only supports a funds transfer going to the bank account from a balance. Note: channels is a premium feature that must be enabled on your account and is only available to select Dwolla customers.

HTTP status and error codes - bank funding source #

HTTP StatusMessage400Duplicate funding source or validation error.403Not authorized to create funding source.

Request and response - bank funding source #

JavaScript
// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node
var requestBody = {
  routingNumber: "222222226",
  accountNumber: "123456789",
  bankAccountType: "checking",
  name: "My Bank",
};

dwolla
  .post(`funding-sources`, requestBody)
  .then((res) => res.headers.get("location")); // => 'https://api-sandbox.dwolla.com/funding-sources/04173e17-6398-4d36-a167-9d98c4b1f1c3'

Virtual Account Number #

HTTP request - VAN funding source #

POST https://api.dwolla.com/funding-sources

Request parameters - VAN funding source #

ParameterRequiredTypeDescriptionnameyesstringArbitrary nickname for the funding source.typeyesstringDenotes that this is a virtual funding source being created (VAN). Value must be virtual.bankAccountTypeyesstringValue must be checking. VANs with a bankAccountType of savings are not currently available.

HTTP status and error codes - VAN funding source #

HTTP StatusMessage403Virtual account numbers are not enabled for this account.

Request and response - VAN funding source #

JavaScript
// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node
var requestBody = {
  name: "My First VAN",
  type: "virtual",
  bankAccountType: "checking",
};

dwolla
  .post(`funding-sources`, requestBody)
  .then((res) => res.headers.get("location")); // => 'https://api-sandbox.dwolla.com/funding-sources/04173e17-6398-4d36-a167-9d98c4b1f1c3'

Test in the Sandbox for free today.

Use sandbox environment to test API requests.

Get API Keys
2022 All Rights Reserved

Dwolla

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

All funds transfers made using the Dwolla Platform are performed by a financial institution partner, and any funds held in a Dwolla Balance are held by a financial institution partner. Learn more about our financial institution partners.