Verifying Funding Sources : API vs Dashboard


Can I do the following?

-Ask a user to enter their routing / account numbers + Banks name

-Use these values to create a funding source via the API, and initiate the microdeposits via the API as well?

-Tell the user to log on to their dwolla dashboard.
(Will they see their funding source on there?)

-Email the user whenever the app gets a webhook at each step. (Microdeposits initiated, added, source verified, etc.)

In other words, can I pick and choose which steps my app does vs which steps the dwolla dashboard takes care of?

If I have to I will, but I want to avoid building a microdeposits UI.


(Spencer Hunter) #2

Hi @Isaac_Cespedes, You can do all of these steps using the API which is the recommended approach. There are two types of Transfer accounts: 1) A CIP Verified account, which undergoes additional identity verification by providing information such as full name, address, dob, SSN, etc. 2) A Direct account, which is a lightweight account that only requires full name and email address. This account type can only interact with a CIP Verified account.

If you decide to leverage the Dwolla UI for micro-deposits, keep in mind that Direct accounts will view a lightweight Dashboard that doesn’t give the user the ability to initiate or verify micro-deposits.



I am in the sandbox environment, and I was able to add fake routing/account numbers. I then go on the dashboard to inititate microdeposits and then it tells me to wait 1-3 business days:
“The verification deposits have not had enough time to clear the system. Please allow 1-3 days from when the bank was added before attempting to verify the account.”

EDIT: Furthermore, I am now getting this message on the dashboard –
“The amounts you entered do not match our records. Please confirm the amounts on your online bank statement and try again.”
–I thought I could use any amounts in sandbox.

Is this right? Is it that I am supposed to use real checking info (i thought the docs said otherwise)?

Also, as I said earlier in this thread, my original intention was to initiate the microdeposits via the API, but it wasn’t working for me. It says that this endpoint only supports GET requests. I don’t mind making the user initiate them though.

This is a node.js snippet of how I handle the response after creating the funding source.
console.log("Funding source: " + res.headers._headers.location[0]);
var fundingSourceUrl = res.headers._headers.location[0];


(Cory Anderson) #4

(Cory Anderson) #5

(Cory Anderson) #6