What is Dwolla

Dwolla is a new payment network. From the user perspective it’s kind of like Paypal except they intentionally don’t support credit cards - only direct bank to bank transfers like ACH. But ACH is slow and sometimes ineffective (ACH accounts can be overdrawn). According to some people, banks slow down ACH transfers on purpose to make money off the “float” (I don’t have an authoritative source on this). Dwolla invented their own method to instantly transfer money with fund verification they call FiSync. They are trying to get banks to support FiSync so that their customers can utilize instant transfers. So far, the list of FiSync-capable institutions is relatively small. If you’re interested in FiSync, I recommend you ask your bank to adopt it; and if they won’t, see if you can switch to a bank or credit union that does.

Why is Dwolla

Everytime we use a credit card, and up until recently a debit card, banks would leech on average 2%-3% from that transation. This means that merchants raise prices around that much just to pay for all the credit card fees. We are giving parasitic banks literally trillions of dollars every year. Yes credit cards have useful purposes, but do you think they provide enough utility to justify leeching 2-3% from us? I sure don’t.

Dwolla is cutting out the credit card networks. Every transaction made with Dwolla is putting more money into your wallet, into your merchant’s account, (and of course Dwolla is making some money too). If we were able to switch from credit cards to dwolla, the economy would be more efficient and prices would be lower.

How is Dwolla

Dwolla charges $0.25 per transaction for transactions larger than $10, to the recipient of the money. Transactions smaller than $10 are free. In general that is the only fee but Dwolla sells additional services I won’t cover here.

  • Dwolla can be used online or with a mobile device.
  • FiSync transfers are instant and funding is guaranteed.
  • Everyone stuck with ACH transfers must wait for normal ACH delays (e.g. 2-3 days).

My experience with Dwolla

I work for an organization that could save a hefty chunk of change if we could switch to Dwolla, and Dwolla would still be making money off every transaction (because they are always more than $10). The organization would put most of the money saved into lowering prices so everyone I care about would win. However Dwolla is young, most people don’t yet have Dwolla accounts, setting up a Dwolla account isn’t quick or simple, and one can only assume that the big banks are going to avoid supporting Dwolla until they are forced to, kicking and screaming.

What Dwolla Nails

  1. Dwolla is very developer friendly and that is great news for everyone (but especially developers). Their code libraries are on github, and they support all major web programming languages.
  2. Their technical support on the dwolla developer forum is really good. They respond quickly, make changes quickly, and are honest about their limitations. The employees seem to care about this company and the larger idea.
  3. The Dwolla teams knows about most of the negatives I’ve listed below and they are actively working on improvements.
  4. Their OAuth and REST framework provides a lot of flexibility and power.
  5. The culture of the company really seems pro-consumer and on-point.

What Needs Work

  1. There is no sandbox yet. This is a big fat negative. They offer some test support, but the testing data structures are not identical to their production counter-parts. This means slower development time and debugging a production system. Dwolla is working on this.
  2. To say Dwolla’s API and documentation are “unpolished” would be too generous. For example, the documentation does not describe how all the different pieces of the API that evolved over time fits together. There are three different ways to make payments: via a javascript-created button, a more traditional payment gateway, or via oAuth endpoints. But there is no documentation that actually compares or contrasts them - you’re forced to figure out what is available and what you want to use. What makes it worse is that the methods’ deficiencies are not laid out clearly either.
  3. Not all payment methods have the same capabilities. For example, the simple “button” method is particularly underwhelming. If you make a payment with Paypal, you do not care if your Paypal account actually contains any money because if not Paypal will automatically move the money from another source (bank account or credit card). However if you make a payment with the Dwolla “button” method and you have no funds in your account, the transaction will simply fail and it’s up to the merchant to tell you why. I would imagine that Dwolla should auto-fund the transaction and if not, they’d at least warn you your account does not have enough funds for the transaction.
  4. The API has no refund method. The way you currently send a refund is to send a payment in the opposite direction and fees apply both ways. This usually requires you to jump through a couple extra hoops.
  5. The simple javascript “button” payment method does not support funding the transaction from the user’s bank account, making it pretty useless.
  6. Because Dwolla still relies mostly on ACH transfers, there is no international support yet. USA only.
  7. Dwolla requires American users to submit their social security number. This requirement really turned my stomach. Paypal did not ask for my SSN, neither does Google Checkout. I’m supposed to give my SSN to yet another company? They say the SSNs are stored on disk with 256-bit AES encryption, but I’m still not thrilled about risking my identity with yet another company (especially when I do not see a justification for the need). I emailed their support about this but was not satisfied with their response. They claim “We need this to verify your identity to link you to your bank account” which sounds like BS to me. American residents without a SSN can verify themselves in other, unspecified, ways.
  8. Obviously, more financial institutions need to adopt FiSync. You can help by asking yours if they support FiSync.

Update: 12-28-2012

I have more or less completed integration of the dwolla API into a PHP web app, including customer driven purchases and refunds. Well, actually it is less completed because at the moment there is no straight-forward way to fully automate refunds because of a bug in the Dwolla webhooks (notifications) where the notification reports the incorrect transaction id. Unlike every other bug I’ve pointed out to Dwolla, this one has not been fixed or even acknowledged as of today (it has been over 4 months since I reported the bug). This has been a major inconvenience for me. Dwolla will not be ready for primetime so long as transactions cannot be reliably fully automated. I have even considered abandoning Dwolla over the issue, but transaction volume has been so low that the time spent on manual refunds has not been a major problem.


comments powered by Disqus