Shopify Billing API: Uygulama Ücretlendirme Kararı Nasıl Verilir?
Shopify uygulamanızı nasıl fiyatlandırmalısınız? Recurring, usage-based ve trial modelleri için geliştirici ve kurucu karar çerçevesi.
- shopify
- billing-api
- ucretlendirme
- app-monetization
- gelistirme
Shopify uygulaması geliştirip App Store’a koyduğunuzda ücretlendirme ayrı bir ürün kararıdır: abonelik mi, kullanım bazlı mı, deneme süresi ne kadar? Shopify, uygulama içi ödemeler için Billing API dışında resmi yol tanımaz; Stripe veya PayPal ile doğrudan tahsilat App Store politikalarına aykırıdır.
Bu yazı kimler için?
Uygulama geliştiricisi / kurucu: İlk public app’inizi monetize edeceksiniz; model seçimi gelir ve churn’ü doğrudan etkiler.
Ajans: Müşteri için custom app geliştiriyorsunuz; mağaza sahibine “aylık Shopify faturasına eklenir” akışını doğru anlatmanız gerekir.
Mağaza sahibi (değerlendirme modunda): Kuracağınız uygulamaların ücret yapısını ve iptal/trial koşullarını anlamak istiyorsunuz.
Karar problemi: Değeriniz kullanım ile mi, özellik seti ile mi, yoksa kurulum/migration ile mi ölçülüyor? Yanlış model hem dönüşümü hem destek yükünü bozar.
Somut karar problemi
Billing API üç ana charge tipi sunar:
Recurring Application Charge — Aylık veya yıllık sabit abonelik. Özellik katmanları (Basic / Pro) için en yaygın model.
Usage-Based Charge (cap ile) — Sipariş, API çağrısı veya işlem hacmine göre değişken ücret; aylık tavan (cap) mağaza sahibi için öngörülebilirlik sağlar.
One-Time Application Charge — Tek seferlik kurulum, migration veya premium modül açılışı.
Free Trial — Abonelik başlamadan deneme; süre bitiminde onaylanmış charge devreye girer (iptal edilmediyse).
Akış her zaman mağaza sahibi onayından geçer: uygulama charge oluşturur → Shopify admin’de onay ekranı → fatura dönemlerinde Shopify faturasına eklenir.
Karar çerçevesi ve kontrol listesi
İş modeli uyumu
- Değer sürekli ve özellik setine bağlı → recurring tier
- Değer hacimle ölçekleniyor (sipariş, sync, rapor) → usage + cap
- Tek seferlik proje/hizmet satışı → one-time
- Düşük giriş engeli + upsell → freemium veya kısa trial + ücretli plan
Mağaza sahibi perspektifi
- Fiyat net mi; gizli ücret yok mu (onay ekranında görünür)
- Trial süresi ve otomatik geçiş açıkça belirtilmiş mi
- Plan düşürme/iptal admin’den yapılabiliyor mu
- Usage cap aşılmadan önce uyarı var mı (uygulama tarafında)
Teknik implementasyon
- Charge oluşturma + onay sonrası charge ID saklama
-
app_subscriptions/updatewebhook ile durum değişiklikleri dinleniyor - Erişim kontrolü charge durumuna bağlı (trial bitti, ödeme başarısız)
- Plan değişikliğinde veri kaybı yok; yalnızca özellik kapıları değişiyor
Politika uyumu
- App Store dışı ödeme yok
- Shopify Plus B2B gibi istisna senaryolarınız yoksa Billing API zorunlu
Erken karar
- Billing, MVP sonrası “ekleriz” değil; erken tasarlanmış (sonradan migration zor)
Özet: Standart SaaS → recurring + trial. Hacim oynak → usage + cap. Proje bazlı gelir → one-time.
Ücretlendirme akışı (geliştirici tarafı)
Billing API implementasyonu tipik olarak şu adımları izler:
- Uygulama kurulumu veya plan seçimi sırasında charge oluşturma (recurring, usage veya one-time)
- Mağaza sahibini Shopify onay ekranına yönlendirme
- Onay sonrası charge ID ve durumunu veritabanına kaydetme
app_subscriptions/updatewebhook ile iptal, dondurma veya plan değişikliğini yakalama- Uygulama özelliklerini charge durumuna göre açma/kapama
Shopify CLI ve App Remix template bu iskeleti büyük ölçüde hazır sunar; asıl ürün kararı plan sayısı, trial süresi ve usage cap tanımındadır. Mağaza sahibi perspektifinden akış şeffaftır: onay ekranında plan adı ve tutar görünür, ücret Shopify faturasına eklenir, iptal admin’den yapılır.
Freemium düşünüyorsanız “ücretsiz planda ne var, ücretli planda ne açılıyor” sınırını baştan çizin. Trial bitiminde otomatik geçiş mağaza sahibine e-posta ve uygulama içi banner ile hatırlatılmalı; sürpriz fatura en sık churn nedenlerinden biridir.
Plan tasarımında tier sayısını abartmayın: üç net plan (giriş, büyüme, ileri) çoğu B2B SaaS için yeterlidir. Her yeni tier, destek ve dokümantasyon yükünü artırır. Usage-based modelde cap mutlaka onay ekranında görünür olmalıdır.
Sık yapılan hatalar
App Store dışı ödeme kabul etmek. Politika ihlali; uygulama listeden kaldırılabilir.
Trial bitince erişimi aniden kesmek. Veri kaybı algısı oluşur; grace period veya downgrade planı düşünün.
Usage cap’i belirtmemek. Mağaza sahibi fatura şoku yaşar; churn ve olumsuz review artar.
Charge durumunu yalnızca polling ile kontrol etmek. Webhook olmadan abonelik iptali geç fark edilir; erişim ve veri tutarsızlığı oluşur.
Plan değişikliğinde veri silmek. Doğru uygulamalarda plan yalnızca özellik erişimini değiştirir; ayarlar korunur.
Fiyatlandırmayı geliştirmeden sonra tasarlamak. Billing API entegrasyonu auth ve webhook mimarisine bağlıdır; geç eklemek refactor gerektirir.
Sık sorulan sorular
Mağaza sahibi uygulama ücretini nerede görür?
Shopify admin faturasında, diğer Shopify kalemleriyle birlikte. Ayrı kart ödemesi veya geliştiriciye doğrudan transfer gerekmez.
Trial bitmeden uygulama kaldırılırsa ne olur?
Onaylanmış recurring charge oluşmamışsa ücret alınmaz. Trial aktifken kaldırma genelde ücretsizdir.
Yıllık plan sunmak mümkün mü?
Evet. Billing API yıllık recurring charge destekler; indirimli yıllık fiyatlandırma churn’ü düşürmek için yaygın bir taktiktir.
Custom app’te de Billing API gerekir mi?
Public App Store uygulamalarında zorunludur. Yalnızca tek mağazaya custom app geliştirip App Store dışında faturalandırıyorsanız farklı ticari anlaşmalar geçer; yine de Shopify politikalarını kontrol edin.
Sonraki adım
Ücretlendirme modeli ürün-pazar uyumunun parçasıdır; teknik entegrasyon kadar erken netleşmelidir. Billing API ve abonelik akışını projenize göre değerlendirmek için info@murattanriover.com.tr adresine yazabilirsiniz.