12 aylık taahhüt planı kurulumu
Taahhüt planı sunmak için yıllık bir App Store aboneliğine ve bir flow veya özel paywall’a ihtiyacınız vardır. Flow’lar iOS’ta Adapty SDK v4.3.1 veya üstünü, Android’de v4.3 veya üstünü, React Native veya Flutter’da ise v4.3.0 veya üstünü gerektirir. Özel paywall’lar iOS, React Native veya Flutter’da Adapty SDK v4.3 veya üstünü gerektirir.
Abonelerin tam bir yıla taahhüt edip aylık ödeme yapmasını sağlamak için App Store Connect’teki ve Adapty’deki yıllık ürününüze bir 12 aylık taahhüt planı ekleyin.
Başlamadan önce
Commitment planlarını uygulamadan önce şunları yaptığınızdan emin olun:
- Doğru pazarı hedefleyin: Taahhüt planları Amerika Birleşik Devletleri’nde kullanılamaz. Almanya, İsrail, Güney Afrika ve Türkiye’de aboneler, Apple Destek aracılığıyla anında iptal edebilir.
- Doğru işletim sistemi sürümünü hedefleyin: Abonelerin iOS 26.4 veya üzeri, ya da iPadOS, macOS, tvOS veya visionOS’un aynı sürümüne ihtiyacı vardır. Uygulamanızı Xcode 26.5 veya üzeriyle derleyin.
- Doğru fiyat aralığını hedefleyin: 12 aylık ödemenin toplam değeri, peşin yıllık abonelik değerinin 1x ile 1,5x arasında olmalıdır.
- Desteklenen bir Adapty SDK sürümü çalıştırın: Flow’lar, iOS’ta Adapty SDK v4.3.1 veya üzeri, Android’de v4.3 veya üzeri, React Native veya Flutter’da v4.3.0 veya üzeri gerektirir. Özel paywalllar iOS, React Native veya Flutter’da Adapty SDK v4.3 veya üzeri gerektirir: daha eski SDK’ya sahip uygulama sürümlerinde kullanıcılar yalnızca peşin planı satın alabilir.
- Ürün kimliklerini okuyan kodu güncelleyin: Webhook’lar, entegrasyonlar, veri dışa aktarımları ve Server-side API, taahhüt planı satın almalarını
<product_id>:monthlyolarak raporlar. Kodunuz ürün kimliklerini işliyorsa, ilk taahhüt planı satın alımından önce mantığı güncelleyin.
1. App Store Connect yapılandırması
- App Store Connect’te yıllık bir abonelik açın veya 1 Yıl süreli yeni bir abonelik oluşturun.
- Availability bölümünde, 1 Year Upfront ve Monthly with 12-Month Commitment altına aynı ülkeleri ekleyin. Apple, taahhüt ücretlendirmesini yalnızca peşin ücretlendirmenin mevcut olduğu yerlerde sunar. Tersi zorunlu değildir: taahhüt planı olmayan ülkelerde de peşin planı sunabilirsiniz.
- Subscription Prices bölümünde, aboneliğin henüz bir fiyatı yoksa temel bölgeniz için peşin fiyatı belirleyin. Apple, yalnızca taahhüt planını kullanıcılara gösterseniz dahi peşin fiyat belirlemenizi zorunlu kılar.
- Temel bölgeniz için aylık fiyatı belirleyin. Aylık fiyat, peşin fiyatın 1/12’si ile 1/8’i arasında olmalıdır. Örneğin, €59,99 peşin fiyat ile aylık fiyat €5,00 ile €7,49 arasında olabilir.
App Store Connect, diğer ülkeler için fiyatları temel bölge fiyatlarınızdan hesaplar.
Tam talimatlar için Apple’ın 12 aylık taahhütlü aylık abonelik sunma kılavuzunu izleyin.
2. Adapty yapılandırması
Commitment planını flow’larda veya özel paywallarda göstermek için, yıllık ürün için Adapty’de bunu etkinleştirin. İkisini de kullanmıyorsanız bu adımı atlayabilirsiniz.
-
Yıllık ürünü açın. Henüz mevcut değilse, App Store Connect’te ayarladığınız aboneliği oluşturun ve bağlayın. Adapty’den yeni bir ürün push etmeyin: bu, commitment planı olmayan ayrı bir abonelik oluşturur.
-
App Store sekmesini açın ve Offer monthly payments with a 12-month commitment seçeneğini seçin.
-
Açılan pencerede, Monthly price, USD listesinden App Store Connect ile eşleşen taksit fiyatını seçin. Liste yalnızca izin verilen aralıktaki App Store fiyat noktalarını içerir. Bu fiyat bir referans değeridir: Adapty bunu App Store Connect’e göndermez.
3. Teklifleri ayarlayın
App Store Connect’te her faturalandırma planının kendine ait başlangıç teklifleri, promosyon teklifleri, geri kazanma teklifleri ve teklif kodları bulunur. Ön ödeme planına ait bir teklif, taahhüt planı için geçerli değildir.
- Ücretsiz denemeler ve diğer başlangıç teklifleri: App Store Connect’te taahhüt planı için teklifi ayarlayın. Adapty, başlangıç tekliflerini otomatik olarak uygular. Başlangıç teklifi sona erdiğinde, abonenin 12 aylık taahhüt süreci başlar.
- Promosyon ve geri kazanma teklifleri: App Store Connect’te taahhüt planı için promosyon veya geri kazanma teklifleri ayarlayın. Ardından teklifleri Adapty’ye ekleyin ve App Store plan ayarını Monthly with 12-month commitment olarak belirleyin. Bir flow veya paywall ürünü yalnızca kendi faturalama planına ait teklifleri listeler. Ne flow ne de özel paywall kullanıyorsanız teklifleri Adapty’ye eklemeniz gerekmez.
- Teklif kodları: App Store Connect’te taahhüt planı için teklif kodlarını ayarlayın.
4. Bir flow’a veya özel paywall’a ekleme
Apple, satın alma öncesinde hem taksit fiyatını hem de yıllık toplam tutarı göstermenizi zorunlu kılmaktadır.
Flow
- Flow builder’da Products panelini açın ve yıllık ürünü ekleyin. Bu ürün Monthly etiketli olmalıdır. Aynı ekranda peşin planı da satmak istiyorsanız, Upfront etiketli ürünü de ekleyin.
- Peşin planı satın alan kullanıcılara — daha eski bir SDK sürümünde veya taahhüt planının geçerli olmadığı durumlarda — peşin teklif sunmak için, Fallback offer altından ilgili teklifi seçin.
- Monthly ürününü bir ürün kartına veya bir Purchase eylemine atayın.
- Taksit fiyatını görüntülemek için
prod_billing_priceveprod_billing_perioddeğişkenlerini ekleyin. Yıllık toplamı görüntülemek içinprod_pricekullanın. Taksit değişkenleri, iOS’ta Adapty SDK v4.3.1 veya üstünü; React Native ya da Flutter’da ise v4.3.0 veya üstünü gerektirir. - Taahhüt planını satın alamayan kullanıcılar için ekranı önizlemek amacıyla Products panelinde Monthly ürününün menüsünü açın ve Offer > Monthly plan unavailable seçeneğini seçin.
Özel paywall
- Özel paywall’da yıllık ürünü ekleyin ve Billing plan ayarını Monthly olarak belirleyin. Aynı paywall’da ön ödemeli planı da satmak istiyorsanız, yıllık ürünü tekrar ekleyip Billing plan olarak Upfront seçin.
- Daha eski bir SDK sürümünde ya da taahhüt planının geçerli olmadığı durumlarda, ön ödemeli planı satın alan kullanıcılara başlangıç teklifi sunmak istiyorsanız bunu Fallback offer altından seçin.
- Uygulamanızda fiyatı
product.subscriptionPricingTermsüzerinden gösterin. Taahhüt planı satın alabilecek kullanıcılar için Adapty SDK bu planın fiyatlandırmasını döner. Diğer kullanıcılar için ise ön ödemeli planın fiyatlandırması döner:- SDK’nın hangi planı döndürdüğünü anlamak için
product.subscriptionPricingTerms?.billingPlandeğerine bakın. Taahhüt planı için.monthly, ön ödemeli plan için.upFrontdöner. - Taksit fiyatını göstermek için
subscriptionPricingTerms.localizedBillingPricevesubscriptionPricingTerms.billingPeriodkullanın. - Yıllık toplamı göstermek için
subscriptionPricingTerms.commitmentInfo.localizedPricevesubscriptionPricingTerms.commitmentInfo.periodkullanın. Taahhüt planındaproduct.localizedPriceveproduct.subscriptionPeriodda aynı yıllık değerleri döner. - React Native’de fiyatlandırmayı
product.subscription?.ios?.pricingTermsüzerinden okuyun.billingPlandeğeri taahhüt planı için'monthly', ön ödemeli plan için'up_front'olur. Taksit fiyatı içinbillingPrice.localizedStringvebillingPeriod, yıllık toplam içincommitmentInfo.price.localizedStringvecommitmentInfo.periodkullanın. - Flutter’da fiyatlandırmayı
product.subscription?.pricingTermsüzerinden okuyun.billingPlandeğeri taahhüt planı içinAdaptySubscriptionBillingPlan.monthly, ön ödemeli plan içinAdaptySubscriptionBillingPlan.upFrontolur. Taksit fiyatı içinbillingPrice.localizedStringvebillingPeriod, yıllık toplam içincommitmentInfo.price.localizedStringvecommitmentInfo.periodkullanın.
- SDK’nın hangi planı döndürdüğünü anlamak için
Kullanıcılar aşağıdaki durumlarda taahhüt planını satın alamaz:
- Desteklenmeyen işletim sistemi sürümü veya ülke: Kullanıcının Apple cihazı 26.4’ten eski bir sistem sürümü çalıştırıyor ya da plan, kullanıcının App Store ülkesinde mevcut değil. Adapty SDK bu durumda ön ödemeli planın fiyatlandırmasını döndürür.
- Mevcut ön ödemeli abonelik: StoreKit, kullanıcının zaten abone olduğunu bildiriyor. Plan değiştirmek isteyen aboneler Apple abonelik ayarlarını kullanır.
- Uygulama içi promosyon satın alma: Kullanıcı ürünü App Store’da seçer, ardından Adapty SDK satın alma işlemini uygulamanızda başlatır. Bu tür satın almalarda SDK yalnızca ön ödemeli planı destekler.
Taahhüt planını sunmayı durdurmak için flow’larınızda Monthly ürününü değiştirin ya da kaldırın. Özel paywalllarınızda yıllık ürünün Billing plan ayarını Upfront olarak belirleyin ya da Monthly satırını kaldırın. Adapty’de Offer monthly payments with a 12-month commitment onay kutusunu temizleyemezsiniz. Mevcut aboneler, App Store Connect’te yıllık abonelik için Remove Monthly Billing seçeneğine tıklamazsanız her yıl yeni bir taahhütle yenilenmeye devam eder. Taahhüdünü zaten vermiş aboneler ise taahhütleri sona erene kadar ödemeyi sürdürür.
5. Planı sandbox ortamında test edin
İki sandbox hesabıyla sandbox test kılavuzunu takip edin:
- Taahhüt planını sunduğunuz bir ülkenin hesabı: Paywall’da taahhüt planı, aylık fiyatın yanı sıra toplam fiyatla birlikte gösterilmelidir. Satın alma işleminden sonra sandbox kullanıcısının profilinde yıllık ürünün access level’ı görünmelidir.
- Bir ABD hesabı: Paywall’da yalnızca peşin plan gösterilmelidir.
Kodunuz webhook’lardan veya Server-side API’den ürün kimliklerini işliyorsa, taahhüt planı satın almalarının <product_id>:monthly olarak alındığını doğrulayın.
Satın alma mantığını yerel olarak test etmek için Xcode’da StoreKit Testing 26.5 veya üstünü kullanın. StoreKit Testing’deki satın almalar Adapty’e ulaşmaz.
Uygulamanızda taahhüt ilerlemesini gösterin
Abonelerin taahhütlerinde ne kadar ilerlediklerini göstermek için kullanıcının profilinden access level’ı okuyun. billingPlan ve commitmentInfo özellikleri iOS’ta Adapty SDK v4.3 veya sonrasını, React Native ya da Flutter’da ise v4.3.0 veya sonrasını gerektirir.
- Abonenin taahhüt planında olup olmadığını anlamak için
billingPlandeğerini aylık değerle karşılaştırın. Özelliğin ayarlanıp ayarlanmadığını kontrol etmeyin: upfront değerini de tutabilir. - İlerlemeyi göstermek için mevcut ödeme için
commitmentInfo.billingPeriodNumber, ödeme sayısı içincommitmentInfo.totalBillingPeriodskullanın. - Taahhüdün ne zaman sona ereceğini göstermek için access level’ın
expiresAtözelliğini değil,commitmentInfo.expiresAtkullanın.
Sorun Giderme
- Aylık ödeme onay kutusu görünmüyor: Offer monthly payments with a 12-month commitment onay kutusu yalnızca App Store ürün kimliğine sahip Annual ürünlerde görünür. Ürünün Price (USD) alanı doldurul madan etkin olmaz.
- Kullanıcılar taahhüt planı için ücretsiz deneme veya başka bir teklif görmüyor: App Store Connect’te her teklif tek bir faturalandırma planına aittir. Taahhüt planı için teklifi ayarlayın. Promosyon teklifi veya geri kazanma teklifi için Adapty’de teklifin App Store plan alanını Monthly with 12-month commitment olarak belirleyin.
- Her kullanıcı peşin fiyatı görüyor: Aşağıdakilerin ikisini de doğrulayın:
- Uygulama Xcode 26.5 veya sonraki bir sürümle derlenmiş olmalıdır. Daha eski bir Xcode sürümünde Adapty SDK her zaman peşin planın fiyatını döndürür.
- Flow’da ekran, Monthly olarak etiketlenmiş yıllık ürünü kullanıyor olmalıdır. Özel paywall’da ise yıllık ürünün Billing plan değeri Monthly olmalıdır.
- Bazı kullanıcılar peşin fiyatı görüyor: Bu kullanıcılar taahhüt planını satın alamıyor.
- Paywall taksit fiyatı yerine yıllık toplamı gösteriyor:
- Bir flow’da
prod_priceyıllık toplamı döndürür. Taksit fiyatını görüntülemek içinprod_billing_pricekullanın. Adapty iOS SDK v4.3.0’daprod_billing_pricede yıllık toplamı gösterir: SDK’yı v4.3.1 veya sonrasına güncelleyin. - Özel paywall’da
product.localizedPriceyıllık toplamı döndürür. Taksit fiyatını görüntülemek içinsubscriptionPricingTerms.localizedBillingPricekullanın. React Native’deproduct.subscription?.ios?.pricingTerms?.billingPrice.localizedStringkullanın. Flutter’daproduct.subscription?.pricingTerms?.billingPrice.localizedStringkullanın.
- Bir flow’da