Alışveriş Sepeti

Sepetiniz boş

E-Ticaret & Ekosistem · 16 dk

Multi-Vendor Pazaryeri Mimarisi: Otomatik Komisyon Bölüştürme, Havuz Hesap (Escrow) ve Hakediş Yönetimi

Farklı satıcıların ürünlerinin tek sepette toplandığı, kargo ve iadelerin bağımsız yönetildiği ve çift taraflı muhasebe (Double-Entry Ledger) ile hakedişlerin hatasız hesaplandığı pazaryeri motorumuz.

Yazar: Stilgen Core Engineering

Multi-Vendor Pazaryeri Mimarisi: Otomatik Komisyon Bölüştürme, Havuz Hesap (Escrow) ve Hakediş Yönetimi

1. Çok Satıcılı (Multi-Vendor) E-Ticarette En Büyük Finansal Çıkmaz

Standart bir tekil mağazada müşteri 1.000 TL öder ve para doğrudan mağaza sahibinin hesabına geçer. Ancak Trendyol, Amazon veya Hepsiburada benzeri bir Pazaryeri (Multi-Vendor) modelinde işler katbekat karmaşıktır:

  • Müşteri tek bir sepette Satıcı A'dan bir kulaklık (800 TL) ve Satıcı B'den bir kılıf (200 TL) alır. Toplam 1.000 TL tek seferde karttan çekilir.
  • Pazaryeri sahibi bu parayı doğrudan satıcılara anında gönderemez; çünkü yasal olarak 14 günlük cayma hakkı ve kargo teslim süreci beklenmelidir. Para Havuz Hesapta (Escrow) bloke edilmelidir.
  • Kategori bazlı komisyonlar (Örn: Elektronik %12, Aksesuar %22), kargo kesintisi ve stopaj vergisi hesaplanarak net hakediş (payout) çıkarılmalıdır.
  • Müşteri kulaklığı onaylayıp kılıfı iade ederse, tüm finansal tablonun kısmi iadeye (partial refund) göre hatasız yeniden dengelenmesi gerekir.

2. Stilmerce Pazaryeri Finans ve Sipariş Bölme Mimarisi

Müşteri siparişi onayladığı anda sistem arkada otomatik olarak bir Parent Order (Ana Sipariş) ve her satıcı için ayrı Sub-Order (Alt Sipariş) üretir:

+-------------------------------------------------------------------------------+
|                       MULTI-VENDOR SİPARİŞ & HAKEDİŞ AKIŞI                    |
|                                                                               |
|  [Müşteri: 1.000 TL Öder] (Tek Sepet, 2 Farklı Satıcı)                        |
|              │                                                                |
|              ▼                                                                |
|  [Sanal POS / Ödeme Geçidi: Split Payment & Havuz Bloke (Escrow)]             |
|              │                                                                |
|              ├───────────────────────────────┬────────────────────────────────┤
|              ▼                               ▼                                ▼
|    [Platform Komisyonu]             [Alt Sipariş A (Satıcı A)]      [Alt Sipariş B (Satıcı B)]
|    - Kulaklık Komisyonu: 96 TL      - Ürün: 800 TL                  - Ürün: 200 TL
|    - Kılıf Komisyonu: 44 TL         - Net Hakediş: 704 TL           - Net Hakediş: 156 TL
|    - Toplam Platform Kârı: 140 TL   - Bağımsız Kargo Takip Kodu     - Bağımsız Kargo Takip Kodu
|              │                               │                                │
|              │                               ▼                                ▼
|              │                       [Kargo Teslim Edildi]           [Kargo Teslim Edildi]
|              │                               │                                │
|              │                               ▼ (14 Günlük Cayma Süresi Bitti) ▼
|              └───────────────────────────────┴────────────────────────────────┤
|                                              │                                
|                                              ▼                                
|                       [BullMQ Otomatik Hakediş Dağıtım İşçisi]                
|                       - Satıcı A Cüzdanına 704 TL Aktar (EFT / API)           
|                       - Satıcı B Cüzdanına 156 TL Aktar (EFT / API)           
+-------------------------------------------------------------------------------+

3. Çift Taraflı Muhasebe Defteri (Double-Entry Ledger)

Pazaryeri yönetiminde asla basit bir balance = balance + 100 güncellemesi yapılmaz. Bu yaklaşım finansal denetimlerde ve sistem çökmelerinde felakete yol açar.

Stilmerce'in satıcı cüzdan motoru, bankacılık standardı olan Double-Entry Ledger (Çift Taraflı Defter) prensibiyle çalışır:

// ledger-entry.entity.ts
export class LedgerEntry {
  @PrimaryGeneratedColumn('uuid')
  id: string;

  @Column()
  sellerId: string;

  @Column({ type: 'enum', enum: ['DEBIT', 'CREDIT'] })
  type: 'DEBIT' | 'CREDIT'; // Borç veya Alacak

  @Column({ type: 'bigint' })
  amountCents: number;

  @Column()
  referenceType: 'ORDER_ESCROW' | 'PAYOUT' | 'COMMISSION_FEE' | 'REFUND_REVERSAL';

  @Column()
  referenceId: string;

  @CreateDateNode()
  createdAt: Date;
}

Kuruşu Kuruşuna Denetlenebilirlik

Herhangi bir satıcının bakiyesi geçmişe dönük tüm Ledger kayıtlarının toplamı ile hesaplanır. Hiçbir satır silinemez veya güncellenemez (Immutable); sadece ters kayıt (Reversal entry) atılabilir.

4. Satıcı Hakları ve Komisyon Matrisi

Pazaryeri yöneticileri tek bir komisyon oranına bağlı kalmaz. Kategori, satıcı cirosu ve kampanya türüne göre dinamik kurallar uygulanır:

Kategori Standart Komisyon Platin Satıcı İndirimi Kargo Katkı Payı
Elektronik & Bilgisayar %8.0 %6.5 Alıcı Öder
Moda & Tekstil %21.0 %18.0 Satıcı Hakedişinden Kesilir
Kozmetik & Kişisel Bakım %16.0 %13.5 Baremli Kargo Modeli