openapi: 3.1.0
info:
title: Dwolla API - Funding Sources
description: Dwolla API Documentation
contact:
name: Dwolla Developer Relations Team
url: https://developers.dwolla.com
email: api@dwolla.com
version: '2.0'
termsOfService: https://www.dwolla.com/legal/tos/
license:
name: MIT
url: https://github.com/Dwolla/dwolla-openapi/blob/master/LICENSE
jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base
servers:
- url: https://api.dwolla.com
description: Production server
- url: https://api-sandbox.dwolla.com
description: Sandbox server
security:
- clientCredentials: []
tags:
- name: funding sources
description: Operations related to Funding Sources
paths:
/customers/{id}/funding-sources:
get:
tags:
- funding sources
summary: List customer funding sources
description: Returns all funding sources for a customer, including bank accounts, debit card funding
sources, and Dwolla balance (verified customers only). Shows verification status, limited account
details, and creation dates. Card funding sources include masked card information. Supports filtering
to exclude removed funding sources using the removed parameter.
operationId: listCustomerFundingSources
x-speakeasy-group: customers.fundingSources
x-speakeasy-name-override: list
x-codeSamples:
- lang: bash
source: 'GET https://api-sandbox.dwolla.com/customers/5b29279d-6359-4c87-a318-e09095532733/funding-sources
Accept: application/vnd.dwolla.v1.hal+json
Authorization: Bearer pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY
'
- lang: javascript
source: "// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node\nvar customerUrl =\n \"\
https://api-sandbox.dwolla.com/customers/5b29279d-6359-4c87-a318-e09095532733\";\n\ndwolla\n\
\ .get(`${customerUrl}/funding-sources`)\n .then((res) => res.body._embedded[\"funding-sources\"\
][0].name); // => 'Jane Doe's Checking'\n"
- lang: python
source: '# Using dwollav2 - https://github.com/Dwolla/dwolla-v2-python
customer_url = ''https://api-sandbox.dwolla.com/customers/5b29279d-6359-4c87-a318-e09095532733''
funding_sources = app_token.get(''%s/funding-sources'' % customer_url)
funding_sources.body[''_embedded''][''funding-sources''][0][''name''] # => ''Jane Doe''s Checking''
'
- lang: php
source: '<?php
// Using dwollaswagger - https://github.com/Dwolla/dwolla-swagger-php
$customerUrl = ''https://api-sandbox.dwolla.com/customers/5b29279d-6359-4c87-a318-e09095532733'';
$fsApi = new DwollaSwagger\FundingsourcesApi($apiClient);
$fundingSources = $fsApi->getCustomerFundingSources($customerUrl);
$fundingSources->_embedded->{''funding-sources''}[0]->name; # => "Jane Doe''s Checking"
?>
'
- lang: ruby
source: '# Using dwolla_v2 - https://github.com/Dwolla/dwolla-v2-ruby
customer_url = ''https://api-sandbox.dwolla.com/customers/5b29279d-6359-4c87-a318-e09095532733''
funding_sources = app_token.get "#{customer_url}/funding-sources"
funding_sources._embedded[''funding-sources''][0].name # => "Jane Doe''s Checking"
'
parameters:
- name: id
in: path
description: Customer's unique identifier
required: true
schema:
type: string
- name: removed
in: query
description: Filter removed funding sources. Boolean value. Defaults to `true`
required: false
schema:
type: string
- $ref: '#/components/parameters/Accept'
responses:
'200':
description: successful operation
headers: {}
content:
application/vnd.dwolla.v1.hal+json:
schema:
$ref: '#/components/schemas/FundingSources'
'403':
description: forbidden
headers: {}
content:
application/vnd.dwolla.v1.hal+json:
schema:
type: object
properties:
code:
type: string
example: forbidden
message:
type: string
example: Not authorized to list funding sources.
'404':
description: not found
headers: {}
content:
application/vnd.dwolla.v1.hal+json:
schema:
type: object
properties:
code:
type: string
example: notFound
message:
type: string
example: Customer not found.
post:
tags:
- funding sources
summary: Create customer funding source
description: Creates a bank account or debit card funding source for a customer. Supports multiple
methods including manual entry with routing/account numbers, instant verification using existing
open banking connections, debit card addition via Exchange, and virtual account numbers. Bank
funding sources require verification before transfers can be initiated.
operationId: createCustomerFundingSource
x-speakeasy-group: customers.fundingSources
x-speakeasy-name-override: create
x-codeSamples:
- lang: bash
label: Create Bank Funding Source
source: "POST https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C/funding-sources\n\
Content-Type: application/vnd.dwolla.v1.hal+json\nAccept: application/vnd.dwolla.v1.hal+json\n\
Authorization: Bearer pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY\n{\n \"routingNumber\"\
: \"222222226\",\n \"accountNumber\": \"123456789\",\n \"bankAccountType\": \"checking\",\n\
\ \"name\": \"Jane Doe's Checking\"\n}\n"
- lang: bash
label: Create Debit Card Funding Source
source: "POST https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C/funding-sources\n\
Content-Type: application/vnd.dwolla.v1.hal+json\nAccept: application/vnd.dwolla.v1.hal+json\n\
Authorization: Bearer pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY\n{\n \"_links\": {\n\
\ \"exchange\": {\n \"href\": \"https://api-sandbox.dwolla.com/exchanges/d46b028c-244b-4054-b19b-72f09cd1dc04\"\
\n }\n },\n \"name\": \"My Visa Debit Card\",\n \"cardDetails\": {\n \"firstName\"\
: \"Jane\",\n \"lastName\": \"Doe\",\n \"billingAddress\": {\n \"address1\": \"123\
\ Main St\",\n \"address2\": \"Apt 4B\",\n \"city\": \"Dallas\",\n \"stateProvinceRegion\"\
: \"TX\",\n \"country\": \"US\",\n \"postalCode\": \"76034\"\n }\n }\n}\n"
- lang: javascript
label: Create Bank Funding Source
source: "// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node\nvar customerUrl =\n \"\
https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C\";\nvar requestBody\
\ = {\n routingNumber: \"222222226\",\n accountNumber: \"123456789\",\n bankAccountType:\
\ \"checking\",\n name: \"Jane Doe's Checking\",\n};\n\ndwolla\n .post(`${customerUrl}/funding-sources`,\
\ requestBody)\n .then((res) => res.headers.get(\"location\")); // => 'https://api-sandbox.dwolla.com/funding-sources/375c6781-2a17-476c-84f7-db7d2f6ffb31'\n"
- lang: javascript
label: Create Debit Card Funding Source
source: "// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node\nvar customerUrl =\n \"\
https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C\";\nvar requestBody\
\ = {\n _links: {\n exchange: {\n href: \"https://api-sandbox.dwolla.com/exchanges/d46b028c-244b-4054-b19b-72f09cd1dc04\"\
\n }\n },\n name: \"My Visa Debit Card\",\n cardDetails: {\n firstName: \"Jane\",\n\
\ lastName: \"Doe\",\n billingAddress: {\n address1: \"123 Main St\",\n address2:\
\ \"Apt 4B\",\n city: \"Dallas\",\n stateProvinceRegion: \"TX\",\n country: \"\
US\",\n postalCode: \"76034\"\n }\n }\n};\n\ndwolla\n .post(`${customerUrl}/funding-sources`,\
\ requestBody)\n .then((res) => res.headers.get(\"location\")); // => 'https://api-sandbox.dwolla.com/funding-sources/12345678-abcd-1234-abcd-123456789012'\n"
- lang: python
label: Create Bank Funding Source
source: "# Using dwollav2 - https://github.com/Dwolla/dwolla-v2-python\ncustomer_url = 'https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C'\n\
request_body = {\n 'routingNumber': '222222226',\n 'accountNumber': '123456789',\n 'bankAccountType':\
\ 'checking',\n 'name': 'Jane Doe's Checking'\n}\n\ncustomer = app_token.post('%s/funding-sources'\
\ % customer_url, request_body)\ncustomer.headers['location'] # => 'https://api-sandbox.dwolla.com/funding-sources/375c6781-2a17-476c-84f7-db7d2f6ffb31'\n"
- lang: python
label: Create Debit Card Funding Source
source: "# Using dwollav2 - https://github.com/Dwolla/dwolla-v2-python\ncustomer_url = 'https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C'\n\
request_body = {\n '_links': {\n 'exchange': {\n 'href': 'https://api-sandbox.dwolla.com/exchanges/d46b028c-244b-4054-b19b-72f09cd1dc04'\n\
\ }\n },\n 'name': 'My Visa Debit Card',\n 'cardDetails': {\n 'firstName': 'Jane',\n\
\ 'lastName': 'Doe',\n 'billingAddress': {\n 'address1': '123 Main St',\n 'address2':\
\ 'Apt 4B',\n 'city': 'Dallas',\n 'stateProvinceRegion': 'TX',\n 'country': 'US',\n\
\ 'postalCode': '76034'\n }\n }\n}\n\ncustomer = app_token.post('%s/funding-sources'\
\ % customer_url, request_body)\ncustomer.headers['location'] # => 'https://api-sandbox.dwolla.com/funding-sources/12345678-abcd-1234-abcd-123456789012'\n"
- lang: php
label: Create Bank Funding Source
source: "<?php\n// Using dwollaswagger - https://github.com/Dwolla/dwolla-swagger-php\n$fundingApi\
\ = new DwollaSwagger\\FundingsourcesApi($apiClient);\n\n$fundingSource = $fundingApi->createCustomerFundingSource([\n\
\ \"routingNumber\" => \"222222226\",\n \"accountNumber\" => \"123456789\",\n \"bankAccountType\"\
\ => \"checking\",\n \"name\" => \"Jane Doe's Checking\"\n], \"https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C\"\
);\n$fundingSource; # => \"https://api-sandbox.dwolla.com/funding-sources/375c6781-2a17-476c-84f7-db7d2f6ffb31\"\
\n?>\n"
- lang: php
label: Create Debit Card Funding Source
source: "<?php\n// Using dwollaswagger - https://github.com/Dwolla/dwolla-swagger-php\n$fundingApi\
\ = new DwollaSwagger\\FundingsourcesApi($apiClient);\n\n$fundingSource = $fundingApi->createCustomerFundingSource([\n\
\ \"_links\" => [\n \"exchange\" => [\n \"href\" => \"https://api-sandbox.dwolla.com/exchanges/d46b028c-244b-4054-b19b-72f09cd1dc04\"\
\n ]\n ],\n \"name\" => \"My Visa Debit Card\",\n \"cardDetails\" => [\n \"firstName\"\
\ => \"Jane\",\n \"lastName\" => \"Doe\",\n \"billingAddress\" => [\n \"address1\"\
\ => \"123 Main St\",\n \"address2\" => \"Apt 4B\",\n \"city\" => \"Dallas\",\n \
\ \"stateProvinceRegion\" => \"TX\",\n \"country\" => \"US\",\n \"postalCode\"\
\ => \"76034\"\n ]\n ]\n], \"https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C\"\
);\n$fundingSource; # => \"https://api-sandbox.dwolla.com/funding-sources/12345678-abcd-1234-abcd-123456789012\"\
\n?>\n"
- lang: ruby
label: Create Bank Funding Source
source: "# Using dwolla_v2 - https://github.com/Dwolla/dwolla-v2-ruby\ncustomer_url = 'https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C'\n\
request_body = {\n routingNumber: '222222226',\n accountNumber: '123456789',\n bankAccountType:\
\ 'checking',\n name: 'Jane Doe's Checking'\n}\n\nfunding_source = app_token.post \"#{customer_url}/funding-sources\"\
, request_body\nfunding_source.response_headers[:location] # => \"https://api-sandbox.dwolla.com/funding-sources/375c6781-2a17-476c-84f7-db7d2f6ffb31\"\
\n"
- lang: ruby
label: Create Debit Card Funding Source
source: "# Using dwolla_v2 - https://github.com/Dwolla/dwolla-v2-ruby\ncustomer_url = 'https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C'\n\
request_body = {\n _links: {\n exchange: {\n href: 'https://api-sandbox.dwolla.com/exchanges/d46b028c-244b-4054-b19b-72f09cd1dc04'\n\
\ }\n },\n name: 'My Visa Debit Card',\n cardDetails: {\n firstName: 'Jane',\n lastName:\
\ 'Doe',\n billingAddress: {\n address1: '123 Main St',\n address2: 'Apt 4B',\n\
\ city: 'Dallas',\n stateProvinceRegion: 'TX',\n country: 'US',\n postalCode:\
\ '76034'\n }\n }\n}\n\nfunding_source = app_token.post \"#{customer_url}/funding-sources\"\
, request_body\nfunding_source.response_headers[:location] # => \"https://api-sandbox.dwolla.com/funding-sources/12345678-abcd-1234-abcd-123456789012\"\
\n"
- lang: bash
label: Create Virtual Account Number (VAN)
source: "POST https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C/funding-sources\n\
Content-Type: application/vnd.dwolla.v1.hal+json\nAccept: application/vnd.dwolla.v1.hal+json\n\
Authorization: Bearer pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY\n{\n \"name\": \"\
My First VAN\",\n \"type\": \"virtual\",\n \"bankAccountType\": \"checking\"\n}\n"
- lang: bash
label: Create Funding Source via Exchange
source: "POST https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C/funding-sources\n\
Content-Type: application/vnd.dwolla.v1.hal+json\nAccept: application/vnd.dwolla.v1.hal+json\n\
Authorization: Bearer pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY\n{\n \"_links\": {\n\
\ \"exchange\": {\n \"href\": \"https://api-sandbox.dwolla.com/exchanges/6bc9109a-04fd-49b6-ace6-ca06fd282d65\"\
\n }\n },\n \"bankAccountType\": \"checking\",\n \"name\": \"My Bank Account\"\n}\n"
- lang: javascript
label: Create Virtual Account Number (VAN)
source: "// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node\nvar customerUrl =\n \"\
https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C\";\nvar requestBody\
\ = {\n name: \"My First VAN\",\n type: \"virtual\",\n bankAccountType: \"checking\",\n};\n\
\ndwolla\n .post(`${customerUrl}/funding-sources`, requestBody)\n .then((res) => res.headers.get(\"\
location\")); // => 'https://api-sandbox.dwolla.com/funding-sources/fc84d628-f694-47e8-8d57-0d5872a81afd'\n"
- lang: javascript
label: Create Funding Source via Exchange
source: "// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node\nvar customerUrl =\n \"\
https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C\";\nvar requestBody\
\ = {\n _links: {\n exchange: {\n href: \"https://api-sandbox.dwolla.com/exchanges/6bc9109a-04fd-49b6-ace6-ca06fd282d65\"\
\n }\n },\n bankAccountType: \"checking\",\n name: \"My Bank Account\"\n};\n\ndwolla\n\
\ .post(`${customerUrl}/funding-sources`, requestBody)\n .then((res) => res.headers.get(\"\
location\")); // => 'https://api-sandbox.dwolla.com/funding-sources/375c6781-2a17-476c-84f7-db7d2f6ffb31'\n"
- lang: python
label: Create Virtual Account Number (VAN)
source: "# Using dwollav2 - https://github.com/Dwolla/dwolla-v2-python\ncustomer_url = 'https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C'\n\
request_body = {\n 'name': 'My First VAN',\n 'type': 'virtual',\n 'bankAccountType': 'checking'\n\
}\n\ncustomer = app_token.post('%s/funding-sources' % customer_url, request_body)\ncustomer.headers['location']\
\ # => 'https://api-sandbox.dwolla.com/funding-sources/fc84d628-f694-47e8-8d57-0d5872a81afd'\n"
- lang: python
label: Create Funding Source via Exchange
source: "# Using dwollav2 - https://github.com/Dwolla/dwolla-v2-python\ncustomer_url = 'https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C'\n\
request_body = {\n '_links': {\n 'exchange': {\n 'href': 'https://api-sandbox.dwolla.com/exchanges/6bc9109a-04fd-49b6-ace6-ca06fd282d65'\n\
\ }\n },\n 'bankAccountType': 'checking',\n 'name': 'My Bank Account'\n}\n\ncustomer =\
\ app_token.post('%s/funding-sources' % customer_url, request_body)\ncustomer.headers['location']\
\ # => 'https://api-sandbox.dwolla.com/funding-sources/375c6781-2a17-476c-84f7-db7d2f6ffb31'\n"
- lang: php
label: Create Virtual Account Number (VAN)
source: "<?php\n// Using dwollaswagger - https://github.com/Dwolla/dwolla-swagger-php\n$fundingApi\
\ = new DwollaSwagger\\FundingsourcesApi($apiClient);\n\n$fundingSource = $fundingApi->createCustomerFundingSource([\n\
\ \"name\" => \"My First VAN\",\n \"type\" => \"virtual\",\n \"bankAccountType\" => \"checking\"\
\n], \"https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C\");\n$fundingSource;\
\ # => \"https://api-sandbox.dwolla.com/funding-sources/fc84d628-f694-47e8-8d57-0d5872a81afd\"\
\n?>\n"
- lang: php
label: Create Funding Source via Exchange
source: "<?php\n// Using dwollaswagger - https://github.com/Dwolla/dwolla-swagger-php\n$fundingApi\
\ = new DwollaSwagger\\FundingsourcesApi($apiClient);\n\n$fundingSource = $fundingApi->createCustomerFundingSource([\n\
\ \"_links\" => [\n \"exchange\" => [\n \"href\" => \"https://api-sandbox.dwolla.com/exchanges/6bc9109a-04fd-49b6-ace6-ca06fd282d65\"\
\n ]\n ],\n \"bankAccountType\" => \"checking\",\n \"name\" => \"My Bank Account\"\n],\
\ \"https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C\");\n$fundingSource;\
\ # => \"https://api-sandbox.dwolla.com/funding-sources/375c6781-2a17-476c-84f7-db7d2f6ffb31\"\
\n?>\n"
- lang: ruby
label: Create Virtual Account Number (VAN)
source: "# Using dwolla_v2 - https://github.com/Dwolla/dwolla-v2-ruby\ncustomer_url = 'https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C'\n\
request_body = {\n name: 'My First VAN',\n type: 'virtual',\n bankAccountType: 'checking'\n\
}\n\nfunding_source = app_token.post \"#{customer_url}/funding-sources\", request_body\nfunding_source.response_headers[:location]\
\ # => \"https://api-sandbox.dwolla.com/funding-sources/fc84d628-f694-47e8-8d57-0d5872a81afd\"\
\n"
- lang: ruby
label: Create Funding Source via Exchange
source: "# Using dwolla_v2 - https://github.com/Dwolla/dwolla-v2-ruby\ncustomer_url = 'https://api-sandbox.dwolla.com/customers/AB443D36-3757-44C1-A1B4-29727FB3111C'\n\
request_body = {\n _links: {\n exchange: {\n href: 'https://api-sandbox.dwolla.com/exchanges/6bc9109a-04fd-49b6-ace6-ca06fd282d65'\n\
\ }\n },\n bankAccountType: 'checking',\n name: 'My Bank Account'\n}\n\nfunding_source\
\ = app_token.post \"#{customer_url}/funding-sources\", request_body\nfunding_source.response_headers[:location]\
\ # => \"https://api-sandbox.dwolla.com/funding-sources/375c6781-2a17-476c-84f7-db7d2f6ffb31\"\
\n"
parameters:
- name: id
in: path
description: Customer's unique identifier
required: true
schema:
type: string
- $ref: '#/components/parameters/Accept'
requestBody:
description: Parameters for creating a funding source
required: true
content:
application/vnd.dwolla.v1.hal+json:
schema:
$ref: '#/components/schemas/CreateCustomerFundingSource'
responses:
'201':
description: created
headers:
Location:
$ref: '#/components/headers/Location'
'400':
description: validation error
content:
application/vnd.dwolla.v1.hal+json:
schema:
oneOf:
- $ref: '#/components/schemas/InactiveExchangeError'
- $ref: '#/components/schemas/InvalidExchangeTokenError'
- $ref: '#/components/schemas/DuplicateFundingSourceError'
- $ref: '#/components/schemas/UnsupportedCardCountryError'
- $ref: '#/components/schemas/InvalidTokenError'
- $ref: '#/components/schemas/MaximumCardsExceededError'
- $ref: '#/components/schemas/CardMissingRequiredFieldsError'
'403':
description: forbidden
content:
application/vnd.dwolla.v1.hal+json:
schema:
type: object
properties:
code:
type: string
example: Forbidden
message:
type: string
example: Not authorized to create funding source.
'404':
description: not found
content:
application/vnd.dwolla.v1.hal+json:
schema:
type: object
properties:
code:
type: string
example: NotFound
message:
type: string
example: Customer ID not found. Check Customer ID.
/funding-sources/{id}:
get:
tags:
- funding sources
summary: Retrieve a funding source
description: Returns detailed information for a specific funding source, including its type, status,
and verification details. Supports bank accounts (via Open Banking), debit card funding sources,
and Dwolla balance (verified customers only). Debit card funding sources include masked card details
such as brand, last four digits, expiration date, and cardholder name.
operationId: getFundingSource
x-speakeasy-group: fundingSources
x-speakeasy-name-override: get
x-codeSamples:
- lang: bash
source: 'GET https://api-sandbox.dwolla.com/funding-sources/49dbaa24-1580-4b1c-8b58-24e26656fa31
Accept: application/vnd.dwolla.v1.hal+json
Authorization: Bearer pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY
'
- lang: javascript
source: "// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node\nvar fundingSourceUrl =\n\
\ \"https://api-sandbox.dwolla.com/funding-sources/49dbaa24-1580-4b1c-8b58-24e26656fa31\";\n\
\ndwolla.get(fundingSourceUrl).then((res) => res.body.name); // => \"Test checking account\"\
\n"
- lang: python
source: '# Using dwollav2 - https://github.com/Dwolla/dwolla-v2-python
funding_source_url = ''https://api-sandbox.dwolla.com/funding-sources/49dbaa24-1580-4b1c-8b58-24e26656fa31''
funding_source = app_token.get(funding_source_url)
funding_source.body[''name''] # => ''Test checking account''
'
- lang: php
source: '<?php
// Using dwollaswagger - https://github.com/Dwolla/dwolla-swagger-php
$fundingSourceUrl = ''https://api-sandbox.dwolla.com/funding-sources/49dbaa24-1580-4b1c-8b58-24e26656fa31'';
$fsApi = new DwollaSwagger\FundingsourcesApi($apiClient);
$fundingSource = $fsApi->id($fundingSourceUrl);
$fundingSource->name; # => "Test checking account"
?>
'
- lang: ruby
source: '# Using dwolla_v2 - https://github.com/Dwolla/dwolla-v2-ruby
funding_source_url = ''https://api-sandbox.dwolla.com/funding-sources/49dbaa24-1580-4b1c-8b58-24e26656fa31''
funding_source = app_token.get funding_source_url
funding_source.name # => "Test checking account"
'
parameters:
- name: id
in: path
description: Funding source unique identifier
required: true
schema:
type: string
- $ref: '#/components/parameters/Accept'
responses:
'200':
description: successful operation
headers: {}
content:
application/vnd.dwolla.v1.hal+json:
schema:
$ref: '#/components/schemas/FundingSource'
examples:
standard_bank_account:
summary: Standard bank account
value:
_links:
self:
href: https://api-sandbox.dwolla.com/funding-sources/49dbaa24-1580-4b1c-8b58-24e26656fa31
type: application/vnd.dwolla.v1.hal+json
resource-type: funding-source
id: 49dbaa24-1580-4b1c-8b58-24e26656fa31
status: verified
type: bank
bankAccountType: checking
name: Test checking account
created: '2022-07-23T00:18:21.419Z'
removed: false
channels:
- ach
bankName: SANDBOX TEST BANK
fingerprint: 5012989b55af15400e8102f95d2ec5e7ce3aef45c01613280d80a236dd8d6c
settlement_account:
summary: Card network settlement account
value:
_links:
self:
href: https://api-sandbox.dwolla.com/funding-sources/12345678-1234-1234-1234-123456789012
type: application/vnd.dwolla.v1.hal+json
resource-type: funding-source
id: 12345678-1234-1234-1234-123456789012
status: unverified
type: bank
bankAccountType: checking
name: Checkout.com Settlement Account
created: '2024-01-15T10:30:00.000Z'
removed: false
channels:
- ach
- real-time-payments
bankName: ABC Bank
fingerprint: 4cf31392f678cb26c62b75096e1a09d4465a801798b3d5c3729de44a4f54c794
bankUsageType: card-network
card_funding_source:
summary: Debit card funding source
value:
_links:
self:
href: https://api-sandbox.dwolla.com/funding-sources/12345678-abcd-1234-abcd-123456789012
type: application/vnd.dwolla.v1.hal+json
resource-type: funding-source
transfer-to-balance:
href: https://api-sandbox.dwolla.com/transfers
type: application/vnd.dwolla.v1.hal+json
resource-type: transfer
remove:
href: https://api-sandbox.dwolla.com/funding-sources/12345678-abcd-1234-abcd-123456789012
type: application/vnd.dwolla.v1.hal+json
resource-type: funding-source
customer:
href: https://api-sandbox.dwolla.com/customers/91f059e7-fac6-4677-bee1-49057a6e528f
type: application/vnd.dwolla.v1.hal+json
resource-type: customer
transfer-receive:
href: https://api-sandbox.dwolla.com/transfers
type: application/vnd.dwolla.v1.hal+json
resource-type: transfer
id: 12fb2f3c-39c7-40cf-99e2-b0311ba39261
status: verified
type: card
name: My Visa Debit Card
created: '2025-12-10T18:02:47.985Z'
removed: false
channels: []
fingerprint: a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2
cardDetails:
brand: VISA
lastFour: '1519'
expirationMonth: 10
expirationYear: 2027
nameOnCard: Jane Doe
bin: '40247644'
billingAddress:
address1: 552 test
city: Des Moines
stateProvinceRegion: IA
country: US
postalCode: '50310'
'404':
description: not found
headers: {}
content:
application/vnd.dwolla.v1.hal+json:
schema:
type: object
properties:
code:
type: string
example: notFound
message:
type: string
example: Funding source not found.
post:
tags:
- funding sources
summary: Update or remove a funding source
description: Updates a bank funding source's details or soft deletes it. When updating, you can
change the name (any status) or modify routing/account numbers and account type (unverified status
only). When removing, the funding source is soft deleted and can still be accessed but marked
as removed.
operationId: updateOrRemoveFundingSource
x-speakeasy-group: fundingSources
x-speakeasy-name-override: updateOrRemove
x-codeSamples:
- lang: bash
source: "POST https://api-sandbox.dwolla.com/funding-sources/692486f8-29f6-4516-a6a5-c69fd2ce854c\n\
Accept: application/vnd.dwolla.v1.hal+json\nContent-Type: application/vnd.dwolla.v1.hal+json\n\
Authorization: Bearer pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY\n\n{\n \"name\": \"\
Test Checking - 1234\"\n}\n"
- lang: javascript
source: "// Using dwolla-v2 - https://github.com/Dwolla/dwolla-v2-node\nvar fundingSourceUrl =\n\
\ \"https://api-sandbox.dwolla.com/funding-sources/692486f8-29f6-4516-a6a5-c69fd2ce854c\";\n\
var requestBody = {\n name: \"Test Checking - 1234\",\n};\n\ndwolla.post(fundingSourceUrl,\
\ requestBody).then((res) => res.body.name); // => \"Test Checking - 1234\"\n"
- lang: python
source: "# Using dwollav2 - https://github.com/Dwolla/dwolla-v2-python\nfunding_source_url = 'https://api-sandbox.dwolla.com/funding-sources/692486f8-29f6-4516-a6a5-c69fd2ce854c'\n\
request_body = {\n 'name': 'Test Checking - 1234'\n}\n\nfunding_source = app_token.post(funding_source_url,\
\ request_body)\nfunding_source.body['name'] # => 'Test Checking - 1234'\n"
- lang: php
source: "/**\n * No example for this language yet. Coming soon.\n **/\n"
- lang: ruby
source: "# Using dwolla_v2 - https://github.com/Dwolla/dwolla-v2-ruby\nfunding_source_url = 'https://api-sandbox.dwolla.com/funding-sources/692486f8-29f6-4516-a6a5-c69fd2ce854c'\n\
request_body = {\n \"name\" => \"Test Checking - 1234\",\n}\n\nfunding_source = app_token.post\
\ \"#{funding_source_url}\", request_body\nfunding_source.name # => \"Test Checking - 1234\"\
\n"
parameters:
- name: id
in: path
description: Funding source unique identifier
required: true
schema:
typ
# --- truncated at 32 KB (81 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dwolla/refs/heads/main/openapi/dwolla-funding-sources-openapi.yml