As a result, we now have five microservices catering to the checkout process:
ShoppingCartApi – Exposes the /checkout endpoint to UI client and triggers checkout process
StockValidatorService – Validates the availability of stocks for all the line items
TaxCalculatorService – Calculates the tax based online items and customer address
PaymentProcessingService – Processes the payment based on the credit card details, line items, and calculated tax
ReceptGeneratorService – Generates and saves the receipt for the purchase. Also, responsible for email communication with the customer