Wraps ebics-cli into REST calls to access Ebics/ISO20022 banking interfaces.
2.1K
This project connects with your bank account using Ebics standard. The project wraps a java-based command-line tool into a REST service and add features like cron and webhooks.
Setting it up successfully means, that you can
docker run -p 8093:8093 e36io/ebics-service
Open Swagger in your
browser and test the simulate service. For other APIs you need to set up and connect to your
banks Ebics API.
Development mode is default. Ebics-java-client does not connect to your bank but ebics documents and commands get logged.
docker run -v $HOME/ebics./root/ebics -p 8093:8093 e36io/ebics-service
Production mode (Spring prod profile) requires Ebics to be set up.
:warning: This may trigger real payments from your bank account!
docker run -v $HOME/ebics:/root/ebics --env spring.profiles.active=prod -p 8093:8093 e36io/ebics-service
Again, open Open Swagger
to test the API. All Ebics documents which are exchanged with the bank are stored in HOME/ebics/client.
Ebics (Electronic Banking Internet Communication Standard) defines the protocol and a series of document to access and exchange banking data. You need to talk to your bank first and request to provide access to the Ebics interface. Alternatively you can ask about ISO20022 or an interface to transfer Camt.053 and Pain.001 or Pain.002 files, which should be well known among banks. Most banks offer the service for free.
A crucial part to understand of Ebics is the key-exchange- roughly it works like this:
$HOME/ebics/client/ebics.txt see ebics-template.txtCheck HOWTO for technical instructions how to set up the Ebics interface with your bank.
Ebics standard was initiated by banks German/French partnership later adopted by Austria and Switzerland and by Banks across Europe. You will find many bank supporting Ebics, a general list of all banks supporting Ebics was not found.
There are national flavours regarding the data on bank transfers and bank statements, which are represented by national changes of the original Ebics XML documents. For example Switzerland:
ebics-java-client library.A national overview and selection of test interfaces for Ebics and test environments in Switzerland:
| Bank | URL for testing/validating | more info |
|---|---|---|
| SIX Group | validation | Url |
| Credit Suisse | test-API | help |
| PostFinance | register | |
| Raiffeisen | test-API | |
| UBS | register | info |
| ZKB | test-platform | help |
Non-exhaustive examples of European banks providing Ebics information:
The setup process does not need to be adapted. Anyway you might need to adapt to local flavour of your
country or your bank if they support different Ebics commands or have national modifications of their
Ebics XML documents. This can be done in the io.element36.cash36.ebics.strategy.* package. Examples:
io.element36.cash36.ebics.strategy.implStatementCamt53_001 for
mapping of daily statements to Json Response.org.kopi.ebics.interfaces.OrderType which hold commands available at the command line but
which are also directly transferred to the Ebics server as commands. Look for national mapping tables if you face this issue. E.g.
Switzerland
and Austriabuild.gradle and generateSourcesForXsd.You may check out www.ebics.ch, www.ebics.de. www.ebics.at, www.ebics.org.
Run & check tests TEST.md.
Content type
Image
Digest
Size
155 MB
Last updated
about 5 years ago
docker pull e36io/ebics-service