Hamm – Secure Financial Ledger

Sep 2026

A secure financial ledger API using Spring Boot to handle transactional CRUD workflows with strict role-based access.

Hamm is the money-tracking part of a banking app. It keeps accounts, moves money between them, and records every move with double-entry bookkeeping. It runs on test data only.

Key features

  • A double-entry ledger, where every transfer is a debit and a credit
  • Atomic transfers with account locking, so balances stay consistent
  • JWT login with roles for customers, accountants, auditors, and admins
  • Swagger docs, plus tests against a real PostgreSQL with Testcontainers

Built with: Java, Spring Boot, Spring Security, JWT, Spring Data JPA, PostgreSQL, Docker, GitHub Actions

Code: github.com/marlware/hamm