Başarılı bir App Store satın alması, en azından geliştirici açısından, işlemin her zaman sonu değildir. Bir müşteri ödemeyi yapabilir, uygulamayı bir süre kullanabilir ve günler sonra Apple'dan parasını geri istemeye karar verebilir. Geliştirici için bu tek eylem bir dizi soruyu beraberinde getirir: Müşterinin satın aldığı şeye erişimi hâlâ devam ediyor mu? Abonelik kendiliğinden iptal olacak mı? Backend tarafında geri alınması gereken bir şey var mı? Ve geliştiricinin bundan sonra olacaklar üzerinde herhangi bir söz hakkı var mı?
İadeleri yalnızca bir müşteri desteği sorunu olarak görmek yerine bu iş akışını anlamak, erişim ve gelir sorunlarını erkenden yakalayan ekipleri, bunları haftalar sonra bir mutabakat raporunun derinliklerinde keşfeden ekiplerden ayıran şeydir. RefundSensor gibi araçlar, tam da geliştiricilerin bu boşluğu kapatmasına yardımcı olmak için var.
Öne Çıkanlar
● Her iade talebinde nihai kararı geliştirici değil, Apple verir.
● Bazı iade taleplerinde Apple, karar vermeden önce geliştiricilerden ek bağlam isteyebilir.
● Bu istek, App Store Server Notifications V2 üzerinden bir CONSUMPTION_REQUEST bildirimi olarak gelir.
● Geliştiriciler tüketim bilgisiyle yanıt verebilir, ancak yalnızca müşterinin paylaşım onayı varsa.
● Geliştiricinin yanıtı Apple'ın incelemesine katkı sağlayabilir. Tek başına hiçbir şeyi onaylamaz ya da reddetmez.
● Tüketilebilir ürünler, abonelikler ve tüketilemeyen ürünler bu akıştan aynı şekilde geçmez.
● İşlem hacmi arttığında iade bildirimlerini elle takip etmek gerçekçi olmaktan çıkar.
Apple İade Talebi Nedir?
Apple iade talebi, bir müşterinin uygulama satın alması veya uygulama içi işlem için parasını geri almak amacıyla doğrudan Apple'a ilettiği bir taleptir. Geliştiricinin gönderdiği, onayladığı ya da reddettiği bir şey değildir; abonelik iptalinden veya kart kuruluşu üzerinden açılan bir itirazdan da tamamen farklıdır.
Müşteriler bunun için genellikle önce geliştiriciye ulaşmak yerine Apple'ın kendi kanallarını kullanır: reportaproblem.apple.com, App Store uygulaması veya Apple'ın genel destek akışı. Bu önemlidir, çünkü iade talebi Apple'ın ödeme sistemine yönelik bir taleptir. App Store işlemlerinde kayıtlı satıcı (merchant of record) Apple olduğundan geliştirici, kararın içinde değil, kararın aşağı akışında yer alır.
Apple İade Süreci Geliştiriciler İçin Nasıl İşler?
Geliştiricinin bulunduğu yerden bakıldığında iade süreci, kendisinin başlattığı bir şeyden çok backend'inin başına gelen bir şeydir. Apple talebi inceler, destekleyici bilgi isteyebilir ve sonunda geliştirici tarafında bir sunucu bildirimi olarak ortaya çıkan bir karara varır.
Bu sıralamanın sadeleştirilmiş hâli kabaca şöyle: müşteri bir satın alma yapar, müşteri iade talep eder, Apple bu talebi alır ve inceler, talep ilgiliyse Apple geliştiriciyi bilgilendirebilir, geliştirici desteklenen tüketim bilgisini sağlayabilir, Apple elindeki tüm bilgileri değerlendirir, Apple nihai bir karara varır ve geliştiricinin sistemleri ortaya çıkan bildirimi alıp kendi kayıtlarını günceller.
Bunun sadeleştirilmiş bir yol olduğunu yinelemekte fayda var. Her iade talebi bir geliştirici bildirimi üretmez ve her satın alma türü bu akıştan aynı şekilde geçmez.
Müşteri İade Talep Ettikten Sonra Ne Olur?
Müşteri talebi gönderdikten sonra süreci Apple devralır. Talep açıldığı anda geliştirici otomatik olarak sürece dahil edilmez ve bu aşamada garantili bir ön uyarı yoktur. Geliştiricilerin bunun yerine güvenebileceği şey, bir şey değiştiğinde işleme bağlı ilgili olayları bildiren Apple'ın sunucu taraflı bildirim sistemidir.
İşlerin karıştığı nokta da burasıdır. İade, abonelik iptaliyle aynı şey değildir; banka üzerinden açılan bir ters ibrazla (chargeback) da aynı şey değildir. İptal yalnızca gelecekteki faturalandırmayı durdurur. İade, tamamlanmış bir satın almayı geri alır. Ters ibraz ise tamamen Apple'ın sistemi dışında, müşterinin kart kuruluşu aracılığıyla açılan bir itirazdır. Bu üçünü birbirinin yerine kullanılabilir gibi ele alan backend mantığı, er ya da geç bir yerde yetkilendirmeleri veya geliri yanlış sınıflandıracaktır.
Apple İade Taleplerini Nasıl İnceler?
Apple her iade talebini kendi içinde inceler ve geliştiricilerin sağlamayı tercih ettiği veriler dâhil birden fazla kaynaktan gelen bilgiyi değerlendirebilir. Apple'ın bu iç incelemeyi gerçekte nasıl değerlendirdiği kamuya açık değildir ve bu yazı da dâhil hiçbir makale ayrıntıları bildiğini dürüstçe iddia edemez.
Belgelenmiş olan şey, Apple'ın kendi destek materyallerinde de belirtildiği gibi, sonucu geliştiricilerin kontrol etmediğidir. Apple'ın incelemesi, desteklenen mekanizmalar aracılığıyla gönderilen tüketim bilgisinden yararlanabilir; ancak bu bilgiyi göndermek Apple'ı iadeye ya da redde doğru itmez. Geliştiriciler, Apple'ın baştan sona sahibi olduğu bir inceleme sürecindeki girdilerden yalnızca biridir.
Önemli Not Geliştiricinin bu süreçteki görevi, iade lehine ya da aleyhine savunma yapmak değildir. Görevi, iş akışı istediğinde ve isterse Apple'ın incelemesinin doğru satın alma ve tüketim verilerine erişebilmesini sağlamaktır. |
CONSUMPTION_REQUEST Nedir?
CONSUMPTION_REQUEST, bir iade talebi incelemedeyken ve Apple geliştiriciden daha fazla bağlam istediğinde Apple'ın App Store Server Notifications V2 üzerinden gönderebildiği özel bir bildirimdir. Geliştiricinin yapılandırdığı bildirim endpoint'ine, o belirli işleme bağlı olarak ulaşır.
Her iade talebi bir tane tetiklemez. Apple bunu tüm işlemler için değil, ilgili durumlar için geçerli olarak tanımlar; dolayısıyla her iadenin bir CONSUMPTION_REQUEST üreteceği varsayımıyla kurulan bir iş akışında boşluklar olacaktır.
Geliştirici bir tane aldığında Apple'ın belgeleri tanımlı bir üretim yanıt penceresinden söz eder; güncel geliştirici belgelerinde bu süre yaygın olarak 12 saat olarak anılır, ancak ikinci elden bir özete güvenmek yerine bu rakamı doğrudan Apple'ın kendi belgelerinden teyit etmekte fayda var. Geliştiricinin ilgili tüketim verisi yoksa ya da bunu paylaşmak için müşterinin onayı yoksa, doğru hamle yanlış veya yetkisiz bir şey göndermek yerine yanıt vermemektir.
Geliştiriciler Apple'a Hangi Bilgileri Gönderebilir?
Tüketim bilgisi, geliştiricinin zaten elinde bulunan verilerden oluşturulur ve Apple'ın incelemesine belirli bir satın almanın gerçekte nasıl kullanıldığına dair ek bağlam sağlar. Apple'ın Send Consumption Information endpoint'i; müşterinin bu verilerin paylaşılmasına onay verip vermediği, satın alınan içeriğin teslimat durumu, müşterinin bunun ne kadarını gerçekten tükettiği, örnek ya da deneme içeriğinin söz konusu olup olmadığı, müşterinin hesap durumu ve geliştiricinin o işlem için kendi iade tercihi gibi alanları destekler.
Bu alanların hiçbiri kapsamlı görünmek adına doldurulmak için orada değildir. Apple her birinin neyi temsil ettiği konusunda nettir; belirsiz ya da genel değerler incelemeye yardımcı olmaz, yalnızca gürültü ekler. Belirli ayrıntıların paylaşılabilmesi için önce müşteri onayı gerekir; bu da onay durumunu sonradan eklemek yerine baştan itibaren satın alma verileriyle birlikte takip etmek için iyi bir gerekçedir. Bu parçanın daha geniş yanıta nasıl oturduğunu yakından görmek için RefundSensor'ın CONSUMPTION_REQUEST iş akışı hakkındaki yazısı konuyu daha ayrıntılı ele alıyor.
Geliştiriciler İade İncelemesi Sırasında Neyi Kontrol Edebilir?
Bu tablo, Apple'ın yetkisinin nerede bittiğini ve geliştiricinin gerçek sorumluluğunun nerede başladığını gösteriyor.
Apple Kontrol Eder | Geliştirici Kontrol Eder |
Nihai iade kararı | Tüketim bilgisi gönderilip gönderilmeyeceği |
Bir talebin incelemede olup olmadığı | Gönderilen işlem ve kullanım verilerinin doğruluğu |
İnceleme sonucunun zamanlaması | Müşteri verisi paylaşmadan önce onay takibi |
İade politikası ve uygunluk kriterleri | Ortaya çıkan bildirime backend yanıtı |
Hangi taleplerin CONSUMPTION_REQUEST tetikleyeceği | Dahili kayıt tutma ve yetkilendirme güncellemeleri |
Geliştiriciler bir iadeyi onaylayamaz ya da reddedemez, Apple'ın politikasını geçersiz kılamaz veya daha ayrıntılı veri göndererek belirli bir sonucu garanti edemez. Kontrol edebildikleri şey, Apple'ın incelemesinin üzerinde çalışacağı bilginin kalitesi ve zamanında sunulması ile karar geldiğinde kendi sistemlerinin nasıl tepki vereceğidir.
İade İzleme Uygulama Geliştiricileri İçin Neden Önemli?
İade izleme önemlidir, çünkü bildirim çoğu zaman bir işlemin durumunun gerçekten değiştiğine dair geliştiricinin aldığı tek sinyaldir. Kaçırırsanız yetkilendirmeler iadeden sonra da aktif kalabilir, abonelik durumu senkronizasyondan çıkabilir ya da gelir raporlaması sessizce gerçeklikle örtüşmemeye başlayabilir.
En temel düzeyde bu, ilgili App Store Server Notifications olaylarını dinlemek, her birini doğru işlem ve müşteri kaydıyla eşleştirmek ve yetkilendirme ile abonelik durumunu buna göre güncellemek anlamına gelir. Aynı zamanda yalnızca tekil olaylara tepki vermek için değil, zaman içinde bir ürün, plan kademesi ya da satın alma türü genelindeki iade örüntülerini fark etmek için de iade sonuçlarının sürekli bir kaydını tutmak demektir.
İade Yönetimi Ölçeklendikçe Nerede Zorlaşır?
Bu sıralama, tek bir iade olayının Apple'ın sisteminde nasıl ilerlediğini ve geliştiricinin gerçekte nerede iş yapması gerektiğini gösteriyor.
Aşama | Ne Olur | Geliştiricinin Rolü |
Müşteri iade talep eder | Apple talebi alır | Doğrudan bir işlem gerekmez |
Apple talebi inceler | Apple uygunluğu değerlendirir | Olası bir bildirimi bekleyin |
CONSUMPTION_REQUEST gönderilir (varsa) | Apple destekleyici veri ister | Tüketim bilgisini pencere içinde hazırlayıp gönderin |
Apple karar verir | İade onaylanır veya reddedilir | Sonuç üzerinde kontrol yok |
Bildirim iletilir | Apple sonucu teyit eder | Yetkilendirmeleri, kayıtları ve gelir verilerini güncelleyin |
Düşük işlem hacminde küçük bir ekip bu bildirimleri elle takip edebilir. Bir uygulamanın birden fazla satın alma türüne ve bölgeye yayılmış binlerce aylık işlemi olduğunda bu yöntem işlemez hâle gelir. Her CONSUMPTION_REQUEST'i doğru işlemle elle eşleştirmek, yanıt penceresini takip etmek ve iade sonuçlarını gelir raporlarıyla mutabık kılmak gerçek bir operasyonel yüke dönüşür; buradaki hatalar da genellikle ya kaybolan yetkilendirmeler ya da kimsenin açıklayamadığı gelir olarak ortaya çıkar.
Önemli Not İade yönetimindeki operasyonel risk genellikle tek bir kaçırılan bildirim değildir. Burada gecikmiş bir yanıt, şurada eşleşmemiş bir işlem gibi küçük boşlukların yavaş yavaş birikmesi ve sonunda kimsenin nedenine ulaşamadığı bir mutabakat sorunu olarak ortaya çıkmasıdır. |
Son Düşünceler
Yapılandırılmış bir Apple iade yönetimi çözümünün önem kazandığı yer burasıdır; Apple'ın kararını etkilemenin bir yolu olarak değil, sonucu doğru şekilde ele almanın altyapısı olarak. Pratikte bu genellikle otomatik bildirim izleme, güvenilir işlem eşleştirme, tüketim bilgisini Apple'ın penceresi içinde hazırlayıp göndermek için tanımlı bir süreç ve sonuçların gelir kayıtlarıyla karşılaştırılarak takip edilmesi anlamına gelir. Bunların hiçbiri Apple'ın kararını değiştirmez. Değiştirdiği şey, karar zaten verildikten sonra geliştiricinin kendi sistemlerinin doğru kalıp kalmayacağıdır. Bu iş akışını kuruyorsanız parçaların nasıl bir araya geldiğini görmek için RefundSensor'ın platform genel bakışı makul bir başlangıç noktasıdır.
Bu Kuralların Belgelendiği Yerler
● Apple Destek: Uygulamalar veya içerikler için iade talep etme
● Apple Geliştirici Belgeleri: Send Consumption Information
● Apple Geliştirici Belgeleri: App Store Server Notifications
Sık sorulan sorular
Bir müşterinin App Store satın alması için parasını geri almak amacıyla doğrudan Apple'a ilettiği taleptir. Kayıtlı satıcı (merchant of record) olarak inceleme ve karar uygulama geliştiricisine değil, Apple'a aittir.
Geliştiriciler süreci çoğunlukla sunucu bildirimleri üzerinden yaşar. Apple talebi kendi başına inceler ve karar vermeden önce destekleyici tüketim verisine ihtiyaç duyarsa geliştiriciyi bilgilendirebilir.
Evet. Bir iadenin onaylanıp onaylanmayacağına yalnızca Apple karar verir. Geliştiriciler bu kararı belgelenmiş hiçbir mekanizma aracılığıyla onaylayamaz, reddedemez veya geçersiz kılamaz.
App Store Server Notifications V2 üzerinden gönderilen ve geliştiriciden, iade incelemesinde olan bir işlem için isteğe bağlı olarak tüketim bilgisi sağlamasını isteyen bir bildirimdir.
Apple bunu her iade talebi veya her satın alma türü için değil, ek bağlamın incelemeye katkı sağlayabileceği ilgili iade talepleri için gönderir.
Geliştiriciler, Apple'ın Send Consumption Information endpoint'i üzerinden teslimat durumu, kullanım ayrıntıları, müşteri onay durumu ve kendi iade tercihi gibi tüketim bilgilerini gönderebilir.
App Store Server Notifications V2'yi dinleyerek, ilgili olayları doğru işlemlerle eşleştirerek ve yanıt sürelerini ile sonuçları tek bir yerde takip ederek.
Müşteriler reportaproblem.apple.com adresine gider, oturum açar, satın almayı seçer, bir neden belirler ve talebi gönderir. Durumu aynı sayfadan kontrol edebilirler. Bu, herhangi bir geliştirici aracından bağımsız olarak Apple'ın kendi tüketici sürecidir.
Bildirim işleme, işlem eşleştirme ve tüketim verisi hazırlamayı tek bir iş akışında birleştirerek; böylece her işlemi elle takip etmeden yanıtlar Apple'ın penceresi içinde gönderilir.






