genkgo / camt

PHP Parser for CAMT messages
MIT License
81 stars 68 forks source link

Add new standard as not supported in Readme #124

Closed sdespont closed 1 year ago

sdespont commented 1 year ago

New standards 2022 are not supported by the library

image

https://www.six-group.com/dam/download/banking-services/interbank-clearing/de/standardization/consultation/sps-2022-high-level-information-de.pdf

https://www.six-group.com/dam/download/banking-services/interbank-clearing/fr/standardization/consultation/sps-2022-high-level-information-fr.pdf

PowerKiKi commented 1 year ago

Thank you ! Have you see them actually in use somewhere already ?

sdespont commented 1 year ago

Yep, Raiffeisen permits to download both CAMT versions with details like "2009" version or "2019" which is crystal clear to the lambda end user...

PowerKiKi commented 1 year ago

I assume you saw specifically *.08 versions, and not the most recent *.10 versions ?

sdespont commented 1 year ago

You are right, users are trying to import .08 version because it seems more logical to download the 2019 version instead of the 2009 from the e-banking. BTW, I hate the version numbering using the spec year, so confusing.

sdespont commented 1 year ago

Version 2009 is still accepted until November 2024. It means that both versions will live together for 2 years. I don't know which approach is the best, but I would use a new major version 3 supporting both 2009 and 2019 version.

I don't have a look at the differences between these versions, but it should not be a lot.

sdespont commented 1 year ago

A print screen from Raiffeisen if you are interested in :

image

PowerKiKi commented 1 year ago

I expect to be able to support new versions side-by-side in minor release, as we already do for camt.054.001.02 and camt.054.001.04.

However, before starting to implement things, we should be sure which versions are actually in use in most of establishments. Only camt.054.001.08 ? or camt.054.001.10 as well ? and anything in-between ?

Let's try to complete this list when we come up with new info:

Who camt.054.001.04 camt.054.001.08 camt.054.001.10 Source
Raiffeisen ✔️ ✔️ https://github.com/genkgo/camt/pull/124#issuecomment-1380443559
PostFinance ✔️ ✔️ https://isotest.postfinance.ch/corporates/login?locale=fr
UBS ✔️ ✔️ https://ubs-paymentstandards.ch/#!simulationAccountNotification
...

But according to https://www.six-group.com/dam/download/banking-services/standardization/sps/ig-cash-management-sps2022-en.pdf, in "1 Introduction":

This version is based on the “ISO Maintenance Release 2019” (“camt” version .08) and the current EPC recommendations.

So implementing version 08 is clearly required and it is likely to be enough.

sdespont commented 1 year ago

Never heard about .10 versions. I would start by implementing .08 versions because it is the next target in Switzerland for next years.

Looking at delta guide excepts for ISR feature removal all the others options are added, and some are modified.

I don't know if it is important to implement all new the features. In my use case, details like "Legal Entity Identifier", "BIC of the financial institution as per ISO 9362", "Proxy" and so on are not relevant.

A first step would be to support "*.08" version without adding new features.

timyyo commented 1 year ago

Is there somewhere an overview existing which shows what has changed between camt.054.001.04 and camt.054.001.08? I'm feeling a bit lost when I'm checking those guidelines from six-group.

sdespont commented 1 year ago

@timyyo here is the delta guide : image

https://www.six-group.com/dam/download/banking-services/standardization/sps/ig-cash-management-delta-guide-sps2022-en.pdf

PowerKiKi commented 1 year ago

In addition to that, I'd diff both xsd files. Didn't try yet, but that might be easier to understand for a programmer :sweat_smile:

PowerKiKi commented 1 year ago

I created #126 for further discussions about adding support for camt.054.001.08. And if somebody want to attempt a PR...