feat: ( payment ) create payment microservice

This commit is contained in:
Abubeker Yasin
2026-06-11 15:25:24 +03:00
parent 3235567b41
commit 2b430f8e76
54 changed files with 2809 additions and 0 deletions

View File

@@ -0,0 +1,51 @@
import { Module } from "@nestjs/common";
import { ConfigModule, ConfigService } from "@nestjs/config";
import { ScheduleModule } from "@nestjs/schedule";
import { TypeOrmModule, TypeOrmModuleOptions } from "@nestjs/typeorm";
import appConfig from "./config/app.config";
import databaseConfig from "./config/database.config";
import notifierConfig from "./config/notifier.config";
import telebirrConfig from "./config/telebirr.config";
import waafiConfig from "./config/waafi.config";
import cbeConfig from "./config/cbe.config";
import ebirrConfig from "./config/ebirr.config";
import cardConfig from "./config/card.config";
import dmoneyConfig from "./config/dmoney.config";
import { HealthModule } from "./modules/health/health.module";
import { IntentsModule } from "./modules/intents/intents.module";
import { OutboxModule } from "./modules/outbox/outbox.module";
import { ProvidersModule } from "./modules/providers/providers.module";
import { ReconciliationModule } from "./modules/reconciliation/reconciliation.module";
import { WebhooksModule } from "./modules/webhooks/webhooks.module";
@Module({
imports: [
ConfigModule.forRoot({
isGlobal: true,
load: [
appConfig,
databaseConfig,
notifierConfig,
telebirrConfig,
waafiConfig,
cbeConfig,
ebirrConfig,
cardConfig,
dmoneyConfig,
],
}),
TypeOrmModule.forRootAsync({
inject: [ConfigService],
useFactory: (config: ConfigService) =>
config.get<TypeOrmModuleOptions>("database") as TypeOrmModuleOptions,
}),
ScheduleModule.forRoot(),
HealthModule,
ProvidersModule,
IntentsModule,
WebhooksModule,
OutboxModule,
ReconciliationModule,
],
})
export class AppModule {}