Para Kazanma — Genel Bakış & Komisyon ✓ Canlı

Eklenti iki modelle para kazanır: tenant'ın satın aldığı abonelik ve tek-seferlik uygulama-içi satın alma (IAP). Platform %30 komisyon alır; geliştirici net'in %70'ini alır. Tüm tutarlar kuruş cinsindendir (1₺ = 100 kuruş).

Abonelik, IAP (uygulama-içi satın alma) ve komisyon canlı. Payout (Stripe Connect) ayrı bir aktivasyon adımıdır — durumu için o sayfaya bakın.

İki kazanç modeli

İki gelir modeli aynı bakiyeye akar; farkları tahsilat şeklidir.

ModelNasılTahsilatDetay
AbonelikTenant eklentiyi aylık/yıllık satın alırYinelenen (her dönem)Fiyatı manifest pricing ile tanımlanır; abonelik durum değişiklikleri subscription.* event'leri ile gelir.
Tek-seferlik IAPEklenti purchases/create ile checkout başlatırTek seferAkışın tamamı: IAP rehberi.

Para akışı

Tenant brüt (KDV dahil) öder; platform tahsil eder, KDV'yi ayırır, kalan net üzerinden komisyon uygular ve geliştirici payını bakiyeye ekler:

tenant gross öder (KDV dahil)
        │
        ▼
platform tahsil eder (Stripe)
        │
        ▼
KDV ayrılır  →  net = gross − KDV
        │
        ▼
net üzerinden %30 komisyon
        │
        ├─► geliştirici %70 ──► balancePending (abonelik + IAP ortak)
        │
        └─► platform %30 (türetilir: net − developerShare)
                                │
                                ▼
                     eşik aşılınca Stripe Connect payout
Tüm tutarlar kuruş (integer) ve currency: "try". Abonelik ve IAP kazançları aynı balancePending'de birikir. Platform geliştiricinin banka bilgisini görmez — payout Stripe Connect üzerinden yapılır.

Komisyon & gelir payı

Geliştirici net'in %70'ini alır (shareBps = 7000, geliştirici payı). Platform payı bundan türetilir: net − developerShare. Pay net (KDV ayrıldıktan sonra) üzerinden hesaplanır. KDV varsayılan %20'dir (taxBps = 2000).

Hesaplama
net           = round(gross × 10000 / (10000 + taxBps))
developerShare = floor(net × shareBps / 10000)     // shareBps = GELİŞTİRİCİ payı (7000)
platformShare  = net − developerShare
KDV            = gross − net
Tüm değerler integer kuruş. floor nedeniyle ortaya çıkan kuruş fazlalığı platforma gider — yuvarlama asla geliştirici aleyhine yapılmaz.

Somut örnek — 100₺

100,00₺ dağılımı
// 100,00₺ satın alma — taxBps=2000 (%20), shareBps=7000 (%70)
gross          = 10000                                   // 100,00₺
net            = round(10000 × 10000 / 12000) = 8333     // 83,33₺
developerShare = floor(8333 × 7000 / 10000)   = 5833     // 58,33₺  → geliştirici
platformShare  = 8333 − 5833                  = 2500     // 25,00₺  → platform
KDV            = 10000 − 8333                  = 1667     // 16,67₺
KalemKuruş
Brüt (müşteri öder, KDV dahil)10000100,00₺
KDV166716,67₺
Net (KDV sonrası)833383,33₺
Geliştirici payı (%70)583358,33₺
Platform payı250025,00₺
Platform payı brütün tam %30'u değildir (25,00₺ ≠ 30,00₺): pay nettin %30'udur ve floor fazlalığını platform absorbe eder.

Oran satın-alma anında sabitlenir (grandfather)

shareBps ve taxBps checkout anında snapshot'lanır (abonelikte Stripe session metadata'sına, IAP'te satın alma kaydına). Webhook tescilinde bu snapshot kullanılır — oran sonradan değişse de o satın almanın payı sabit kalır.

Bakiye & test modu

AlanAnlamı
balancePendingCanlı, payout edilebilir biriken bakiye (abonelik + IAP ortak).
balancePendingTestTest-mode kazanç — bilgi amaçlı; ASLA payout edilmez.
balancePaidÖmür boyu fiilen ödenen toplam.
testMode Stripe webhook'unun livemodealanından türetilir (testMode = livemode === false) — geliştirici bunu override edemez. Test kazançları balancePendingTest'e gider ve hiçbir zaman ödenmez.
İade/itiraz (refund/dispute) durumunda bakiye tersine çevrilir — ilgili tutar balancePending'den düşülür (payout edilmemişse).

İlgili belgeler