Before your end user can send or receive funds to their connected bank account, they must be created as a Customer via the Dwolla API. With this funds flow, however, the only eligible Customer types are:
To learn more on the differences between personal and business verified Customers and the capabilities of each, check out our developer resource article.
While both the Personal and Business verified Customer types are valid in this funds flow, we will be creating a Personal verified Customer in this guide.
Parameter | Required | Type | Description |
---|---|---|---|
firstName | yes | string | Individual’s legal first name. |
lastName | yes | string | Individual’s legal last name. |
yes | string | Customer’s email address. | |
type | yes | string | Type of identity verified Customer. Value of personal for individual. |
address1 | yes | string | Street number, street name of individual’s physical address. |
address2 | no | string | Apartment, floor, suite, bldg # of individual’s physical address. |
city | yes | string | City of individual’s physical address. |
state | yes | string | Two-letter US state or territory abbreviation code of individual’s physical address. |
postalCode | yes | string | Customer’s US five-digit ZIP or ZIP + 4 code. |
dateOfBirth | yes | string | Customer’s date of birth. Must be 18 years of age with format of YYYY-MM-DD . |
ssn | yes | string | Last four-digits of individual’s social security number. |
POST https://api-sandbox.dwolla.com/customers
Content-Type: application/vnd.dwolla.v1.hal+json
Accept: application/vnd.dwolla.v1.hal+json
Authorization: Bearer pBA9fVDBEyYZCEsLf/wKehyh1RTpzjUj5KzIRfDi0wKTii7DqY
{
"firstName": "John",
"lastName": "Doe",
"email": "johndoe@nomail.net",
"ipAddress": "10.10.10.10",
"type": "personal",
"address1": "99-99 33rd St",
"city": "Some City",
"state": "NY",
"postalCode": "11101",
"dateOfBirth": "1970-01-01",
"ssn": "1234"
}
HTTP/1.1 201 Created
Location: https://api.dwolla.com/customers/FC451A7A-AE30-4404-AB95-E3553FCD733F
When the Customer is successfully created on your application, you will receive a 201
HTTP response with an empty response body. You can reference the Location header to retrieve a link that represents the created Customer resource. We recommend storing the full URL for future use, as it will be needed for actions such as attaching a bank or correlating webhooks that are triggered for the user in the Dwolla system.
If you have an active webhook subscription, you will receive the customer_created
and customer_verified
webhook immediately after the resource has been created.
Not all Customers will have a verified
status upon initial Customer creation. In production, you may run into an instance where more information is needed from your end user in order for Dwolla to fully verify their identity. Other statuses your Customer may be placed in include, retry
, document
, deactivated
, or suspended
. For more information on these statuses, refer to our developer resource article.
On successful Customer verification, Dwolla will also create a Balance Funding Source for this Customer.
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.