Skip to content

Conversation

@sumbricht
Copy link

@sumbricht sumbricht commented Aug 27, 2025

Implementation of H005 schema for EBICS 3.0. Fixes #9, fixes #98, fixes #100, fixes #30, fixes #25

Here's a summary of the changes that should help what changed and why:

  • Addition of H005 files wherever there were H004 files before (serializers, signers, order types, test cases, XSDs, ...)
    • Orders are now exported as OrdersH004 and Orders (for backwards compability, but deprecated).
    • In addition OrdersH005 is exported
    • Predefined orders for H004 and XSDs were moved to a separate H004 folder but didn't change in content
  • Key management
    • Keys don't contain an isPublic property anymore but rather a type which can be 'public', 'private' or 'certificate'.
    • For H004, everything still works as before
    • For H005, we no longer receive bank public keys in the HPB transaction but rather certificates. These are also stored in PEM format. Certificates for the subscriber's private keys are automatically generated when reading the private key
  • Client output:
  • TypeScript types
    • As I have a strong preference for TypeScript, I have added types for the public interface of the library, including the Client, BankLetter and all orders (H004 and H005)
  • Test cases have been updated to still work for H004 and also cover H005

I'm happy for any suggestions

@sumbricht sumbricht force-pushed the 9-implement-ebics-3.0 branch 3 times, most recently from 8f2e0c2 to bbf8928 Compare August 28, 2025 13:46
@sumbricht sumbricht force-pushed the 9-implement-ebics-3.0 branch from bbf8928 to 20bf8d1 Compare August 28, 2025 14:32
@sumbricht sumbricht marked this pull request as ready for review August 28, 2025 14:36
@sumbricht
Copy link
Author

Alright, EBICS 3.0 is working and ready to be reviewed. @nanov

Note: The EBICS test enviornment of CreditSuisse seems to be dead. The one of ZKB has some flaws where pain.001 uploads submitted via EBICS 3.0 are accepted (both error codes 000000) but neither listed on their UI nor returned via camt.052/053. I talked to ZKB and they seemed to know / not to care too much since it's only a test platform. They suggested I just test in PROD :-).

The test platform of PostFinance is working fine though. Maybe someone with access to a French platform could also verify that it works on those?

@bvisible
Copy link

Alright, EBICS 3.0 is working and ready to be reviewed. @nanov

Note: The EBICS test enviornment of CreditSuisse seems to be dead. The one of ZKB has some flaws where pain.001 uploads submitted via EBICS 3.0 are accepted (both error codes 000000) but neither listed on their UI nor returned via camt.052/053. I talked to ZKB and they seemed to know / not to care too much since it's only a test platform. They suggested I just test in PROD :-).

The test platform of PostFinance is working fine though. Maybe someone with access to a French platform could also verify that it works on those?

Thanks for the update! 🙌
We are currently running tests with Credit Suisse, PostFinance, and Raiffeisen.

@sumbricht
Copy link
Author

@bvisible, what does your testing reveal so far? Have you found anything missing or not working?
@nanov, are you or potentially another maintainer able to review?

@bvisible
Copy link

bvisible commented Sep 8, 2025

@bvisible, what does your testing reveal so far? Have you found anything missing or not working?

@sumbricht Not yet, we are in contact with Raiffeisen because we have a problem with their EBICS 3.0 BTU. I will keep you informed.

@sumbricht
Copy link
Author

@bvisible, @nanov, FYI, I'm also implementing H3K for CA-certificate-based initialization instead of using INI and HIA. It should be working already but I'll wait with integrating that until we have had a successful run against production.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Missing business/technical codes in upload output IV is not used to decrypt key Typescript support Add X.509 support Ebics 3.0 compatible ?

2 participants