Live data from Hacker News

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

iso20022js.com

21–30 of 139 posts

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

#21
post #9

Earlier quoted context omitted.

Since you do say it in HN tagline, what are the "3 lines of code"? I can only see 43 LoC in the landing page. A tool to help massively with payments is always welcome of course, but if this is really 43 lines instead of 3 it'd feel like shady marketing (no judgement until there's a reply/clarification).

It's the import, the "const iso20022 = new ISO20022" line, and the "const creditPaymentInitiation = iso20022.createSWIFTCreditPaymentInitiation". The big data chunks are being counted as one line. I will admit I'm usually very skeptical about "Do X in Y line" claims because usually you can do anything in one line by shoving the entire codebase behind a "DoIt()" call. But I'll actually give them this one. I'm not even…

If it was free text content I'd agree, but this being configuration code where you need to be very precise on the key names and values, possibly reading some docs and consulting multiple sources per line, I would not count this as 3 lines... 3 simple steps sure, but calling that 3 lines is not being honest IMHO.

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

#22
post #2

Hey HN, My name is Svapnil Ankolkar and I've recently built iso20022.js, a library for creating ISO20022 payments in Typescript. The goal of this project is to be the easiest way to create, and eventually ingest, files in the ISO20022 standard, the defacto XML standard for bank payments. I'd love to know what you think and importantly know about any improvements you'd like us to make!

Since you do say it in HN tagline, what are the "3 lines of code"? I can only see 43 LoC in the landing page. A tool to help massively with payments is always welcome of course, but if this is really 43 lines instead of 3 it'd feel like shady marketing (no judgement until there's a reply/clarification).

Thanks for checking out what I'm working on Francisco - you're right - expanding all the data models here increases the LoC. The objective of iso20022.js is not to be overly simplified, but rather offer the best way to interface with the ISO20022 standard. That's a big reason for the large payloads - no obfuscation.

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

#23

Earlier quoted context omitted.

Since you do say it in HN tagline, what are the "3 lines of code"? I can only see 43 LoC in the landing page. A tool to help massively with payments is always welcome of course, but if this is really 43 lines instead of 3 it'd feel like shady marketing (no judgement until there's a reply/clarification).

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.

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

#26
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 ISO standard might be interesting

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

#27
post #14

It’s a shame it’s probably going to take another 10 years before any of the banks actually migrate to ISO20022 (if it ever happens) SwiftMT conversion software is currently the big sell so they don’t have to rewrite / build everything they already have.

In 2018 I implemented a software client that sent SEPA pain messages to the Luxembourg branch of a swedish bank. I don't know where you live, but at least in Europe this standard seems somewhat broadly adopted.

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

#29

How about receive payment notification via webhook ? Is there standard ?

Thanks for asking revskill, payment notifications are actually a different payment file, called a Payment Status Report file (pain.002). This is the industry standard

Instead of webhooks, a developer would poll an SFTP directory for an unique PSR file to ingest. Eventually, iso20022.js should support ingesting PSR files and provide an interface for using them.

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

#30

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…

This is one place where interop between JS and TS gets prickly. If you envision this as a Typescript library, strings are much more ergonomic, so long as you’ve got a union type for all the variants. But if you want it to be decent for non-TS, you pretty much have to concede that compromise and use an enum/object.

Note how this is a typescript project and leverages a type for currency that comes from a common library, and therefore doesn’t have to do any of the work! https://github.com/Svapnil/iso20022.js/blob/main/src/lib/typ...

Post reply on HN