feat: implement platform treasury model with merchant balance tracking and API docs
This commit is contained in:
81
README.md
81
README.md
@@ -12,18 +12,23 @@ Pay2Gateway, modern e-ticaret siteleri ve dijital platformlar için geliştirilm
|
||||
* **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ı.
|
||||
* **Geniş Ağ Desteği:**
|
||||
* **EVM:** Ethereum, Polygon, BSC.
|
||||
* **Solana:** Native SOL ve SPL tokenlar (USDC/USDT).
|
||||
* **TRON (TRC20):** USDT ve TRX desteği.
|
||||
* **BITCOIN:** Native BTC ödeme doğrulama.
|
||||
* **Otomatik Süpürme (Auto-Sweep):** Toplanan fonların ana platform ve merchant cüzdanlarına saniyeler içinde otomatik olarak aktarılması (Server-side split).
|
||||
* **Gelişmiş Doğrulama:** Her ağ için optimize edilmiş on-chain/API doğrulama mekanizmaları.
|
||||
|
||||
### 💰 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ığı.
|
||||
### 💰 Esnek Komisyon & Fiyatlandırma
|
||||
* **Merchant-Specific Fees:** Her firma için özel komisyon oranı (%Fee) belirleme imkanı.
|
||||
* **Zengin Token Listesi:** USDT, USDC, BTC, ETH, TRX, MATIC ve popüler altcoinler.
|
||||
* **Görsel Deneyim:** Dinamik coin logoları ve profesyonel checkout arayüzü.
|
||||
* **Binance API Entegrasyonu:** Gerçek zamanlı TRY/USD kuru ve anlık token fiyat dönüşümleri.
|
||||
|
||||
### 📊 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.
|
||||
* **Admin Dashboard:** Merkezi yönetim, firma ekleme/düzenleme, özel komisyon atama ve global istatistikler.
|
||||
* **Merchant Panel:** API anahtarı yönetimi, işlem geçmişi ve teknik entegrasyon rehberi.
|
||||
|
||||
---
|
||||
|
||||
@@ -34,12 +39,13 @@ Pay2Gateway, modern e-ticaret siteleri ve dijital platformlar için geliştirilm
|
||||
* **Blockchain:**
|
||||
* [Ethers.js](https://docs.ethers.org/v6/) (EVM)
|
||||
* [@solana/web3.js](https://solana-labs.github.io/solana-web3.js/) (Solana)
|
||||
* [TronWeb](https://developers.tron.network/) (TRON)
|
||||
* **Styling:** Modern Vanilla CSS & Tailwind (Hibrit)
|
||||
* **İkon Seti:** Lucide React
|
||||
* **İkon Seti:** Lucide React & Cryptocurrency-Icons (GitHub CDN)
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Hızlı Kurulum
|
||||
## 🚀 Hızlı Kuruluk
|
||||
|
||||
### 1. Depoyu Klonlayın
|
||||
```bash
|
||||
@@ -53,24 +59,21 @@ npm install
|
||||
```
|
||||
|
||||
### 3. Ortam Değişkenlerini Yapılandırın
|
||||
`.env` dosyasını oluşturun ve aşağıdaki bilgileri girin:
|
||||
`.env` dosyasını oluşturun:
|
||||
|
||||
```env
|
||||
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=...
|
||||
# Platform Cüzdanları (Süpürme Hedefi)
|
||||
EVM_PLATFORM_ADDRESS=...
|
||||
SOL_PLATFORM_ADDRESS=...
|
||||
TRON_PLATFORM_ADDRESS=...
|
||||
|
||||
# Gaz Yakıt Cüzdanı (Fonları süpürmek için gerekli gaz ücreti)
|
||||
# Gaz Yakıt Cüzdanı
|
||||
CRYPTO_GAS_TANK_KEY=0x...
|
||||
```
|
||||
|
||||
### 4. Geliştirme Modunu Başlatın
|
||||
```bash
|
||||
npm run dev
|
||||
TRON_GRID_API_KEY=...
|
||||
```
|
||||
|
||||
---
|
||||
@@ -78,32 +81,14 @@ 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`
|
||||
URL: `POST /api/v1/checkout` | Headers: `x-api-key: YOUR_KEY`
|
||||
|
||||
```json
|
||||
{
|
||||
"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:**
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"data": {
|
||||
"id": "uuid-transaction-id",
|
||||
"checkout_url": "http://localhost:3000/checkout?session_id=uuid-transaction-id",
|
||||
"status": "pending"
|
||||
}
|
||||
"customer_name": "John Doe"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -111,20 +96,18 @@ Firmalar kendi sunucularından şu uç noktaya istek atarak bir ödeme oturumu b
|
||||
|
||||
## 📂 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.
|
||||
* `/lib/crypto-engine.ts` - On-chain ana motor (Doğrulama, Süpürme, Çoklu Ağ).
|
||||
* `/lib/crypto-config.json` - Ağlar, tokenlar ve dinamik logoların konfigürasyonu.
|
||||
* `/components/checkout` - Dinamik logo destekli premium ödeme bileşenleri.
|
||||
* `/scripts` - Veritabanı migrasyonları ve cüzdan yönetim araçları.
|
||||
|
||||
---
|
||||
|
||||
## 🔐 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.
|
||||
1. **İzole Cüzdanlar:** Her işlem için benzersiz geçici cüzdanlar üretilir.
|
||||
2. **Otomatik Bölüştürme:** Fonlar sunucu tarafında platform ve merchant arasında güvenle paylaştırılır.
|
||||
3. **Hassas Veri:** Cüzdan anahtarları ve kritik migration scriptleri repo dışı (`.gitignore`) tutulur.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user