Kodumuzun içindeki hukuk
Giriş yapmadan çalışması gereken bir fesih butonu. Seni asla reddetmemesi gereken bir form. Hukuki yükümlülükler bizim için neden kalıp metin değil, mimari.

Premium'u satın alınabilir hale getirdiğimizde, hukuki kısmın alt bilgide birkaç sayfa metin olduğunu varsaymıştık. Bu yanlıştı. Bazı yükümlülükler bir metne hiç yazılamaz, çünkü bir özelliğin nasıl yapılması gerektiğini belirlerler.
Bunun özellikle netleştiği dört örnek. En baştan, bunun ne olduğu açık olsun: bu bizim uygulamamızın bir açıklaması, hukuki tavsiye değil. Aşağıdaki kurallar, AlphaCloud'un faaliyet gösterdiği yer olan Alman hukukudur.
Girişe izin verilmeyen fesih butonu
Alman Medeni Kanunu'nun 312k. maddesi, internet üzerinden kurulan sözleşmelerin doğrudan erişilebilir bir fesih yolu sunmasını şart koşar. Bu da sonradan bir ifadeyle ekleyemeyeceğin gereklilikler doğurur:
- Sayfa giriş yapmadan çalışmalı
- Her sayfanın alt bilgisinde yer almalı
- İki adım gerektirir: giriş, ardından açıkça etiketlenmiş bir butonla onay
- Metin biçiminde bir alındı teyidi gönderilmeli
Son madde mimariyi belirliyor. Fesih tek taraflı bir beyandır ve karşı tarafa ulaştığında hüküm doğurur. Bu yüzden kimden gelirse gelsin her zaman kaydedilmeli ve onaylanmalı.
Form seni asla reddedemez
Bariz yaklaşımın neredeyse bize bir hataya mal olduğu yer burası.
Bariz yaklaşım: feshi ancak sunucu ID'si ve e-posta aktif bir abonelikle eşleşirse kabul etmek. Mantıklı geliyor ve iki kat yanlış.
Birincisi, e-postasını yanlış yazan ya da farklı bir adres veren gerçek bir müşteriyi dışarıda bırakırdı. Fesih beyanı ulaşmamış olurdu, abonelik yenilenir ve elinde denediğine dair bir kanıt kalırdı.
İkincisi, ve daha tatsız olan kısım bu: hata mesajının kendisi bir cevap olurdu. "Abonelik bulunamadı" cevabını alan herkes, bu sunucunun ödeme yapmadığını öğrenir. Bir Discord sunucu ID'si sır değildir, her üye onu okuyabilir. Form, başkalarının sunucularını yoklamak için bir araca dönüşürdü.
Çözüm, tek bir şey gibi hissettiren iki şeyi birbirinden ayırıyor:
| Koşul | |
|---|---|
| Beyanın ulaşması | koşulsuz, her zaman kaydedilir ve onaylanır |
| Feshin uygulanması | yalnızca gönderilen e-posta kayıtlı alıcıyla eşleştiğinde |
Diğer her şey bir kuyruğa düşer ve bir insan tarafından incelenir. Buna izin var, çünkü 312k. maddenin 2. fıkrası kimlik tespitine yarayan bilgilerin istenmesine açıkça izin veriyor. Yalnızca önüne bir giriş koymak yasak.
Aynı sebeple herkese açık yanıt, bitiş tarihini ancak kimlik doğrulandıktan sonra belirtebilir. Aksi halde onay yine bir kahine dönüşür.
Bilerek girişe bağlanan cayma
Hemen yanında, tam tersi şekilde yaptığımız bir özellik duruyor: kısmi iadeli cayma, bir girişin arkasında.
Bu bir çelişki değil. 312k. madde caymayı değil, feshi kapsıyor ve resmi olmayan yol açık kaldığı sürece çevrim içi bir cayma formu sunma yükümlülüğü hiç yok. Fark sonuçta: fesih geleceği etkiler, iade ise parayı şimdi hareket ettirir ve geri alınamaz.
Bundan çıkan ve yumuşatmadığımız üç kural:
Zorunlu gerekçe yok. 355. maddenin 1. fıkrası caymayı açıkça gerekçe gösterilmeden tanır. Alan isteğe bağlıdır ve istatistikler için zorunlu bir alan ne kadar cazip olsa da isteğe bağlı kalmalı.
14 günden sonra yalnızca otomatik yol reddedilir, beyanın kendisi asla. Müşteri usulüne uygun bilgilendirilmediyse süre on iki ay on dört güne kadar uzar. Genel bir "çok geç" bu yüzden yanlış olabilir.
Çifte ödemeye karşı koruma kötümser. İşaret, iade çalışmadan önce konur. İade sonra başarısız olursa işaret kalır ve bir insan devralır. İki kez ödeme yapmak, telafi edilemeyen tek sonuçtur.
Bir Discord özel mesajı kalıcı veri taşıyıcısı değildir
312f. maddenin 3. fıkrası, kalıcı bir veri taşıyıcısı üzerinde bir sözleşme teyidi şart koşar ve verilen onayı yansıtması gerekir.
Önce bir Discord özel mesajı gönderdik, çünkü müşterilerimiz zaten o kanalda. Bu yeterli değil. Bir özel mesaj, kontrol etmediğimiz bir platformda yaşar ve hükmün kastettiği anlamda ne saklanabilir ne de değiştirilemezdir.
Bu yüzden bir e-posta eklendi ve onunla birlikte rahatsız edici bir bağımlılık: e-posta erişim bilgileri ayarlı değilse, gönderim yalnızca kayda bir uyarı yazar ve yükümlülük yerine getirilmemiş olur. Yasal bir yükümlülüğün bir ortam değişkenine bağlı olması, farkında olunması gereken bir durum.
KDV yok ve bunun her yerde aynı şekilde yazması gerekiyor
AlphaCloud, Alman KDV Kanunu'nun 19. maddesi kapsamında bir küçük işletmedir. Fiyatlar nihai fiyatlardır, KDV asla gösterilmez.
Kulağa bir dipnot gibi geliyor ama aslında pek çok yerde bir tutarlılık görevi: fiyatlar sayfası, ödeme penceresi, koşullar, gizlilik politikası, fatura alt bilgisi ve ödeme sağlayıcısındaki yapılandırma, hepsi aynı şeyi söylemeli. Uzun süre basitçe yanlış olan bir "KDV hariç" ifadesi duruyordu.
Ve yapay zeka
Ağustos 2026'dan beri Avrupa Yapay Zeka Yasası'nın şeffaflık yükümlülükleri tam olarak uygulanıyor. Bir yapay zeka sistemiyle konuşan herkes bunu en geç ilk etkileşimde fark edebilmeli.
O incelemeden bizim için en önemli cümle: alt bilgideki bir hukuki sayfa muhtemelen bunu karşılamaz. Bilgilendirme, etkileşimin gerçekleştiği yerde, yani Discord mesajının kendisinde olmalı. Bu yüzden yapay zeka ticket desteğimiz kendiliğinden kendini tanıtıyor ve onu kapatmak için görünür bir butonu var. Ayrıntılı değerlendirmemiz yapay zeka şeffaflığı sayfasında.
Ortak nokta
Dört örneğin de şekli aynı: yükümlülük bir metin gibi görünüyordu ve aslında yapıya yönelik bir gereklilikti. Yanlış yerde bir giriş, fazla şey açığa çıkaran bir hata mesajı, yanlış kanalda bir onay, çifte ödemeye izin veren bir sıralama.
Bu yüzden artık hukuki metinleri bir şartname gibi okuyoruz ve diğer yönden de kontrol ediyoruz: kod gerçekten koşullarımızın söylediğini yapıyor mu? Tam da bu soruda iki gerçek uyuşmazlık bulduk ve onlar hakkında ayrı bir makale var.
Diğer yazılar
AlphaCloud'da neden neredeyse her şey ücretsiz kalıyor
Çoğu Discord botu en faydalı özelliklerini bir aboneliğin arkasına kilitler. Biz bilerek bunu yapmıyoruz ve bunun cömertlikle, göründüğünden daha az ilgisi var.
Perde Arkası4.000 Discord sunucusunu takip etmek: Grafana, PostHog ve bize gösterdikleri
Trafiğimizin yarısına sessizce yol açan bir döngü, günde üç milyon gereksiz istek ve bir dakika sonra biten bir saldırı. İzleme sistemimiz neleri görüyor ve neleri bilerek görmüyor.
Perde ArkasıBir botu 2.000'den fazla Discord sunucusunda çalıştırmak bize ne öğretti
Kodu yazarken varsaydığından farklı işleyen, ölçekle birlikte değişen dört şey.