Hesap Silme Zorunluluğu Nedir?
Eğer uygulamanız kullanıcılara hesap oluşturma imkanı sunuyorsa, aynı zamanda hesaplarını silme imkanı da sunmak zorundasınız. Bu kural hem Apple hem Google tarafından uygulanıyor ve istisnası yok. Hesap silme özelliği sunmayan uygulamalar review sürecinde doğrudan reddediliyor.
Apple bu kuralı Haziran 2022'de yürürlüğe koydu, Google ise Aralık 2023'te uygulamaya başladı. 2026 itibarıyla her iki platform da bu konuda sıfır tolerans politikası izliyor.
Hangi Uygulamalar Etkileniyor?
Kural basit: hesap oluşturmaya izin veren her uygulama bu kurala tabi. Buna dahil olan senaryolar:
- Email ve şifre ile kayıt
- Sosyal medya ile giriş (Google, Apple, Facebook Sign-In)
- Telefon numarası ile kayıt
- Üçüncü parti auth servisleri (Firebase Auth, Auth0 vb.)
Hesap oluşturmayan uygulamalar (hesapsız kullanılan araçlar, oyunlar vb.) bu kuraldan muaf.
Dikkat: "Sign in with Apple" kullansanız bile hesap silme özelliği sunmak zorundasınız. Apple Sign-In kullanmak bu kuraldan muaf tutmuyor.
Platform Kuralları
Apple - Guideline 5.1.1(v)
Apple'ın App Store Review Guidelines 5.1.1(v) maddesi açıkça şunu belirtiyor:
- Uygulama içinden hesap silme başlatılabilmeli
- Kullanıcı silme talebinde bulunduktan sonra hesap ve ilişkili veriler silinmeli
- Silme işlemi makul bir sürede tamamlanmalı
- Kullanıcıya silme süreci hakkında bilgi verilmeli
Apple özellikle hesap silme seçeneğinin uygulama içinde kolay bulunabilir olmasını istiyor. Kullanıcıyı web sitesine yönlendirmek veya destek ekibine mail attırmak kabul edilmiyor.
Google - User Data Policy
Google'ın User Data politikası şunları gerektiriyor:
- Uygulama içinden hesap silme talebi gönderilebilmeli
- Alternatif olarak web üzerinden silme imkanı sunulabilir (Google burada daha esnek)
- Silme işlemi 60 gün içinde tamamlanmalı (ancak 30 gün öneriliyor)
- Kullanıcıya silme süreci ve sonuçları hakkında bilgi verilmeli
- Data Safety formunda hesap silme imkanı beyan edilmeli
30 Gün Kuralı
Her iki platform da hesap silme talebinden sonra makul bir süre içinde verilerin gerçekten silinmesini bekliyor. Genel kabul görmüş standart 30 gündür.
Bu 30 günlük sürede:
- Kullanıcıya "Hesabınız 30 gün içinde kalıcı olarak silinecektir" bildirimi yapılmalı
- Kullanıcı bu süre içinde fikir değiştirip hesabını kurtarabilmeli (grace period)
- 30 gün sonunda tüm kişisel veriler kalıcı olarak silinmeli veya anonimleştirilmeli
- Yasal zorunluluklar nedeniyle tutulması gereken veriler (fatura bilgileri, vergi kayıtları vb.) bu kuralın dışında
Backend Implementasyonu
Soft Delete Yaklaşımı
Doğrudan veritabanından silmek yerine soft delete yaklaşımı öneriliyor:
- Kullanıcı silme talebinde bulunur
- Hesap "deletion_requested" durumuna geçer
- deleted_at alanına tarih yazılır
- Kullanıcı artık giriş yapamaz
- 30 günlük grace period başlar
- 30 gün sonunda otomatik bir job tüm verileri siler
Silinmesi Gereken Veriler
Hesap silindiğinde kaldırılması gereken veriler:
- Kişisel bilgiler (isim, email, telefon)
- Profil fotoğrafı ve medya dosyaları
- Kullanıcı tarafından oluşturulan içerik (tercihe göre)
- Push notification token'ları
- Cihaz bilgileri
- Aktivite logları (kişisel olanlar)
- Üçüncü parti servislerdeki veriler (analytics, crash reporting vb.)
Uygulama İçi Tasarım
Silme Akışı
Kullanıcı deneyimi şu akışı izlemeli:
- Ayarlar sayfasında "Hesabı Sil" seçeneği
- Silme işleminin sonuçlarını anlatan bilgilendirme ekranı
- Onay adımı (şifre girişi veya "Silmek istediğime eminim" butonu)
- Son onay dialog'u
- Silme talebinin alındığını bildiren ekran
- Otomatik çıkış (logout)
Dikkat Edilmesi Gerekenler
- Silme seçeneğini gizlemeyin veya bulmayı zorlaştırmayın
- Çok fazla adım eklemeyin (Apple bunu caydırma taktiği olarak değerlendiriyor)
- Silme icin destek ekibine yazmayı zorunlu tutmayın
- Silme icin ek ödeme veya abonelik iptali ön koşulu koymayın
Sık Karşılaşılan Rejection Nedenleri
- Hesap silme seçeneği uygulama içinde yok
- Silme seçeneği var ama sadece web'e yönlendiriyor (Apple bunu kabul etmiyor)
- Silme icin destek ekibine email atmak gerekiyor
- Silme butonu gizlenmiş veya bulmak zor
- Silme talebinden sonra veriler gerçekten silinmiyor
- Data Safety formunda hesap silme imkanı "Hayır" olarak beyan edilmiş
Test Checklist'i
Submission öncesi şu kontrolleri yapın:
- Hesap silme seçeneği uygulama içinden erişilebilir
- Silme akışı 3-4 adımda tamamlanıyor
- Kullanıcıya silme sonuçları hakkında bilgi veriliyor
- Onay adımı mevcut (yanlışlıkla silmeyi önlemek icin)
- Silme sonrası kullanıcı otomatik çıkış yapıyor
- Backend'de soft delete mekanizması çalışıyor
- 30 gün sonunda veriler kalıcı olarak siliniyor
- Data Safety formunda hesap silme imkanı beyan edilmiş
- Aktif abonelik uyarısı gösteriliyor