{"id":25762018,"url":"https://github.com/dung24-6/go-pay-gate","last_synced_at":"2026-02-23T22:09:42.084Z","repository":{"id":277187008,"uuid":"931616949","full_name":"Dung24-6/go-pay-gate","owner":"Dung24-6","description":"Go Payment gateways","archived":false,"fork":false,"pushed_at":"2025-02-26T14:41:30.000Z","size":31,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-26T15:37:47.334Z","etag":null,"topics":["aws","docker","golang","kafka","redis","sql"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dung24-6.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-02-12T15:22:34.000Z","updated_at":"2025-02-26T14:41:33.000Z","dependencies_parsed_at":"2025-02-12T16:41:02.383Z","dependency_job_id":null,"html_url":"https://github.com/Dung24-6/go-pay-gate","commit_stats":null,"previous_names":["dung24-6/go-pay-gate"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dung24-6%2Fgo-pay-gate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dung24-6%2Fgo-pay-gate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dung24-6%2Fgo-pay-gate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dung24-6%2Fgo-pay-gate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dung24-6","download_url":"https://codeload.github.com/Dung24-6/go-pay-gate/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240920131,"owners_count":19878737,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","docker","golang","kafka","redis","sql"],"created_at":"2025-02-26T19:27:25.053Z","updated_at":"2026-02-23T22:09:42.056Z","avatar_url":"https://github.com/Dung24-6.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Go Pay Gate\n\n![GitHub Repo stars](https://img.shields.io/github/stars/Dung24-6/go-pay-gate?style=flat)\n![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/Dung24-6/go-pay-gate)\n\n# Features\n\n- Simple, consistent API for multiple payment providers\n- Built-in support for popular payment gateways:\n  - **VNPay**\n  - **Momo**\n  - **ZaloPay**\n- Concurrent processing with goroutines\n- Configurable retries and timeouts\n- Transaction logging and monitoring\n- Easy to extend for new payment providers\n\n## Installation\n\n```bash\ngo get github.com/Dung24-6/go-pay-gate\n```\n\n## Quick Start\n\n```go\npackage main\n\nimport (\n    \"context\"\n    \"log\"\n    \"github.com/Dung24-6/go-pay-gate/pkg/gateway\"\n)\n\nfunc main() {\n    // Initialize VNPay gateway\n    vnpay := gateway.NewVNPay(\u0026gateway.Config{\n        MerchantID:  \"your-merchant-id\",\n        ApiKey:      \"your-api-key\",\n        Environment: gateway.EnvSandbox,\n    })\n\n    // Create payment request\n    req := \u0026gateway.PaymentRequest{\n        Amount:      100000,\n        OrderID:     \"order-123\",\n        Description: \"Test payment\",\n    }\n\n    // Process payment\n    resp, err := vnpay.CreatePayment(context.Background(), req)\n    if err != nil {\n        log.Fatal(err)\n    }\n\n    log.Printf(\"Payment URL: %s\", resp.PaymentURL)\n}\n```\n\n## Configuration\n\nCreate `config.yaml`:\n\n```yaml\nserver:\n  port: \":${SERVER_PORT}\"\n  grpcPort: \":${GRPC_PORT\"\n  environment: \"development\"\n  writeTimeout: \"10s\"\n\ndatabase:\n  host: \"localhost\"\n  port: \"${DB_SQL_PORT}\"\n  user: \"${DB_SQL_USER}\"\n  password: \"${DB_SQL_PASSWORD}\"\n  dbname: \"${DB_SQL_NAME}\"\n  maxOpenConns: 100\n  maxIdleConns: 10\n  connMaxLifetime: \"1h\"\n\nredis:\n  host: \"localhost\"\n  port: \"${DB_REDIS_PORT}\"\n  password: ${DB_REDIS_PASSWORD}\n  db: 0\n  poolSize: 100\n  minIdleConns: 10\n  maxRetries: 3\n\naws:\n  region: \"ap-southeast-1\"\n  accessKeyID: \"\"\n  secretAccessKey: \"\"\n  sessionToken: \"\"\n  s3Bucket: ${DB_AWS}\n  sqsQueueURL: \"\"\n  snsTopicARN: \"\"\n\nkafka:\n  brokers:\n    - \"localhost:${DB_KAFKA_PORT}\"\n  topic: \"${DB_KAFKA_TOPIC}\"\n  consumerGroup: \"${KAFKA_GROUP}\"\n  maxMessageBytes: 1048576  # 1MB\n  writeTimeout: \"10s\"\n```\n\n## Documentation\n\nFor detailed documentation and examples, please visit our documentation.\n\n## Supported Payment Providers\n\n- **VNPay**\n- **Momo**\n- **ZaloPay** *(coming soon)*\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n1. Fork the repository\n2. Create your feature branch:\n   ```bash\n   git checkout -b feature/amazing-feature\n   ```\n3. Commit your changes:\n   ```bash\n   git commit -m 'Add some amazing feature'\n   ```\n4. Push to the branch:\n   ```bash\n   git push origin feature/amazing-feature\n   ```\n5. Open a Pull Request\n\n## Development\n\n### Requirements\n\n- Go 1.22+\n- Docker \u0026 Docker Compose\n- MySQL\n- Redis\n\n### Setup development environment\n\n```bash\n# Clone repository\ngit clone https://github.com/Dung24-6/go-pay-gate.git\n\n# Start dependencies\ndocker-compose up -d\n\n# Run tests\ngo test ./...\n\n# Run server\ngo run cmd/server/main.go\n```\n\n## Tech Stack\n- **Go**\n- **Gin**\n- **GORM**\n- **SQL**\n- **Redis**\n- **Docker**\n- **Aws**\n- **Kafka**\n\n\n\n## Authors\n\n- [@Dung24-6](https://github.com/Dung24-6)\n\n## 🚀 About us\nWe are software engineer\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdung24-6%2Fgo-pay-gate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdung24-6%2Fgo-pay-gate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdung24-6%2Fgo-pay-gate/lists"}