diff --git a/apps/edr-passenger-api/.env.example b/apps/edr-passenger-api/.env.example index bee21ed65..9d10c2b00 100644 --- a/apps/edr-passenger-api/.env.example +++ b/apps/edr-passenger-api/.env.example @@ -18,6 +18,12 @@ SENDGRID_API_KEY= SENDGRID_FROM_EMAIL=noreply@edr-platform.com # Telebirr -TELEBIRR_API_URL=https://api.telebirr.com -TELEBIRR_APP_ID= -TELEBIRR_APP_KEY= +TELEBIRR_BASE_URL= +TELEBIRR_WEB_BASE_URL= +TELEBIRR_FABRIC_APP_ID= +TELEBIRR_APP_SECRET= +TELEBIRR_MERCHANT_APP_ID= +TELEBIRR_MERCHANT_CODE= +TELEBIRR_NOTIFY_URL= +TELEBIRR_RETURN_URL= +TELEBIRR_TIMEOUT_EXPRESS=15m \ No newline at end of file diff --git a/apps/edr-passenger-api/src/app.module.ts b/apps/edr-passenger-api/src/app.module.ts index 5b594f16e..ddbe9a5c4 100644 --- a/apps/edr-passenger-api/src/app.module.ts +++ b/apps/edr-passenger-api/src/app.module.ts @@ -5,6 +5,7 @@ import { EventEmitterModule } from '@nestjs/event-emitter'; import { PrismaModule } from './common/prisma.module'; import appConfig from './config/app.config'; import dbConfig from './config/database.config'; +import telebirrConfig from './config/telebirr.config'; import { AuthModule } from './modules/auth/auth.module'; import { StationsModule } from './modules/stations/stations.module'; import { FleetModule } from './modules/fleet/fleet.module'; @@ -25,7 +26,7 @@ import { DashboardModule } from './modules/dashboard/dashboard.module'; @Module({ imports: [ - ConfigModule.forRoot({ isGlobal: true, load: [appConfig, dbConfig] }), + ConfigModule.forRoot({ isGlobal: true, load: [appConfig, dbConfig, telebirrConfig] }), ScheduleModule.forRoot(), EventEmitterModule.forRoot(), PrismaModule, diff --git a/apps/edr-passenger-api/src/config/telebirr.config.ts b/apps/edr-passenger-api/src/config/telebirr.config.ts new file mode 100644 index 000000000..82b67b52d --- /dev/null +++ b/apps/edr-passenger-api/src/config/telebirr.config.ts @@ -0,0 +1,13 @@ +import { registerAs } from '@nestjs/config'; + +export default registerAs('telebirr', () => ({ + baseUrl: process.env.TELEBIRR_BASE_URL ?? '', + webBaseUrl: process.env.TELEBIRR_WEB_BASE_URL ?? '', + fabricAppId: process.env.TELEBIRR_FABRIC_APP_ID ?? '', + appSecret: process.env.TELEBIRR_APP_SECRET ?? '', + merchantAppId: process.env.TELEBIRR_MERCHANT_APP_ID ?? '', + merchantCode: process.env.TELEBIRR_MERCHANT_CODE ?? '', + notifyUrl: process.env.TELEBIRR_NOTIFY_URL ?? '', + returnUrl: process.env.TELEBIRR_RETURN_URL ?? '', + timeoutExpress: process.env.TELEBIRR_TIMEOUT_EXPRESS ?? '15m', +}));