The Czech bank MONETA Money Bank lets its business clients, sole traders included, use its API for free: an application reads their accounts and transactions, and can enter payments, with a token they issue in Internet Banka. No PSD2 licence is needed.
This is a client for that API, MONETA API, for Java 21+ and Kotlin projects, with a Spring Boot starter, a Play Framework module, a Micronaut module and a Quarkus extension. It reads accounts and transactions so far; payments are not covered yet. Its only dependencies are Jackson and JSpecify.
Checked against the live API, see how it behaves. Published on GitHub Packages, not Maven Central.
| Read | For |
|---|---|
| Installing | the artifacts on GitHub Packages, for Gradle and Maven |
| Getting access | who can use MONETA API, the merchant's token, the developer portal |
| Using the client | accounts, transactions, money, symbols, failures |
| Spring Boot starter | moneta.* in application.yml, a MonetaClient bean |
| Play Framework module | moneta.* in application.conf, an injected MonetaClient |
| Micronaut module | the same moneta.*, a MonetaClient bean |
| Quarkus extension | quarkus.moneta.*, a MonetaClient bean, JVM and native |
| Kotlin and Spring Boot | what a Kotlin caller gets, the one fix Spring Boot 3 before 3.5.13 needs, and native images |
| How MONETA API behaves | what to watch out for: pending and booked movements, dates, ids, errors |
| Roadmap | the working plan: what is still unknown, what comes next, what is not covered |
| Development | build, tests, make dev against a real account |
| Example café | bills as QR payments, found paid; try it at http://localhost:8080/scalar after make dev |
| llms.txt | the setup and the mistakes to avoid, for a coding assistant adding the library to a project |
What MONETA API offers, per its portal, against what this client implements:
| Feature | MONETA API | This client |
|---|---|---|
| Accounts the token sees | ✅ | ✅ |
| Transactions, pending and booked | ✅ | ✅ |
| Card transactions | ✅ | in the transaction list, method(); not their own endpoint |
| Balances | ✅ | ✅ |
| When a token expires | ✅ | ✅ |
| Pending card transactions | ✅ | ⬜ |
| Electronic statements | ✅ | ⬜ |
| Overview of payment orders | ✅ | ⬜ |
| Overview of standing orders | ✅ | ⬜ |
| CZK payment orders, bulk included | ✅ | ⬜ |
| Spring Boot auto-configuration | — | ✅ |
| Play Framework module | — | ✅ |
| Micronaut module | — | ✅ |
| Quarkus extension | — | ✅ |
| GraalVM native image | — | ✅ |
Licence: Apache 2.0