asepharyana 9214b32139 feat(dimentorin): Midtrans payment provider (sandbox VA + QRIS)
- Env: MIDTRANS_MERCHANT_ID / CLIENT_KEY / SERVER_KEY (masked in Debug)
- midtrans_provider: Core API v2/charge for bank_transfer (VA BCA) and qris (gopay)
- PaymentServiceImpl: when MIDTRANS_MERCHANT_ID set -> provider=midtrans, external_ref = real VA number / QR string; falls back to manual refs otherwise
- SMTP: Google app password working (send-otp 200, OTP stored)
- E2E verified (sandbox): VA externalRef=47329093597744219189188, QRIS qr_string EMVCo, confirm->paid
- Credentials stored in BWS (dimentorin_midtrans_*, dimentorin_smtp_*)
2026-08-05 13:34:59 +07:00
2025-12-01 00:20:42 +07:00
2025-12-01 00:20:42 +07:00
2025-12-01 00:20:42 +07:00
2025-12-01 00:20:42 +07:00
2025-12-01 00:20:42 +07:00
2025-12-01 00:20:42 +07:00
2025-12-01 00:20:42 +07:00
2025-12-01 00:20:42 +07:00

IMPHNEN Backend Service

IMPHNEN

This repository serves as the monorepo for all backend services of IMPHNEN. It encompasses several main services:

  1. IMPHNEN-Backend - Provides fundamental functionalities and shared resources for other services.
  2. IMPHNEN-IAM - Handles identity and access management across IMPHNEN applications.
  3. IMPHNEN-CMS - Supports the cms services by IMPHNEN Landing Page website.
  4. IMPHNEN-Gacha - Supports the gacha services by IMPHNEN Gacha website.
  5. IMPHNEN-Dimentorin - Supports the mentoring services by IMPHNEN Dimentorin website.
  6. IMPHNEN-Gateway - Acts as the API gateway, routing requests to appropriate services.
  7. IMPHNEN-Middleware - Acts as the middleware for the API Gateway, providing authentication and authorization.

How to Install

  1. Clone the repository:

    git clone https://github.com/IMPHNEN/imphnen-backend-service.git
    cd imphnen-backend-service
    
  2. Set up the environment:

    • Copy the example environment files:

      cp .env.example .env
      

      if you use windows based system

      ./apply-env.ps1
      

      if you use unix based system

      source ./apply-env.sh
      
    • Modify the .env files with your specific configuration settings.

  3. Install dependencies:

    Ensure you have Rust installed. Then, run:

    cargo fetch
    
  4. Run the seeders:

    to run the seeders, run:

    cargo run --bin seeder
    

How to Run

Development

To run the services in development mode:

  1. Start the database and other dependencies using Docker Compose:

    docker-compose up -d
    
  2. Run using cargo run. For example, to run the Core Service:

    cargo run --bin api
    
  3. Run using cargo watch. For example, to run the Core Service:

    cargo watch -x "run --bin api"
    

Production

For production deployment:

  1. Build the Docker image:

    docker build -t imphnen-backend .
    
  2. Run the Docker container:

    docker run --name imphnen-backend -d --env-file .env -p 3000:3000 imphnen-backend
    

    Adjust the port and environment variables as needed.

How to Run the Tests

  1. Run the tests:

    cargo test -p tests
    

How to Contribute

  1. Fork the repository and clone it locally.

  2. Create a new branch for your feature or fix:

    git checkout -b feat/your-feature-name
    
  3. Make your changes, commit them, and push to your forked repository.

  4. Create a pull request to the develop branch of this repository.

If you encounter any issues or have questions, feel free to create a new issue in the repository.


Note: For detailed API documentation, please refer to our API Docs.

S
Description
Fork of IMPHNEN/imphnen-backend-service (mirror)
Readme
2.7 MiB
Languages
Rust 97%
Nix 2%
PowerShell 0.4%
Shell 0.4%
Dockerfile 0.2%