Transaction Manager Service

 Component basics

Title

Transaction Manager

Description

The transaction manager microservice hosts all the transactions that are processed by the Zeus Enrollment Platform. It receives the transaction detail from Data Transformation service. When the transaction is received by the transaction manager it already transformed in a form that is ready to be consumed and processed (i.e. all the reference data are converted to internal reference data that is understood by the services in Zeus Enrollment Platform)

The primary objectives of this service are

  1. House all the transactions received to be processed in Zeus Enrollment Platform

  2. Perform validations on the transaction data to identify any data issues before the transaction can be processed (This is done by sending the transaction to validation service)

  3. Determine if an account already exists for the member(s) present in the transaction.

  4. Store any exceptions that occur during the processing of the transaction.

  5. Pass the transaction information on to Account Processor Service

This service will also expose APIs that will be used by the Zeus API Gateway service which will then be exposed in the User Interface for the users to interact with the transaction data and to manage exceptions on the transaction.

Anatomy diagram

 

Key to anatomy diagram

  1.  

  2.  

 

 Specifications

Microservice Tech Stack

The microservice is build in Java 17.0, with Spring 6.0 Framework and Spring Boot 3.0

Microservice Tech Stack

The microservice is build in Java 17.0, with Spring 6.0 Framework and Spring Boot 3.0

Database

For local the MySQL database is used.

For Docker the MariaDB is configured to be used.

For Unit Testing, H2 database is used.

Messaging Service

Kafka is used for asynchronous communication between Account Processor and other services

Style

  •  

 

 Additional guidance

Content

  •  

Content

  •  

Accessibility

  •  

Mobile

  •  

Best practices

  •  

Related

  •