API-Based ACH Payment Vendors for Web Developers

26 Oct

While there has been tremendous progress in the world of plug-and-play online credit card payments providers for web developers (see: Stripe, Card.io [now PayPal], Braintree, and others), as well as the introduction of some exciting alterative payments platforms (e.g. Dwolla), it is shockingly difficult to find a robust API-based solution for accepting ACH payments online [and apparently has been for a while].  I have spent the last couple months looking for just such a solution while leading Product management for an online small business lending platform, Endurance Lending Network.

Quick overview of the Pros/Cons of ACH:

ACH PaymentsACH (Automated Clearing House), also sometimes called “eChecks” or “electronic bank transfers”, is an old-school framework for inter-bank money transfer, governed by NACHA. There are two kinds of ACH transactions – a “push”, where a user instructs their bank to send money to another bank (that of your business), and a “pull”, where a user authorizes one bank (i.e. that of your business, through your web application) to request money from another bank.

  • Pros: It’s cheap (per transaction costs can be as low as $.10 per transaction), it’s scalable (it’s typically charged per-transaction, not as a percent of the transaction amount), and it’s reasonably common and therefore not “scary” to customers
  • Cons: It’s fraud-prone (while you will receive an NSF  (insufficient funds) error within 3 days, a customer can walk into her bank up to 60 days after a “pull” transaction has occurred and claim she never authorized your payment. Her bank will then claw back the money they sent you, and you’re left with little recourse outside of a lawsuit, if you can even find the customer), and the rest of this blog post as evidence, it’s hard to find a good plug-and-play provider.

Given we’re building a lending product, and have a solid legal contract in place with all of our borrowers, we’re not worried about fraud, we are moving high volumes of money per transaction, and so ACH seems like an ideal solution.  So what providers are available?

“Next Generation” solutions:

  • ZipMark – utilizing the framework for Digital Checks (think: photo deposit of paper checks) and layering in security features to guarantee ACH transactions in real-time (they take the hit in the event of insufficient funds). Solid technology, nice team based out of New York, and fixed per-transaction fees – great! Problem is, they cannot yet offer web developers substantial customization of the user experience. Your users interact with ZipMark through a “context-ignorant” Facebook-connect-like modal window.  That means that while my web application is collecting SSNs, DOBs, and other information from my users, they have to re-enter these into ZipMark to make a payment. Similarly, using ZipMark requires that users create a username / password with their service – they cannot yet handle single sign on with our application. So, overall very promising technology, but not yet about to deliver the user experience what we are looking for. 1% per transaction, capped at $5.
  • BancBox – offers a robust set of payments capabilities, including Credit Cards, ACH and PayPal, through a single set of APIs.  What’s more, they’re able to create “eWallets” within your app for your users, helping you keep their money within your marketplace vs. having to send it back out to an external bank account.  Problem is, they charge for ACH on a percent-of-transaction basis (~1%), which is far to expensive than other solutions (at ELN, we’re sending loans of up to $500K here – it’d be cheaper for me to fly to our customer’s house with a suitcase of cash than send it through BancBox). 1% per transaction, no cap.

Traditional ACH providers, with APIs:

  • PaySimple – offers an API, but it’s from a 3rd party, meaning they don’t have the expertise to support it if you run into trouble.  Overall, they just don’t come across as being very developer focused – their primary solution is a white-labeled payment interface hosted on their site.  I asked, and no, you can’t just iFrame this into your site (or at least, they won’t support you if you do).  $35/month + $.55/transaction
  • ACHDirect – same deal. Another web developer who used them told me “they sucked, but they seemed to suck the least.” — needless to say, I didn’t rush to sign a deal with them. $20/month + $.35/transaction


I’ve heard about these offerings, but when I reached out to them, they didn’t get back to me.  So… while they seem to have the capabilities, they haven’t exactly won me over yet:

Build it Yourself?

Interestingly, I have read in a few places the idea that it’s actually still easier to build your own ACH capability.  Until recently, I wasn’t really clear what that meant.  Randal Lucas recently tipped me off to this:

  • AirBnB’s Do-it-Yourself ACH Guide – AirBnB apparently went through a similar process to mine, and ended up building a simple mechanism to generate a daily dump of all the transactions that needed to be processed, would login to their bank’s portal, and upload the list.  This required daily, manual work, and manual error-handling, but as you’ll read, they think it’s the best solution available.

Hopefully this has been helpful.  Unfortunately, I can’t yet provide you a recommendation since we’re still figuring this out.  I’m leaning towards ACH Direct, Authorize.net, or do-it-yourself.

Have you found a good solution you would recommend?

15 Responses to “API-Based ACH Payment Vendors for Web Developers”

  1. Michael October 31, 2012 at 10:45 pm #

    Thanks for the article – extremely helpful. Does BancBox really only charge a flat 1% on ACH transactions? Their pricing page is currently down, but the cached version indicates higher rates: http://webcache.googleusercontent.com/search?q=cache:xxmdaonwT_AJ:www.bancbox.com/our-pricing+&cd=1&hl=en&ct=clnk&gl=us

    I am looking for a service to process small ACH transactions at high volume, so something like a 1% flat rate would be amazing.

    • mitchellwfox October 31, 2012 at 11:08 pm #

      I wouldn’t use this post as the definitive last-word on their pricing, but where I have listed them, these were the prices that either were on their sites or were quoted to me by sales folks.

      I would recommend just reaching out to BancBox to get a quote.

  2. Linda M July 9, 2013 at 3:09 pm #

    Hi Mitchell,

    The startup I work for is currently investigating how we would implement a build-it-yourself solution.

    I’m curious what solution you landed on in the end. If you did approach this from the build-it-yourself solution, I would love to hear a little bit about your experience choosing and working with a bank, and how long it took to implement.



    • mitchellwfox July 9, 2013 at 4:43 pm #

      We didn’t end up implementing payments on our side, but rather worked with an external loan servicing firm with payments capabilities (as a starting point, at least). I believe there is a good Quora thread on this topic, with a couple other folks there who could help you out. Sorry I can’t be more helpful.

      • Linda M July 9, 2013 at 6:10 pm #

        Not a problem. Thanks for the information!

  3. chasd00 September 8, 2013 at 10:00 pm #

    Ive been looking for a constant rate (nonpercentage based) ach api for a while. I could certainly do my own, do you thunk there’s a biz model there for an ach api that functions similar to stripe.com?

  4. Zac E. November 12, 2013 at 5:13 pm #

    VeriCheck provides ACH via API capability and their pricing I’ve found to be the most competitive especially for high volume, also the best customer service I’ve come across with my search!

  5. Dimitri D February 11, 2014 at 12:51 am #

    I just found your post and am looking for the same thing, an online payment gateway that can accept low-cost ACH as well as standard credit card transactions. I need it integrated with a forms system we need to collect customer registration and information (wufoo or similar), or at least offering the least possible amount of duplication for customers – we don’t want to force them to login twice, re-enter addresses, etc. Finally, would need good integration with a bookkeeping software (now using QB but hoping to find better).
    Options I am currently or will soon be looking at: Rerun, Paychex, FirstACH, Chase Paymenttech. Looked at Authorize.net but they also charge a % fee for ACH; not sure about Chase yet.
    If anyone has experience about these other systems, I appreciate your feedback!

  6. testy February 14, 2014 at 5:42 am #

    Why not use Balanced?

  7. Paddu G May 5, 2014 at 7:50 pm #

    I have came across http://www.forte.net/pricing (now Forte, formerly ACHDirect). Shows a fixed price of 25 cents per eCheck transactions, apart from a monthly fee of $25 – which supports credit card processing too. Appears to be neat API. We are planning to implement for processing our Carevium customer payments. I will keep you folks posted how signup process and integration efforts go.

    • Jason Slocomb (@slidetackle73) July 21, 2015 at 5:11 pm #

      Forte charges 2.9% + .25 / transaction for ACH/E-Check — just like for CC. Can’t vouch for the platform, never used it.

      • me July 30, 2015 at 11:35 pm #

        Forte (formerly ACH Direct–which you listed above) Merchant Accounts are 25¢ per ACH/E-check transaction.

  8. Peter Makover November 11, 2016 at 1:20 pm #

    I am building a mobile app that will generate high-volume low value ACH transactions and I was planning to use Dwolla’s white label solution. Is there a reason you aren’t considering them?

    • mitchellwfox November 11, 2016 at 5:01 pm #

      Peter –

      In fact, since I published this, I’ve heard both from Dwolla and another team that was considering using them. They didn’t have an ACH offering at the time I wrote the original article

  9. Robert Israch March 22, 2017 at 5:02 am #

    Tipalti is another strong option to consider for US and Global ACH APIs.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: