Docs
Get API Keys

Create a document for a customer #

To verify an individual or business identity, please upload a clear, colored image captured with a camera of a government-issued identification document. Reference the table below for the list of acceptable documents.

Here's what you need to know about uploading a document:

  • Multipart Form-Data POST Request: You'll need to use a multipart form-data POST request to upload your document. This is a specific type of HTTP request used for file uploads.
  • Supported File Formats: The uploaded file must be a color image in one of these formats: JPG, JPEG, or PNG. Business Documents in PDF format are accepted for verification purposes.
  • File Size Limit: The file size cannot exceed 10MB.

Acceptable documents #

Customer typeAcceptable documents
Personal Verified Customerpassport, license, or idCard. Must be a colored camera captured image of a U.S. government-issued identification. Foreign passports will be rejected with ForeignPassportNotAllowed if uploaded for this customer type.
Business Verified CustomerController documents - passport, license, or idCard.
  • If license or idCard, must be a colored camera captured image of a U.S. government-issued identification.
  • If passport, U.S. as well as foreign passports are accepted for business Controllers and Beneficial Owners.
Business documents - other. Refer to our guide on Handling Document status for Business Verified Customers for acceptable documents.

HTTP request #

POST https://api.dwolla.com/customers/{id}/documents

Request Parameters #

Form FieldDescription
documentTypeAcceptable values of: passport, license, idCard, or other. Refer to the acceptable documents section for more information on how these document types apply to each Customer type.
fileFile contents.

HTTP status and error codes #

HTTP StatusCodeDescription
201CreatedA document resource was created.
400maximumNumberOfResourcesMax of four files upload allowed. Please wait for Dwolla to manually check the documents.
400invalidFileTypeFile types supported:
Personal IDs - .jpg, .jpeg or .png.
Business Documents - .jpg, .jpeg, .png, or .pdf.
400DuplicateResourceDocument already exists. Follow the link to find the existing document for the Customer.
403invalidResourceStateResource cannot be modified. Document creation not allowed for already verified Customers or non-verified Customer types.
403notAuthorizedNot authorized to create documents.
404notFoundCustomer not found. Check CustomerId.
413fileTooLargeDocument requests are limited to 10 MiB.

Request and response #

Raw
curl -X POST
\ -H "Authorization: Bearer tJlyMNW6e3QVbzHjeJ9JvAPsRglFjwnba4NdfCzsYJm7XbckcR"
\ -H "Accept: application/vnd.dwolla.v1.hal+json"
\ -H "Cache-Control: no-cache"
\ -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW"
\ -F "documentType=passport"
\ -F "file=@foo.png"
\ 'https://api-sandbox.dwolla.com/customers/1de32eC7-ff0b-4c0c-9f09-19629e6788ce/documents'

...

HTTP/1.1 201 Created
Location: https://api-sandbox.dwolla.com/documents/11fe0bab-39bd-42ee-bb39-275afcc050d0
Test in the Sandbox for free today.
Use sandbox environment to test API requests.
Get API Keys
2024 All Rights Reserved
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.