Tamamen bu sektöre girmek isteyen girişimciler için hazırladığım, %100 açık kaynak olarak GitHub'a koyacağım bir P2P e-pin pazar yeri projesi.
Kullanılan Teknolojiler
PostgreSQL > Veritabanı (Prisma ORM + migration)
Redis > Cache ve rate limit
Next.js 14 > Frontend (App Router, TanStack Query)
Node.js + Express + TypeScript > API / Backend
Docker Compose > Tek komutla kurulum
Ek özellikler için konu altına "bu da olsa güzel olur" diyerek kendi naçizane fikirlerinizi yazabilirsiniz.
Not: Geliştirmeler biraz zaman alabilir.
━━━━━━━━━━━━━━━━━━━━
ÖNCEDEN YAPILANLAR
- Giriş ve kayıt sistemi (Google ile giriş dahil)
- Sepet sistemi
- Ürün değerlendirme
- Profil işlemleri
- Dijital Lisans ve E-Pin Kasası
- Geçmiş siparişlerim
- P2P sistemi (mağaza sistemi)
- Kullanıcı rol sistemi (Kullanıcı | Destek | Admin)
- Canlı bildirim sistemi
- Canlı destek sistemi
- Müşteri ile mağaza sahibi arasında mesajlaşma
- İlan oluşturma, silme, güncelleme ve stok takibi (ilanlar onaydan sonra yayına girer)
━━━━━━━━━━━━━━━━━━━━
YENİ EKLENENLER
Güvenli Alışveriş (Escrow)
- Ödeme, alıcı kodu kontrol edip onaylayana kadar güvenli havuzda bekler
- Alıcı onay vermezse süre sonunda ödeme otomatik olarak satıcıya geçer
- Satıcı teslim etmezse sipariş otomatik iptal edilir, para cüzdana iade edilir
- Video kanıtla itiraz sistemi: satıcı iade eder veya yeni kod gönderir, anlaşma olmazsa hakem ekibi karar verir
- Sipariş detay sayfası: sipariş adım adım takip edilebiliyor
Ödeme Yöntemleri (Admin panelinden açılıp kapatılabiliyor)
- PayTR (kart formu site içinde açılıyor)
- iyzico
- Stripe
- Kripto para (NOWPayments ile BTC, USDT vb.)
- Kripto cüzdan adresi (kullanıcı işlem kodunu bildirir, admin onaylar)
- Havale / EFT (referans kodlu)
- Her yöntem için ayrı alt/üst limit ve hizmet bedeli ayarlanabiliyor
- API anahtarları veritabanında şifreli saklanıyor, panelde bile tekrar gösterilmiyor
- Aynı ödeme bildirimi iki kez gelse bile bakiye bir kez yükleniyor, tutar tutmazsa bakiye yüklenmiyor
Satıcılar İçin
- Kazancı banka hesabına çekme (IBAN ile para çekme talebi)
- İlan oluşturma ve düzenleme artık adım adım sihirbaz şeklinde
- Tek tuşla ilanı yayından kaldırma / tekrar yayına alma (stok ve kodlar korunuyor)
- Bölge seçimi: Global, Türkiye, Avrupa, EMEA, ABD, UK, Latin Amerika, Asya, Rusya/BDT
- Yorumlara satıcı yanıtı
Komisyon Sistemi
- Admin panelinden varsayılan satış komisyonu
- Kategori bazlı özel komisyon oranları
- Para çekme komisyonu (yüzde + sabit ücret)
- Oranlar değişse bile eski siparişler kendi oranıyla kalıyor
Hesap Güvenliği
- E-posta doğrulama
- Şifremi unuttum / şifre sıfırlama
- İki adımlı doğrulama (Google Authenticator, Authy vb. + kurtarma kodları)
- Oturumlar HttpOnly cookie ile tutuluyor
- Brute force ve istek sınırı koruması
Yönetim Paneli
- Genel bakış: ciro, komisyon ve satış istatistikleri
- Finans ekranı: para çekme, havale ve kripto onayları, online ödemeler, cüzdan hareketleri
- Ödeme yöntemleri yönetimi
- Sistem ayarları: komisyonlar ve SMTP e-posta ayarları (hazır Gmail, Outlook, Yandex, Brevo, SendGrid ayarları + test e-postası)
- Toplu bildirim gönderme (tüm kullanıcılar, satıcılar, alıcılar, ekip ya da tek kullanıcı; isteğe bağlı e-posta ile)
- Şikâyet sistemi: kullanıcılar ilan, mağaza ve yorum şikâyet edebiliyor, admin tek adımda içeriği kaldırabiliyor
- Yorum denetimi
- İşlem geçmişi: yöneticilerin yaptığı her işlem kim, ne zaman, hangi gerekçeyle bilgisiyle kaydediliyor
- Rol ve izin yönetimi (Destek ekibine hangi yetkilerin verileceği ayarlanabiliyor)
Site Geneli
- Yeni tasarım: sadeleştirilmiş arayüz, yeni ana sayfa slider'ı
- Ana sayfada öne çıkan ürünler listesi
- Header'da ürün arama
- Katalogda kategori, fiyat, teslimat ve bölge filtreleri
- SSS, Hakkımızda ve İletişim sayfaları
- KVKK, Kullanım Koşulları, Mesafeli Satış Sözleşmesi ve İade Politikası sayfaları (kayıtta ve satın almada onay kutusu ile)
- SEO: otomatik sitemap.xml ve robots.txt
- Mobil uyumlu
Kod Kalitesi
- Backend ve frontend için birim, entegrasyon ve uçtan uca testler
- Eşzamanlı satın almalarda aynı kodun iki kişiye satılması engellendi
- Katmanlı mimari (route > controller > service > repository)
https://github.com/yusuf-polat/epin




