This project is a Spring Boot application that integrates the Stripe payment processing service to manage customer data upon user signup. It leverages the Temporal Workflow Engine for orchestrating business logic.
- Clone the repository from GitHub.
- Navigate to the project directory.
- Run the setup commands (provide the specific commands here).
This application integrates the Stripe Create Customer API to create a new customer in Stripe upon a new user signup. The Stripe SDK is used for this purpose. The process is managed by a workflow implemented using the Temporal Workflow Engine.
The user model includes a providerType
field with an enum type with the value stripe
, and a providerId
field to store the generated Stripe customer ID. The application controller has been updated to handle these new fields and ensure that the providerId
is generated and stored correctly during the user signup process.
A GET /accounts endpoint is implemented to verify the integration and functionality of the changes.
Tests have been written for the Stripe integration and the new fields in the user model, as well as integration tests that cover the signup process and the GET /accounts endpoint functionality.