Files
Pay2Gateway/README.md

4.4 KiB
Raw Blame History

🚀 Pay2Gateway: Hibrit Kripto & Geleneksel Ödeme Geçidi Altyapısı

Pay2Gateway, modern e-ticaret siteleri ve dijital platformlar için geliştirilmiş, Next.js 15 ve PostgreSQL tabanlı, hibrit bir ödeme geçidi (Payment Gateway) çözümüdür. Sistem, geleneksel ödeme sağlayıcılarını (Stripe vb.) on-chain kripto ödemeleriyle birleştirerek firmalara tam otomatik ve esnek bir tahsilat altyapısı sunar.


🌟 Öne Çıkan Özellikler

🛡️ Kurumsal API Yönetimi (v1)

  • API Key Yetkilendirme: Firmalar (Merchants) için sunucu taraflı güvenli erişim.
  • Checkout Sessions: Fiyat manipülasyonunu engelleyen, tek kullanımlık güvenli ödeme oturumları.
  • Gelişmiş Webhook'lar: Ödeme tamamlandığında veya süpürme (sweep) işlemi gerçekleştiğinde otomatik JSON bildirimleri.

⛓️ Çoklu Zincir (Multi-Chain) Desteği

  • EVM Desteği: Ethereum, Polygon ve BSC ağlarında işlem yapabilme.
  • Solana Desteği: SOL ve SPL tokenlar (USDC vb.) için tam entegrasyon.
  • Otomatik Süpürme (Auto-Sweep): Toplanan fonların ana platform cüzdanına saniyeler içinde otomatik olarak aktarılması.

💰 Dinamik Token & Fiyatlandırma

  • Top 20 Token: CoinMarketCap listesindeki en hacimli 20 kripto para birimi desteği.
  • Binance API Entegrasyonu: Gerçek zamanlı TRY/USD kuru ve token fiyat dönüşümleri.
  • Merkezi Konfigürasyon: lib/crypto-config.json üzerinden anında yeni ağ veya token ekleme kolaylığı.

📊 Yönetim Panelleri

  • Admin Dashboard: Tüm sistem istatistikleri, toplam ciro, işlem başarı oranları ve müşteri analitiği.
  • Merchant (Firma) Paneli: İşlem listesi, API anahtarı yönetimi, webhook yapılandırması ve teknik entegrasyon rehberi.

🛠️ Teknoloji Yığını

  • Frontend & API: Next.js 15 (App Router)
  • Veritabanı: PostgreSQL (Direct connectivity via pg)
  • Blockchain:
  • Styling: Modern Vanilla CSS & Tailwind (Hibrit)
  • İkon Seti: Lucide React

🚀 Hızlı Kurulum

1. Depoyu Klonlayın

git clone https://github.com/mstfyldz/Pay2Gateway.git
cd Pay2Gateway

2. Bağımlılıkları Yükleyin

npm install

3. Ortam Değişkenlerini Yapılandırın

.env dosyasını oluşturun ve aşağıdaki bilgileri girin:

DATABASE_URL=postgres://user:pass@host:5432/db
NEXT_PUBLIC_BASE_URL=http://localhost:3000
NEXT_PUBLIC_USE_MOCK_PAYMENTS=true # Test için true kalsın

# Kripto Platform Cüzdanları (Süpürme Hedefi)
SOL_PLATFORM_ADDRESS=...
EVM_PLATFORM_ADDRESS=...

# Gaz Yakıt Cüzdanı (Fonları süpürmek için gerekli gaz ücreti)
CRYPTO_GAS_TANK_KEY=0x...

4. Geliştirme Modunu Başlatın

npm run dev

📡 API Kullanımı (v1)

Ödeme Oturumu Başlatma

Firmalar kendi sunucularından şu uç noktaya istek atarak bir ödeme oturumu başlatabilirler.

Request:

  • URL: POST /api/v1/checkout
  • Headers: x-api-key: YOUR_MERCHANT_API_KEY
{
  "amount": 250.00,
  "currency": "TRY",
  "order_id": "OD_12345",
  "customer_name": "John Doe",
  "success_url": "https://mysite.com/success",
  "cancel_url": "https://mysite.com/cancel"
}

Response:

{
  "success": true,
  "data": {
    "id": "uuid-transaction-id",
    "checkout_url": "http://localhost:3000/checkout?session_id=uuid-transaction-id",
    "status": "pending"
  }
}

📂 Dosya Yapısı

  • /app/api/v1 - Dışarıya açık profesyonel API endpoints.
  • /app/admin - Merkezi yönetim paneli.
  • /app/merchant - Firma özel dashboard ve ayarlar.
  • /lib/crypto-engine.ts - On-chain ana motor (Doğrulama, Süpürme).
  • /lib/crypto-config.json - Desteklenen ağlar ve token listesi.
  • /lib/db.ts - PostgreSQL bağlantı havuzu.

🔐 Güvenlik Politikası

  1. Private Key Yönetimi: Geçici cüzdan anahtarları şifrelenmiş olarak işlem metadata'sında saklanır ve fon süpürüldükten sonra işlevini yitirir.
  2. Fiyat Güvenliği: Ödeme oturumları (session_id) sunucu taraflı oluşturulur; istemci tarafında tutar değişikliği yapılamaz.
  3. Hız Sınırı (Rate Limiting): API istekleri anahtar tabanlı olarak sunucu tarafında izlenir.

Pay2Gateway - Geleceğin Ödeme Altyapısı.