Live data from Hacker News

Show HN: Iso20022.js – Create payments in 3 lines of code

iso20022js.com

41–50 of 139 posts

Re: Show HN: Iso20022.js – Create payments in 3 lines of code

#41

This is a nice looking website, and I can imagine this being a really useful hook into consulting work. Some thoughts: - replace strings with enums where possible. E.g. "USD" should be from an enum - this sort of data-interop library could maybe be written in a configuration language that it uses to generate libraries for different languages - a glossary would be really helpful - a list of banks who've adopted this I…

Thanks for your feedback Robert!

I think payments is an industry in general that is starving for the right information, so a free and open source package like this should have an abundance of information. I'll make sure I add it in.

The configuration language sounds really interesting. What I think is special about this library is that it comes with all the Typescript furnishings one would need to have a powerful dev experience. The goal is to make it incredibly easy for a developer to use iso20022, not just another middle layer that obfuscates it

Re: Show HN: Iso20022.js – Create payments in 3 lines of code

#42
The difficult thing about payments is not necessarily formatting payment instructions to ISO20022, but rather setting up the underlying infrastructure like:

- Shelving a Windows box in some authorized datacenter.

- Going through a years long process of getting certified to send payment instructions to the scheme (e.g. SWIFT network).

- Receiving a couple of USB sticks that contain certificates and signing keys.

- Connecting to the schemes VPN.

- Having all the legals in place.

- And probably many more things I was never exposed to.

Re: Show HN: Iso20022.js – Create payments in 3 lines of code

#43

Are you planning on generating all (or a subset) of 20022 messages? That’s what we did for our Go package using 20022 for RTP. We added helpers for generating IDs and the signature sign/validate. https://github.com/moov-io/rtp20022

Hi Adam, thanks for asking. Eventually, this library should be extensible to generate all types of ISO20022 messages, but I'm starting out with PAIN (Payment Initation!) messages. Would be super keen to add RTP - will reach out to you!

Re: Show HN: Iso20022.js – Create payments in 3 lines of code

#45

>> I'd love to know what you think and importantly know about any improvements you'd like us to make! I think it's scary to do any finance related stuff using NPM dependencies. How large is your dependency tree?

That’s what fintech is, one large dependency tree

Re: Show HN: Iso20022.js – Create payments in 3 lines of code

#46
post #36

The problem with this standard is all the free text and bank specific fields that banks will use instead of the standard. One bank I integrated with had the equivalent of "Our fee is 5.65" in a text field which you had to parse, instead of the field for fees. Of course, the language of that string could also change. Fun times

That does sound really really fun.. What's great about XML is that free text / bank specific fields can be handled elegantly with XML's extensible structure. That is why I think ISO20022 is here to stay.

That said, this library is made to be extensible. One day I think it will even be able to encapsulate any type of bank. For example, imagine bofaISO20022.createACHPaymentInitation or something

Re: Show HN: Iso20022.js – Create payments in 3 lines of code

#47
post #41

This is a nice looking website, and I can imagine this being a really useful hook into consulting work. Some thoughts: - replace strings with enums where possible. E.g. "USD" should be from an enum - this sort of data-interop library could maybe be written in a configuration language that it uses to generate libraries for different languages - a glossary would be really helpful - a list of banks who've adopted this I…

Thanks for your feedback Robert! I think payments is an industry in general that is starving for the right information, so a free and open source package like this should have an abundance of information. I'll make sure I add it in. The configuration language sounds really interesting. What I think is special about this library is that it comes with all the Typescript furnishings one would need to have a powerful dev…

It's a pleasure! To be clear, I meant that you could have a repository that contains all of the information in some sort of configuration language (or maybe in Typescript; I suppose that doesn't really matter) but you use that to generate multiple libraries; one for each language you might want to support. So a single codebase (or configuration base) could generate iso20022.js, iso20022.ts, iso20022.py, etc etc.

It's not simple; it might just be an interesting distant goal to keep in mind.

Re: Show HN: Iso20022.js – Create payments in 3 lines of code

#48

>> I'd love to know what you think and importantly know about any improvements you'd like us to make! I think it's scary to do any finance related stuff using NPM dependencies. How large is your dependency tree?

extremely lightweight https://www.npmjs.com/package/iso20022.js?activeTab=dependen...

Re: Show HN: Iso20022.js – Create payments in 3 lines of code

#49

The difficult thing about payments is not necessarily formatting payment instructions to ISO20022, but rather setting up the underlying infrastructure like: - Shelving a Windows box in some authorized datacenter. - Going through a years long process of getting certified to send payment instructions to the scheme (e.g. SWIFT network). - Receiving a couple of USB sticks that contain certificates and signing keys. - Con…

[deleted]

Re: Show HN: Iso20022.js – Create payments in 3 lines of code

#50
post #23

Earlier quoted context omitted.

You import the library, initialise an object and call its method. I think it's fair enough to call that example three lines of code. The bigger question of course is what do you end up with. Clearly that method call isn't going to actually send an instruction to your bank to debit your account and credit somebody else's. I guess `creditPaymentInitiation` is an object that has can be converted to a properly formatted…

I'd bet the .toString() method returns an XML payload you can shove into your API call when you've configured a client for it.

Yup - see https://docs.iso20022js.com/quickstart#step-4-send-the-payme... if you wanna see how that's done
Post reply on HN