Mora
🚀

Bank_system_simple

BuildingProvenOpen SourceFinance

A secure Banking API built with Java, Spring Boot, and PostgreSQL. Layered architecture, ACID transactions, & enterprise

Visit site

README

Banking API

A secure, production-ready Banking API built with Java and Spring Boot. Designed with enterprise architecture in mind — layered structure, ACID transactions, and a focus on data integrity.


🏗️ Architecture

This project follows a Layered Architecture (Controller → Service → Repository → Entity).


✨ Features

Core Banking

  • Customer Management — Register, login, update profile, change password
  • Account Management — Open, view, update status, close accounts
  • Transactions — Deposit, withdraw, transfer, view history
  • Data Integrity — ACID transactions using @Transactional
  • Money Precision — BigDecimal for all monetary values

Architecture & Design

  • Layered Architecture — Clean separation of concerns
  • DTOs & Mappers — Entity ↔ DTO conversion
  • Exception Handling — Global handler with custom exceptions
  • Validation — @Valid, @NotBlank, @Email, @Size
  • Pagination — Pageable on all list endpoints
  • Custom IDs — customerCode, accountCode, transactionCode (non-guessable)

🛠️ Tech Stack

Layer Technology
Language Java 17
Framework Spring Boot 3.x
Security Spring Security + JWT
Database PostgreSQL
ORM JPA / Hibernate
Build Maven
Version Control Git

📌 Status

🚧 In Development — Core features are built. Security and deployment are next.


Built with Java, Spring Boot, and PostgreSQL. MIT License

Journey

Building a dev tool or hiring developers? Get seen here. Become our Sponsor

Stays free because of
  • rodge-dev
  • Kaihzan-Nixxo C. Jamilla
  • JB Benedicto
  • King Salomon
  • Nico Alumbro
  • Lewis John Villamor
  • Ruri
  • wacxv
  • Carlo Dandan
  • Mon Albert Gamil
  • RCastromero()
  • Ian de Jesus
  • exciar
  • <JRJDev>
  • Joowd
  • John Javier R. Idmilao
  • Lixter Niño D. Dinawanao
  • Michael William Mesina
  • Benson
  • euphydev
  • </Peter> "21st Dev Vinci"
  • UrAvgProgrammer
  • Doctor Scoliosis
  • rodge-dev
  • Kaihzan-Nixxo C. Jamilla
  • JB Benedicto
  • King Salomon
  • Nico Alumbro
  • Lewis John Villamor
  • Ruri
  • wacxv
  • Carlo Dandan
  • Mon Albert Gamil
  • RCastromero()
  • Ian de Jesus
  • exciar
  • <JRJDev>
  • Joowd
  • John Javier R. Idmilao
  • Lixter Niño D. Dinawanao
  • Michael William Mesina
  • Benson
  • euphydev
  • </Peter> "21st Dev Vinci"
  • UrAvgProgrammer
  • Doctor Scoliosis
Join them

Oct 6, 2026

Building a Banking API with Spring Boot and PostgreSQL. Focused on layered architecture, ACID transactions, and clean exception handling. Security is next. Learning a lot about how real enterprise backends are structured.

Building a dev tool or hiring developers? Get seen here. Become our Sponsor

Stays free because of
  • Ian de Jesus
  • euphydev
  • Kaihzan-Nixxo C. Jamilla
  • RCastromero()
  • JB Benedicto
  • Mon Albert Gamil
  • King Salomon
  • Doctor Scoliosis
  • Nico Alumbro
  • Benson
  • Ruri
  • Lewis John Villamor
  • John Javier R. Idmilao
  • Carlo Dandan
  • rodge-dev
  • UrAvgProgrammer
  • Lixter Niño D. Dinawanao
  • </Peter> "21st Dev Vinci"
  • Joowd
  • Michael William Mesina
  • <JRJDev>
  • wacxv
  • exciar
  • Ian de Jesus
  • euphydev
  • Kaihzan-Nixxo C. Jamilla
  • RCastromero()
  • JB Benedicto
  • Mon Albert Gamil
  • King Salomon
  • Doctor Scoliosis
  • Nico Alumbro
  • Benson
  • Ruri
  • Lewis John Villamor
  • John Javier R. Idmilao
  • Carlo Dandan
  • rodge-dev
  • UrAvgProgrammer
  • Lixter Niño D. Dinawanao
  • </Peter> "21st Dev Vinci"
  • Joowd
  • Michael William Mesina
  • <JRJDev>
  • wacxv
  • exciar
Join them