Source: former Erlang engineer
199 karma · joined October 20, 2018
Source: former Erlang engineer
iso20022.js allows any developer to programatically move bank transfers with a business bank account by making ISO20022, the underlying messaging standard for money movement easier to use.
It's amazing how any developer can now move payments instantly using bank rails. I'd love for you all to take a look and let me know what you think.
Would love to hear your thoughts or suggestions on where we take the project from here. Thanks!
For financial calculations I recommend using Dinero.js
As far as I know, this is an international phenomenon. Keep in mind this is corporate banking, not consumer banking.
I'd happy answer any other questions you have @ https://cal.com/woodside/iso20022js
ISO20022 has a huge namespace and can do all kinds of things. My current focus on making transaction banking namespaces more accessible (think pain.001 002 and 008) aswell as CAMT files
See the https://dinerojs.com/ package to see how money is handled (tldr it's a combination of currency and amount which helps us get to the root #)
I published iso20022js.com a few weeks ago, and I was incredibly surprised by the overwhelming traction it received. I wanted to share more about some payments fundamentals that engineers might need in order to run this package - specifically, how sending these types of bank payments actually works.
It's true that REST APIs operate under the assumption of processing at request time, while not the case with files. That's what makes Bank REST APIs so tricky - processing doesn't ever actually occur at request time.
There are so many crazy formats that are supported. Simpler is better imo
I agree that simplicity and open standards will win. SFTP is straightforward and has worked well in the past. In banking and finance, SFTP is what powers most programmatic corporate banking. Eventually, I think we'll see SFTP and message queues (like SQS) used more often as processing speeds up. I believe message queues are what powers much of real time payment processing already (https://news.ycombinator.com/item?id=36805571)
https://docs.iso20022js.com/quickstart#step-4-send-the-payme...
The test cases for this library validate against the XSD for the ISO files, which could be extended to handle more test cases.
Banks sometimes offer a test SFTP endpoint they use. Engineers have had to do this from scratch at the companies they worked at in the past. If this is something you're interested in, we should talk more @ svapnil@woodside.sh
If you have more questions, I'd love to help you out - please shoot me an email @ svapnil@woodside.sh
The must know a lot about ISO20022 payments! I'd love to get in touch with you, if you can please shoot me an email @ svapnil@woodside.sh :)
If you had the time, would love to talk more about this - my email is svapnil@woodside.sh and I'd love to get in contact with you
ISO20022 / XML allows this to be possible without breaking anything. In the past payment formats used to be fixed width text files - impossible to change or improve functionality for
1. Security Adding vendors is a very scary thing for companies, rightfully so. Open source is great for this, because an NPM package is not a vendor.
2. Signing / Sending a Transaction iso20022.js doesn't deal with message sending yet. Best case there is a straightforward SFTP setup, which I've given instructions for here: https://docs.iso20022js.com/quickstart#step-4-send-the-payme...
3. Getting certified to send payment instructions. This should be the work of the module!
I think there's always some ergonomic gap between these XML Schema generated classes and SDKs that developers are comfortable using. My intention for this library is for a non-payment developer to be able to interact with the ISO20022 schemas, while being as true to the underlying models as possible.
You're right. Accepting credit card payments over the internet is usually done handled by black-box third party payment processors.
Bank payments, like ACH, SWIFT, and others are usually built in-house by companies that move money at scale, like payroll providers, insurance companies, and other old school institutions.
As companies that do heavy financial management refresh their architecture and move to modern web servers and the like, they'll likely need to rebuild it from scratch. This is what iso20022.js plays a small part in - if they're building on Node this is a convenient library for them to use.
There isn't something we are currently offering yet, althoug I wrote about how this works in the quickstart guide: https://docs.iso20022js.com/quickstart#step-4-send-the-payme...