andrew-svirin / ebics-client-php

PHP library to make requests by EBICS protocol for financial establishments.
https://andrew-svirin.github.io/ebics-client-php/
MIT License
43 stars 31 forks source link

implementation for schema namespace definition like SDD #188

Closed linushstge closed 8 months ago

linushstge commented 8 months ago

Harmonization of the Document Builder to support custom schema namespaces

Breaking change

$schema attribute added for CCT and CIP (like in CustomerDirectDebitBuilder.php)

This change harmonize all transaction builders to support the schema attribute for all order types as already implemented in SDD

Additional changes

linushstge commented 8 months ago

Hey @andrew-svirin, in your commit 1692d4d5 you implemented the $schema variable as first method parameter, which breaks the default behaviour of this library and requires changes to all implementations.

In my opinion, we should move the $schema attribute to the last parameter, with a default value urn:iso:std:iso:20022:tech:xsd:pain.001.001.03 for CCT and CIP and urn:iso:std:iso:20022:tech:xsd:pain.008.001.02 for SDD.

This wouldn't result in another breaking change, and also doesn't require setting the schema namespace by each user.

If you agree with that, I'm happy to change this behaviour as in this comment suggested instead of harmonizing the CCT and CIP builders.

Let me know your opinion.

andrew-svirin commented 8 months ago

@linushstge I have little bit updated pull request. Do not know how to add one more commit to current pull request, so created a new one - https://github.com/andrew-svirin/ebics-client-php/pull/189/commits

Check it if it that what you intend to add.