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.
POST https://api.dwolla.com/funding-sources
Parameter | Required | Type | Description |
---|---|---|---|
_links | conditional | object | A _links JSON object containing an exchange link relation. See example bash request and response below. |
accountNumber | yes | string | The bank account number. |
routingNumber | yes | string | The bank account's routing number. |
bankAccountType | yes | string | Type of bank account: checking or savings . |
name | yes | string | Arbitrary nickname for the funding source. |
channels | no | array | An 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 | Code | Message |
---|---|---|
400 | ValidationError | Duplicate funding source or validation error. |
400 | InactiveExchange | The Exchange was removed or disabled. |
400 | InvalidExchangeToken | The exchange token is not valid to perform this operation. Either the token is expired, invalid, or the products permissions to the token are invalid or expired. |
403 | Forbidden | Not authorized to create funding source. |
// 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'
// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node
var requestBody = {
_links: {
exchange: {
href: "https://api-sandbox.dwolla.com/exchanges/6bc9109a-04fd-49b6-ace6-ca06fd282d65",
},
},
bankAccountType: "checking",
name: "Jane Doe’s Checking",
};
dwolla
.post("funding-sources", requestBody)
.then((res) => res.headers.get("location")); // => 'https://api-sandbox.dwolla.com/funding-sources/375c6781-2a17-476c-84f7-db7d2f6ffb31'
POST https://api.dwolla.com/funding-sources
Parameter | Required | Type | Description |
---|---|---|---|
name | yes | string | Arbitrary nickname for the funding source. |
type | yes | string | Denotes that this is a virtual funding source being created (VAN). Value must be virtual . |
bankAccountType | yes | string | Value must be checking . VANs with a bankAccountType of savings are not currently available. |
HTTP Status | Message |
---|---|
403 | Virtual account numbers are not enabled for this account. |
// 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'
Use sandbox environment to test API requests.
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.