From ec2f1c26b131f8c9a1b262942dbcf6b9696a4049 Mon Sep 17 00:00:00 2001 From: Engincan VESKE Date: Mon, 22 Jun 2026 17:51:21 +0300 Subject: [PATCH] Document payment module setup --- modules/payment/README.md | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/modules/payment/README.md b/modules/payment/README.md index 6ea8fd4..496b354 100644 --- a/modules/payment/README.md +++ b/modules/payment/README.md @@ -1,14 +1,48 @@ # Payment Module -Payment module provides an API to make payments via using PayPal easily. +The Payment module provides reusable APIs and UI integration for creating payment requests and completing PayPal checkout flows. EventHub uses it from the public web application to sell premium organization plans and receive payment completion/failure events. +## Module structure +* `src/Payment.Domain.Shared`: Constants, localization, permissions, and shared contracts. +* `src/Payment.Domain`: Payment request domain model and domain services. +* `src/Payment.Application.Contracts`: Application service contracts and DTOs. +* `src/Payment.Application`: Payment request application services and PayPal integration logic. +* `src/Payment.HttpApi`: Public HTTP API endpoints. +* `src/Payment.Web`: MVC/Razor Pages UI integration for checkout pages. +* `src/Payment.Admin.*`: Admin application services, HTTP APIs, HTTP API clients, and Blazor admin UI. +* `src/Payment.EntityFrameworkCore`: EF Core mapping for payment entities. ## Installation -TODO +This module is already included in the EventHub solution and is initialized by the root solution tasks. +When opening the solution in ABP Studio, run or allow the **Initialize Solution** task from the **Default** run profile. It starts PostgreSQL/Redis, runs `abp install-libs`, and executes `EventHub.DbMigrator`, which applies the EventHub migrations that include this module's tables. +For manual setup from the repository root: + +```powershell +./scripts/initialize-solution.ps1 +``` + +Or run the individual steps: + +```powershell +./etc/docker/up.ps1 +abp install-libs +dotnet run --project src/EventHub.DbMigrator/EventHub.DbMigrator.csproj +``` + +The payment module does not have a separate standalone database in this solution; its EF Core mappings are part of the main EventHub database context. + +## ABP documentation + +* [Modularity](https://abp.io/docs/latest/framework/architecture/modularity/basics) +* [Application services](https://abp.io/docs/latest/framework/architecture/domain-driven-design/application-services) +* [HTTP APIs](https://abp.io/docs/latest/framework/api-development/auto-controllers) +* [MVC / Razor Pages UI](https://abp.io/docs/latest/framework/ui/mvc-razor-pages) +* [Blazor UI](https://abp.io/docs/latest/framework/ui/blazor) +* [Distributed event bus](https://abp.io/docs/latest/framework/infrastructure/event-bus/distributed) ## Usage