MotoMap

Gizlilik Politikası

Hukuki inceleme notu. Bu metni bir avukat yazmadı ve bir avukat incelemedi. İçeriği uygulamanın kaynak kodundan okundu: hangi tabloya ne yazıldığı, hangi isteğin nereye gittiği tek tek doğrulandı. Ama doğru olmak ile hukuken yeterli olmak aynı şey değil. Yayına almadan önce metin KVKK, GDPR ve tüketici mevzuatı yönünden bir hukukçunun elinden geçmeli. Köşeli parantezli alanlar doldurulmadan bu metin yürürlüğe giremez.

Bu sürüm 7 Eylül 2026'da yazıldı. Yürürlük tarihi: 3 Eylül 2026.

1. Bu metin ne yapıyor

MotoMap'in senden hangi veriyi aldığını, nereye yazdığını, kime gönderdiğini, ne kadar tuttuğunu ve bunun üzerinde ne yapabileceğini anlatır. Her bölüm koddaki karşılığını adıyla söyler; iddia ile davranış ayrışırsa yanılan metindir ve düzeltilmesi gereken de metindir.

Toplamadığımız veriyi yazmadık. Topladığımız veriyi de atlamadık.

2. Veri sorumlusu

AlanDeğer
Unvan[ŞİRKET UNVANI]
Adres[ADRES]
MERSİS[MERSİS NO]
KEP[KEP ADRESİ]
VERBİS kaydı[VERBİS SİCİL NO]
E-postainfo@motomap.co

Bu satırlar bir tüzel kişilik kurulup VERBİS kaydı yapılana kadar boş. Boş kaldığı sürece metin yayına alınamaz.

3. Hesabını açtığında alınanlar

users tablosu.

VeriNeden var
E-posta adresiHesabın kimliği. Giriş, parola sıfırlama ve zorunlu bildirimler bu adrese dayanır.
Parolanın bcrypt özetiParolanın kendisi hiçbir yerde durmaz. Özet 12 turlu bcrypt ile üretilir.
Görünen ad, kullanıcı adı, avatar bağlantısı, kısa tanıtımProfilinde ve topluluk gönderilerinde görünür. Hepsi isteğe bağlı.
Şehir, ülkeProfil ve bölgesel içerik. İsteğe bağlı.
Sürüşe başlama yılı, ehliyet türü, toplam kilometreProfil. İsteğe bağlı.
Dil, mesafe birimi, tema, bildirim tercihiUygulama ayarların.
Hesabın hangi yoldan açıldığıDestek ve görüntüleme için. Yetki kararı buradan verilmez.
Oluşturma, güncelleme ve son giriş zamanıHesabın yaşı ve etkinliği.

Doğum tarihi sorulmuyor. Telefon numarası sorulmuyor. Kimlik numarası sorulmuyor. Kodda bu alanların hiçbiri yok.

4. Sosyal hesapla giriş yaptığında alınanlar

auth_identities tablosu. Google, Apple veya Facebook ile girersen sağlayıcının imzalı kimlik belirtecinden şu alanlar okunur ve saklanır:

VeriNot
Sağlayıcı adıgoogle, apple veya facebook.
Sağlayıcının verdiği değişmez kullanıcı kimliğiEşleme yalnızca bu değere bakar.
Bağlanma anındaki e-postaEşlemede kullanılmaz. Yalnızca destek ve denetim için saklanır.
Görünen ad ve avatar bağlantısıProfili ilk kez doldurmak için.
Bağlanma ve son giriş zamanı

Apple ile girerken kendi adresini gizlemeyi seçersen Apple bize gerçek adresini değil bir özel yönlendirme adresi verir. Bizim gördüğümüz o adrestir.

Sağlayıcının belirteci sunucuda doğrulanır. İmzayı doğrulamak için sağlayıcının açık anahtarları okunur; belirtecin kendisi sağlayıcıya geri gönderilmez.

5. Oturumların ve cihazın

user_sessions tablosu. Her girişte bir satır açılır:

VeriNot
Yenileme belirtecinin özetiBelirtecin kendisi saklanmaz.
Cihaz kimliği, cihaz adı, cihaz türü, uygulama sürümüUygulamanın gönderdiği kadarı.
IP adresiİsteğin geldiği adres.
Tarayıcı ve uygulama tanıtım dizesi
Açılma, son kullanım ve bitiş zamanıErişim belirteci 30 dakika, yenileme belirteci 30 gün geçerlidir.

Çıkış yaptığında oturum kapatılır. Süresi dolmuş oturum satırlarını temizleyen bir zamanlanmış iş şu anda yok; satır, hesap silinene kadar durur. Bunu biliyoruz ve düzeltilecek işler arasında.

Sunucu ayrıca her isteği erişim günlüğüne yazar: istek kimliği, IP adresi, HTTP yöntemi, yol, durum kodu ve süre. Bu günlük veritabanında değil sunucunun günlük dosyasındadır.

6. Garajındaki motosikletler

motorcycles tablosu. Marka, model, yıl, motor hacmi, tür, ağırlık, tork, lastik türü, renk, takma ad, toplam kilometre, toplam rota sayısı ve fotoğraf bağlantısı. Rotalama motoru bunlardan hacim, ağırlık, tork ve lastik türünü gerçekten kullanır.

İki alan ayrıca duruyor: şasi numarası ve plaka. İkisi de isteğe bağlı, ikisi de rotalamada kullanılmıyor ve ikisi de kişiyi doğrudan işaret edebilen veri. Girme zorunluluğun yok. Girersen yalnızca senin garaj kaydında durur, hiçbir üçüncü tarafa gitmez.

7. Rota geçmişin

route_history tablosu. Bir rota hesapladığında saklananlar: başlangıç ve varış koordinatları, bunların yazılı adları, sürüş modu, mesafe, süre, şerit süzülmesiyle geçilen mesafe, keyifli ve tehlikeli viraj sayısı, ortalama eğim, güvenlik puanı, hava durumu, yol yüzeyi, favori işareti ve tamamlanma bilgisi.

Başlangıç ve varış koordinatları kişinin nerede yaşadığını ve nereye gittiğini gösterir. Bu kaydı hassas kabul ediyoruz.

8. Sürüş telemetrisi ve rıza

Bu bölüm en dikkatli okunması gereken bölüm. Olduğundan iyi göstermemek için sınırlarını da yazıyoruz.

Ne toplanıyor

ride_telemetry_points tablosu. Bir sürüş boyunca, ayarlanmış aralıklarla: zaman damgası, enlem, boylam, hız, yön, yol sınıfı, hacim/kapasite oranı ve aynı noktadaki araba hızı. Her satır bir sürüş kimliğine ve senin kullanıcı kimliğine bağlıdır.

Neden

Şerit süzülmesi avantajının kestirimi. Motosikletin arabaya göre kazandığı sürenin yol sınıfına ve sıkışıklığa nasıl bağlı olduğu, ancak gerçek sürüşlerden ölçülerek savunulabilir. Kestirici bu üçlüyü tüketir: yol sınıfı, sıkışıklık kovası, hız farkı.

Rıza kapısı

Sunucu rıza olmadan tek satır yazmaz. POST /api/telemetry/batch ucu, istekteki rıza alanı doğru değilse 422 döner ve hiçbir satır oluşturmaz. Bu bir arayüz nezaketi değil, uç noktanın davranışı.

Rızanın sınırları, olduğu gibi

Üç şeyi açıkça söylememiz gerekiyor:

  1. Nokta kaydı kimliğe bağlı yazılır. Kestirici yalnızca üç değeri kullanıyor olsa da satırın kendisinde kullanıcı kimliği durur. Kimliksizleştirme yazma anında değil, sonraki toplu işleme katmanında yapılır. O katman çalışana kadar nokta kimliklidir.
  2. Rıza her istekle birlikte taşınır. Sunucuda tarihli ayrı bir rıza kütüğü yok. Saklanan her satır rızalıdır çünkü rızasız satır hiç oluşmaz; ama "şu tarihte rıza verdi, şu tarihte geri aldı" kaydı tutulmuyor. Rızanı geri çekmek bundan sonraki kaydı durdurur, daha önce yazılmış satırları silmez. Onları silmek için hesabını sil ya da bize yaz.
  3. Rıza ekranı sürüşün kendi yolunda çıkar. Bir sürüşü başlattığında, konum izni istenmeden önce, ne kaydedileceğini yazan bir ekran açılır ve kutuyu işaretlemeden devam edilmez. "Şimdi değil" dersen sürüş yine başlar, yalnızca kaydedilmez. Verdiğin cevap saklanır ve bir daha sorulmaz; her zaman Hesap ekranındaki Sürüş kaydı satırından değiştirebilirsin.

Bu madde 7 Eylül 2026'da değişti. Öncesinde burada "uygulamada bugün bu kaydı başlatan bir ekran yok, dolayısıyla kimse farkında olmadan telemetri göndermiyor, çünkü hiç göndermiyor" yazıyordu. Ekran yazıldığı gün bu cümle yanlış oldu — ve yanlış olduğu yön önemli: topladığımız veriyi olduğundan az gösteriyordu. Bir gizlilik metninin yapabileceği en kötü hata budur, o yüzden düzeltmesi tarihiyle birlikte burada duruyor.

Konum izni ayrı bir şey. Uygulama haritayı ve rotayı çizmek için konum izni ister. Bu izni vermek telemetri kaydına rıza vermek anlamına gelmez.

9. Bildirimler

notifications tablosunda sana gösterilen bildirimin başlığı, gövdesi ve okunma durumu durur. push_tokens tablosunda cihazının bildirim jetonu ve cihaz türü durur. Bildirimleri ayarlardan kapatabilirsin.

10. Yüklediğin görseller

Profil ve motosiklet fotoğrafları. Kabul edilen türler jpg, png, webp ve gif; üst sınır dosya başına 10 MB. Dosya, yapılandırmaya göre sunucunun diskinde ya da bir S3 kovasında durur. Dosya adı kullanıcı kimliğiyle birlikte üretilir.

11. Toplulukta bıraktıkların

Gönderiler, yorumlar, topluluk üyelikleri, yol bildirimleri ve bildirim oyları, puan hareketleri, rozetler ve katıldığın meydan okumalar. Bunların hepsi hesabına bağlıdır. Yol bildirimlerinin özel durumu için 15. bölüme bak.

12. Ödeme

Kart bilgini hiçbir zaman görmüyoruz. Uygulama içi satın alma App Store veya Google Play üzerinden, web satın alması Stripe üzerinden yürür. Bize gelen şey mağazanın doğruladığı abonelik durumudur.

subscriptions tablosunda saklananlar: platform, mağazanın aboneliğe verdiği kimlik, plan anahtarı, katman, dönem, durum, deneme bilgisi, dönem sonunda yenilenip yenilenmeyeceği, başlangıç ve bitiş zamanı, fiyat, para birimi ve mağazadan gelen ham yanıt gövdesi. Ham gövde bir anlaşmazlıkta geriye dönüp bakabilmek için saklanır.

13. Kime ne gidiyor

KimNe gidiyorNeredenNeden
Google (giriş)Giriş isteğin ve cihaz bilgin Google'a; bize sub, e-posta, ad ve avatar dönerCihazSosyal giriş
Google (haritalar)Cihazının IP adresi ve baktığın harita alanıCihazHarita çizimi
Google (Places)Koordinat, yarıçap ve mekân türüSunucuYakıt istasyonu ve mola noktası araması
Apple (giriş)Giriş isteğin; bize sub ve varsa özel yönlendirme adresi dönerCihazSosyal giriş
Apple (ödeme)Satın alma; bize abonelik durumu dönerCihaz ve sunucuAbonelik
Meta (giriş)Giriş isteğin; bize sub, ad, avatar ve izin onaylıysa e-posta dönerCihazSosyal giriş
Google Play (ödeme)Satın alma jetonu; bize abonelik durumu dönerCihaz ve sunucuAbonelik
Stripe (yalnız web)Fiyat kimliği, kullanıcı kimliğin, e-postan ve dönüş adresleriSunucuWeb ödemesi
HEREYüklü harita bölgesinin sınır kutusuSunucuCanlı trafik akışı
CARTOCihazının IP adresi ve baktığın döşeme koordinatlarıCihazHarita döşemeleri

Üç noktanın altını çiziyoruz.

Places anahtarı yalnızca sunucuda durur; uygulama Google Places'e doğrudan gitmez. Yanıtlar önbelleğe alınır. Koordinatlar en çok 24 saat tutulur ve "şu an açık" bilgisi hiç önbelleğe alınmaz.

HERE'e giden şey senin konumun ya da kimliğin değil, yüklü harita grafının sınır kutusudur. İstek sunucudan gider; cihazın HERE ile hiç konuşmaz.

Stripe'a kart bilgin bizden gitmez çünkü bize hiç gelmez. Ödeme sayfası Stripe'ındır.

Uygulamada reklam ağı yok. Üçüncü taraf analitik veya çökme raporlama paketi de yok. pubspec.yaml bunu doğrular.

14. Ne kadar saklanıyor

Dürüst cevap: veriyi süresi dolduğu için silen zamanlanmış bir iş şu anda kodda yok. Hesabın açık kaldığı sürece yukarıdaki kayıtlar durur. Süresi geçmiş oturum satırları da yerinde kalır.

Bunun düzelmesi gereken bir eksik olduğunu biliyoruz. Saklama süreleri tanımlandığında bu bölüm sürelerle birlikte güncellenecek. O zamana kadar tek gerçek silme yolu hesabını silmen ya da bize yazman.

15. Hesabını silmek

Silme uygulama içinden yapılır ve iki adımlıdır. Birinci adım hiçbir şey silmez, yalnızca neyin gideceğini sayar ve 15 dakika geçerli bir onay kodu verir. İkinci adım o kodu ister.

Silme gerçektir. Kullanıcı satırı gider, ona bağlı kayıtlar veritabanı seviyesindeki kademeli silme kurallarıyla birlikte gider: profil, motosikletler, rota geçmişi, telemetri noktaları, topluluk gönderileri ve yorumları, üyelikler, bildirim oyları, puanlar, rozetler, meydan okumalar, bildirimler, cihaz jetonları, bağlı hesaplar, açık oturumlar ve abonelik kayıtları.

Bir şey silinmez, kimliksizleştirilir: yazdığın yol bildirimleri. Bildirimin sahip alanı boşaltılır, bildirim durur. Sebebi şu: o bildirime güvenip yol değiştiren başka sürücülerin verisini de götürmek doğru olmaz. Sana "her şeyin gitti" demek yanlış olurdu, o yüzden demiyoruz.

Mağaza aboneliğin hesabınla birlikte iptal olmaz. App Store ve Google Play abonelikleri yalnızca mağaza hesabından iptal edilebiliyor ve bunu senin yerine yapamıyoruz. Silmeden önce aboneliğini mağazadan iptal et; etmezsen ödeme devam eder.

Uygulamaya erişemiyorsan ya da hesabını silmeden verinin silinmesini istiyorsan veri silme sayfası yolu anlatır.

16. Hakların

KVKK 11. madde kapsamındaki haklarını nasıl kullanacağın aydınlatma metninde yazılı.

17. Çocuklar

MotoMap ehliyetli sürücüler için yazıldı ve 16 yaşın altındakilere yönelik değil. Bilerek 16 yaşın altında birine hesap açmıyoruz.

Bunu ölçen bir şey de yok: uygulama doğum tarihi sormuyor ve bir yaş kapısı taşımıyor. Yani bu bir taahhüt değil, bir yönelim beyanı. 16 yaşın altında bir kullanıcının hesabından haberdar olursak hesabı sileriz.

18. Güvenlik

Parolalar 12 turlu bcrypt ile özetlenir. Yenileme belirteçleri veritabanında özet olarak durur. Mağaza anahtarları, Places anahtarı ve HERE anahtarı yalnızca sunucuda tutulur; uygulama derlemesine gömülmez. Mağaza bildirimlerinin imzası doğrulanır ve kök sertifika tanımlanmadan doğrulama hiç açılmaz.

Hiçbir sistem kırılmaz değildir. Bir ihlal olursa KVKK'nın öngördüğü süre içinde Kurul'a ve etkilenen kullanıcılara bildiririz.

19. Bu metin değişirse

Değişiklikler bu sayfada yayımlanır ve üstteki tarih güncellenir. Esaslı bir değişiklikte uygulama içinden ve e-postayla haber veririz.

20. İletişim

info@motomap.co