Cuponomia Microservices

Coupon management and checkout validation, split into event-driven services.

A Java and Spring Boot portfolio project demonstrating independent databases, Kafka event propagation, domain rules, local projections, Swagger examples, and reviewer-friendly documentation.

Target URL: cuponomia.maxsueleinstein.dev

01

Management API

Create, list, inspect, and deactivate coupons. The service owns the source of truth and publishes coupon change events.

POST /api/v1/coupons
02

Validation API

Applies coupons during checkout using its own local projection, keeping the checkout path isolated from management writes.

POST /api/v1/checkout/apply-coupon
03

Reviewer Flow

Run the stack locally, open each service root URL, follow the Swagger examples, and test success plus failure scenarios.

MAX50 / EXPIRADO20 / INATIVO30

Demo path

What to test first

  1. Start the stack with docker compose up --build.
  2. Open management Swagger at http://localhost:8081/.
  3. Open validation Swagger at http://localhost:8082/.
  4. Apply the seeded coupon MAX50 with order total 16000.00.