Live data from Hacker News

How ACH works: A developer perspective – Part 2

engineering.zenpayroll.com

21–30 of 36 posts

Re: How ACH works: A developer perspective – Part 2

#21
post #9

Earlier quoted context omitted.

Basically scrape the account. Avg daily balance is probably the primary number. Low balance, high balance, NSFs, etc.

Pretty close! We're not scraping anything which I'll clarify more for the connotation that this is web scraping - it's not.

I'm not sure there's much difference between scraping and downloading txn history (.txt or .ofx or whatever).

Re: How ACH works: A developer perspective – Part 2

#22
post #2

If you find this interesting you may find the work Knox is doing pretty cool - we're able to verify funds before we make payments (so there no NSFs), get and verify account numbers without asking for the user to tell us them, and verify the identity of the payor all in one step - we just have them log into their online banking (like you do with Mint or Yodlee except faster). We've never had an ACH file returned ever,…

Anybody who made a donation or started a donation on thesimpledifference and has feedback about UX (or otherwise) issues they had and could email me at tommy at knoxpayments dot com I would just love to hear from you so much you have no idea.

Re: How ACH works: A developer perspective – Part 2

#23
post #2

If you find this interesting you may find the work Knox is doing pretty cool - we're able to verify funds before we make payments (so there no NSFs), get and verify account numbers without asking for the user to tell us them, and verify the identity of the payor all in one step - we just have them log into their online banking (like you do with Mint or Yodlee except faster). We've never had an ACH file returned ever,…

You should fix the lack of SSL security on thesimpledifference.com Why? iFrame SSL certificates aren't visible, and no, your VeriSign trusted doesn't count. This means users will find it offputting as you note. Why else? Someone could hijack the HTTP page and point the iframe location somewhere else where they then intercept bank details. Next knox only seems to support a limited number of banks, unlike ACH which I'm…

SSL is fixed on https://thesimpledifference.com - don't have htaccess redirecting although I put the rule in. But ssl is up!

Re: How ACH works: A developer perspective – Part 2

#24
post #21

Earlier quoted context omitted.

Pretty close! We're not scraping anything which I'll clarify more for the connotation that this is web scraping - it's not.

I'm not sure there's much difference between scraping and downloading txn history (.txt or .ofx or whatever).

True

Re: How ACH works: A developer perspective – Part 2

#26
post #20

I have written exports from various payroll systems to produce NACHA compliant ACH files to upload to banks, every time there was a problem the bank would get back to us through the customer and we would get super weird or vague responses. In the future I am going to ask for the return codes ( https://zenpayroll.com/ach_return_codes ) listed in the article, very useful bit of info, thanks!

Writing NACHA exports for an online banking loan repayment system was the worst. Being a Junior Dev at the time, and having my only guidance being a NACHA handbook, with no banking experts to actually explain things, knowing millions of dollars per year would go through the app... Man. Terrifying.

Re: How ACH works: A developer perspective – Part 2

#27
post #9

Earlier quoted context omitted.

Basically scrape the account. Avg daily balance is probably the primary number. Low balance, high balance, NSFs, etc.

Pretty close! We're not scraping anything which I'll clarify more for the connotation that this is web scraping - it's not.

How?

Re: How ACH works: A developer perspective – Part 2

#28
My first job out of college in 1987 was a COBOL programmer working on the Unisys version of the ACH system. There were two versions, IBM and Unisys, which were mandated to maintain 100% feature parity. The reason for two versions was that the Federal Reserve System preferred not to sole-source mainframes across its 12 districts.

To understand ACH it helps to understand that it's basically electronic checks. The FRB system was (and is) the nation's clearing house for physical checks. The people who created ACH took as their model the existing system of check processing.

By the time I started, a goodly portion of inbound files came over a wire, but many (if not most) still came on magnetic tapes delivered each day by couriers. A few years earlier all files had come as magnetic tapes and (I believe) before that, punch card decks.

The biggest risk, and the thing we lived in fear of -- and I suppose they still do -- is a "delayed file." If a file cannot be processed by the promised time because of an error in the ACH system, then the receiving accounts are not credited when they are due. This results in "float" -- interest lost. This can reach into the millions, and when the Federal Reserve is at fault, they have to eat it.

The post talks a lot about rejections. In my day, the largest most complicated program was the "The Editor" which had only one job: to reject files. This beast took the form of a three inch thick green bar printout which I would remove from a hanging file folder each day. If memory serves, about 1 out of 10 lines was GO TO. I could wax on, but suffice to say, this drove me out of programming for 12 years.

When I saw this post, I had to wonder if any of the code I wrote so long ago is still running today.

Post reply on HN