monolith-payment-gateway-pkg

module
v1.0.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 10, 2025 License: MIT

README

PKG

This repository contains reusable utilities, modules, and helpers designed to support a monolith-based architecture for a Digital Payment platform. These components are used across various services such as Auth, User, Merchant, Topup, Withdraw, and etc.

.
├── api-key # API Key generation and validation
│   ├── apikey.go
│   ├── apikey_test.go
│   └── README.md
├── auth # JWT token service and mocks
│   ├── mocks
│   │   └── token.go
│   ├── README.md
│   ├── token.go
│   └── token_test.go
├── coverage.out
├── coverage.txt
├── database # SQL queries, schemas (SQLC), seeders
│   ├── connect.go
│   ├── query
│   │   ├── card.sql
│   │   ├── merchant_document.sql
│   │   ├── merchant.sql
│   │   ├── README.md
│   │   ├── refresh_token.sql
│   │   ├── reset_token.sql
│   │   ├── role.sql
│   │   ├── saldo.sql
│   │   ├── topup.sql
│   │   ├── transaction.sql
│   │   ├── transfer.sql
│   │   ├── user_role.sql
│   │   ├── user.sql
│   │   └── withdraw.sql
│   ├── README.md
│   ├── schema
│   │   ├── card.sql.go
│   │   ├── db.go
│   │   ├── merchant_document.sql.go
│   │   ├── merchant.sql.go
│   │   ├── models.go
│   │   ├── querier.go
│   │   ├── README.md
│   │   ├── refresh_token.sql.go
│   │   ├── reset_token.sql.go
│   │   ├── role.sql.go
│   │   ├── saldo.sql.go
│   │   ├── topup.sql.go
│   │   ├── transaction.sql.go
│   │   ├── transfer.sql.go
│   │   ├── user_role.sql.go
│   │   ├── user.sql.go
│   │   └── withdraw.sql.go
│   └── seeder 
│       ├── card.go
│       ├── merchant.go
│       ├── README.md
│       ├── role.go
│       ├── saldo.go
│       ├── seed.go
│       ├── topup.go
│       ├── transaction.go
│       ├── transfer.go
│       ├── user.go
│       └── withdraw.go
├── date  # Date parsing and formatting utilities
│   ├── date.go
│   ├── date_test.go
│   └── README.md
├── dotenv  # Environment variable loader
│   ├── dotenv.go
│   └── README.md
├── email  # Email template
│   ├── email.go 
│   └── README.md
├── go.mod
├── go.sum
├── hash  # Password hashing and comparison (bcrypt)
│   ├── hash.go
│   ├── hash_test.go
│   ├── mocks
│   │   └── hash.go
│   └── README.md
├── kafka # Kafka producer/consumer wrappers
│   ├── kafka.go
│   ├── kafka_mocks.go
│   ├── kafka_test.go
│   └── README.md
├── LICENSE
├── logger  # Zap-based logging with mock support
│   ├── logger.go
│   ├── logger_test.go
│   ├── logs
│   │   └── testservice.log
│   ├── mocks
│   │   └── logger.go
│   └── README.md
├── Makefile
├── method_topup # Top-up method validate
│   ├── method.go
│   ├── method_test.go
│   └── README.md
├── otel # OpenTelemetry observability tools
│   ├── otel.go
│   ├── otel_test.go
│   └── README.md
├── random_string # Random string generator
│   ├── random_string.go
│   ├── random_string_test.go
│   └── README.md
├── randomvcc # Random virtual card number generator
│   ├── random.go 
│   ├── random_test.go
│   └── README.md
├── README.md
├── rupiah # Rupiah currency formatter
│   ├── README.md
│   ├── rupiah.go
│   └── rupiah_test.go
└── trace_unic # Unique transaction code tracer
    ├── README.md
    ├── trace_kode_unik.go
    └── trace_kode_unik_test.go

Purpose

The pkg/ directory serves as a central location for common components and utilities used across the system. It provides a structured and organized way to group related code, promoting code reusability and maintainability.

Directories

Path Synopsis
mocks
Package mock_auth is a generated GoMock package.
Package mock_auth is a generated GoMock package.
mocks
Package mock_hash is a generated GoMock package.
Package mock_hash is a generated GoMock package.
mocks
Package mock_logger is a generated GoMock package.
Package mock_logger is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL