Bakiye Sistemi
Kullanıcının CMS cüzdanı — yükleme, harcama, transfer, iade.
Her kullanıcının users.balance alanında bir rakam vardır (decimal 10,2). Tüm hareketler balance_transactions tablosuna audit amacıyla yazılır.
Hareket Tipleri
- deposit — bakiye yükleme (PayTR, Shopier, E-pin).
- purchase — ürün satın alma; bakiyeden düşülür.
- refund — iade; bakiyeye geri eklenir.
- bonus — admin bonusu, günlük ödül, kayıt hediyesi.
- transfer — kullanıcıdan kullanıcıya.
Bakiye Yükleme
Kullanıcı /bakiye-yukle sayfasında:
- Tutar girer (minimum/maksimum admin ayarlanabilir).
- Ödeme yöntemi seçer: PayTR, Shopier, veya E-pin.
- Ödeme sağlayıcısına yönlendirilir.
- Başarılı olursa webhook ile bakiye artırılır.
Bakiye Transfer
Kullanıcılar /bakiye-gonder sayfasından birbirlerine bakiye gönderebilir. Güvenlik kontrolleri:
- Minimum transfer tutarı.
- Kendine gönderme engeli.
- Alıcı var mı kontrolü.
- Yeterli bakiye kontrolü (transaction içinde).
Admin Düzenleme
Admin, Kullanıcılar sayfasında bir kullanıcının bakiyesini manuel olarak değiştirebilir. Bu işlem balance_transactions'a type='adjustment' ile kaydedilir ve admin ID not edilir.
Tüm hareketlerin geçmişi admin panelde Yönetim → Bakiye Geçmişi sayfasından görüntülenebilir.