WCAG 3.3.4 · AA Seviyesi · EN 301 549 9.3.3.4

Hata Önleme (Yasal, Finansal, Veri)

Yasal, finansal ve veri değiştiren gönderimlerin geri alınabilmesini, hatalar için kontrol edilmesini ya da önceden gözden geçirilip onaylanmasını ister.

Kısaca

Bir alışveriş sayfasındaki hata birkaç saniyeye mal olur. Bir ödemedeki, sözleşmedeki ya da silmedeki hata para, hak ya da yılların verisine mal olabilir. Yanlış yazan, yanlış okuyan ya da yanlış tıklayan, okuma ya da hareket engelli kişiler dahil insanların, hata kesinleşmeden önce yakalama şansına ihtiyacı vardır.

Bu kriter, yasal taahhüt ya da finansal işlem oluşturan, kullanıcının kontrol edebildiği verileri değiştiren ya da silen veya sınav yanıtlarını gönderen sayfalarda şunlardan en az birinin doğru olmasını ister: gönderimler geri alınabilir, veri hatalar için kontrol edilir ve kullanıcı düzeltebilir, ya da kesinleştirmeden önce bilgiyi gözden geçirme, onaylama ve düzeltme mekanizması vardır.

Neleri kapsar?

  • Hangi sayfalar: Kullanıcı için yasal taahhüt ya da finansal işlem oluşturan, bir veri depolama sisteminde kullanıcının kontrol edebildiği verileri değiştiren ya da silen veya kullanıcı sınav yanıtlarını gönderen sayfalar.
  • Geri alınabilir: Kullanıcı gönderimi geri alabilir; örneğin belirtilen süre içinde iptal ederek (G164) ya da silinen bilgiyi kurtararak (G99).
  • Kontrol edilir: Veri girdi hataları için kontrol edilir ve kullanıcı bunları düzeltebilir.
  • Onaylanır: Kesinleştirmeden önce bilgiyi gözden geçirme, onaylama ve düzeltme mekanizması vardır (G98, G155, G168).
  • Yalnızca biri yeterli: Üçünden en az biri. En yaygını bir gözden geçirme adımıdır.
  • Yasal taahhütler: Kredi, vasiyet ya da sözleşme gibi bağlayıcı bir yükümlülük ya da fayda oluşturan işlemler.
  • Finansal işlemler: İade edilemeyen biletler ya da hisse senedi emirleri gibi pahalı ya da değiştirilmesi zor alımlar ve işlemler.
  • Kullanıcının kontrol edebildiği veriler: İletişim bilgileri ya da geçmiş faturalar gibi kullanıcıların görüntüleyip değiştirmeyi ya da silmeyi seçebildiği bilgiler. İnternet günlükleri ve arama izleme verileri dahil değildir.
  • Orantı: Amaç, ciddi ve geri döndürülmesi zor sonuçları önlemektir; her rutin kayda onay eklemek değil.
  • Kapsam dışı: Hataları belirlemek 3.3.1'dir. Öneriler 3.3.3'tür.

Kimleri etkiler?

Yanlış yazabilen ya da bir hatayı gözden kaçırabilen okuma ya da hareket engelli kişiler. Baskı altında daha çok hata yapma olasılığı olan bilişsel engelli kişiler. Hata için tüm sayfayı tarayamayan ekran okuyucu kullanıcıları. Herkes; ciddi hatalara karşı güvence tüm kullanıcılara yardımcı olur.

EAA ve EN 301 549'da

Avrupa Erişilebilirlik Yasası (Direktif (AB) 2019/882) 28 Haziran 2025'ten sonra piyasaya sunulan kapsamdaki ürün ve hizmetler için geçerlidir. Yasanın 47. gerekçesi web siteleri ve mobil uygulamalar için dört ilkeyi sayar: algılanabilirlik, işletilebilirlik, anlaşılabilirlik ve sağlamlık. Ciddi hatalara karşı koruma, "anlaşılabilirlik" ilkesinin parçasıdır.

Teknik karşılığı EN 301 549 standardında bulunur. Standart, WCAG 3.3.4'i atıfla alır ve ortama göre ayrı maddelere dönüştürür.

WCAG 3.3.4'in EN 301 549'daki karşılıkları
MaddeOrtamNe ister?
9.3.3.4Web sayfalarıWeb içeriğinin WCAG 3.3.4 kriterini karşılamasını ister.
10.3.3.4Web dışı dokümanlar (PDF, Office dosyaları)Standardın kriteri dokümanlara uyguladığı yerlerde, dokümanlar önemli gönderimleri gözden geçirmeye, düzeltmeye ya da geri almaya izin vermelidir.
11.3.3.4Web dışı yazılım (yerel mobil uygulamalar)Yazılım, kullanıcıların yasal, finansal ve veri değiştiren gönderimleri geri almasına, kontrol etmesine ya da onaylamasına izin vermelidir.

Kriterin web dışı dokümanlara uygulanıp uygulanmadığı ve nasıl uygulandığı standardın 10. maddesinde belirtilir. Madde numaraları EN 301 549'un "9. + WCAG numarası" düzenine göredir. V3.2.1'de yazılım maddesi, açık ve kapalı işlevsellik için ayrı alt maddelere bölünmüştür. Kaynak gösterirken tam numaraları standarttan kontrol edin.

Standart sürümü: EN 301 549 V4.1.1 (Eylül 2026), WCAG 2.2'yi esas alan ve EAA için hazırlanan ilk sürümdür. Henüz AB Resmî Gazetesi'nde atıf almamıştır; bu nedenle EAA gereksinimlerini karşılamanın gönüllü teknik yolu olarak görülmelidir. Atıf yapıldığında EAA ile ilgili uygunluk karinesi sağlayacaktır. 3.3.4 kriterinin metni WCAG 2.1 ve 2.2'de aynıdır. AA düzeyinde bir kriterdir.

EAA bağlamında dikkat: Yasanın Madde 2/4 hükmü bazı içerikleri gereksinimlerin dışında bırakır; örneğin 28 Haziran 2025'ten önce yayımlanmış ofis dosya biçimleri ve bu tarihten sonra güncellenmeyen arşivler. Bu tarihten sonra yayımladığınız ya da değiştirdiğiniz içerik bu istisnaların kapsamında değildir.

Directive (EU) 2019/882, EUR-Lex, İngilizce, yeni sekmede açılır

Web için kod örnekleri

1. Ödemeden önce gözden geçirme sayfası (G98)

Kullanıcının girdiği her şeyi gösterin ve son adımdan önce düzeltmesine izin verin.

Hatalı
<form action="/pay"><!-- öde düğmesi hemen öder --></form>
Doğru
<h2>Siparişinizi gözden geçirin</h2>
<dl>…</dl>
<a href="/odeme">Siparişi değiştir</a>
<button type="submit">Onayla ve öde</button>

2. Onay kutusu (G155)

Gönder düğmesinin yanında, varsayılan olarak işaretsiz bir onay kutusu kullanıcıdan onay ister.

Hatalı
<button type="submit">Parayı gönder</button>
Doğru
<input type="checkbox" id="ok" required>
<label for="ok">Tutarın ve alıcının doğru olduğunu onaylıyorum.</label>
<button type="submit">Parayı gönder</button>

3. İptal için süre (G164)

Kullanıcının değiştirebileceği ya da iptal edebileceği bir süre belirtin.

Hatalı
<p>Sipariş verildi.</p>
Doğru
<p>Sipariş verildi. <a href="/siparisler">Siparişler</a> sayfanızdan 30 dakika içinde iptal edebilir ya da değiştirebilirsiniz.</p>

4. Silinen veriyi kurtarın (G99)

Kalıcı silmeyi geciktirin ya da silmenin geri alınabilmesi için günlük tutun.

Hatalı
deleteBtn.addEventListener("click", () => purge(item)); // kalıcı
Doğru
deleteBtn.addEventListener("click", () => {
  moveToTrash(item);
  showToast("Çöp kutusuna taşındı", { action: "Geri al", onAction: () => restore(item) });
});

5. Onay isteyin (G168)

Eylemin ne yapacağını açıklayın ve devam etmeyi sorun. Odak yönetimiyle gerçek bir iletişim kutusu kullanın.

Hatalı
<button onclick="deleteAccount()">Hesabı sil</button>
Doğru
<button type="button" id="del">Hesabı sil</button>
<dialog id="confirm" aria-labelledby="t">
  <h2 id="t">Hesabınız silinsin mi?</h2>
  <p>Bu, tüm verilerinizi kaldırır ve geri alınamaz.</p>
  <button>Vazgeç</button> <button>Sil</button>
</dialog>

6. Sınav katılımcılarına yanıtları gözden geçirtin (G98)

Bir sınav uygulaması, kullanıcıların göndermeden önce yanıtlarını gözden geçirmesine ve düzeltmesine izin vermelidir.

Hatalı
<button>Sınavı gönder</button> <!-- yanıtları gözden geçirme yok -->
Doğru
<h2>Yanıtlarınızı gözden geçirin</h2>
<ol>…</ol>
<button type="submit">Sınavı gönder</button>

Mobil için kod örnekleri

Yerel uygulamalar ödemeleri, silmeleri ve onayları yönetir. Bir gözden geçirme adımı, net bir sonuç içeren bir onay ya da bir geri alma ekleyin.

iOS (SwiftUI)

import SwiftUI

struct AccountView: View {
    @State private var confirmDelete = false

    var body: some View {
        Button("Hesabı sil", role: .destructive) { confirmDelete = true }
            .confirmationDialog("Hesabınız silinsin mi?",
                                isPresented: $confirmDelete,
                                titleVisibility: .visible) {
                Button("Sil", role: .destructive) { deleteAccount() }
                Button("Vazgeç", role: .cancel) { }
            } message: {
                Text("Bu, tüm verilerinizi kaldırır ve geri alınamaz.")
            }
    }
}

Android (Jetpack Compose)

import androidx.compose.material3.*
import androidx.compose.runtime.*

@Composable
fun DeleteAccount(onDelete: () -> Unit) {
    var confirm by remember { mutableStateOf(false) }
    TextButton(onClick = { confirm = true }) { Text("Hesabı sil") }

    if (confirm) {
        AlertDialog(
            onDismissRequest = { confirm = false },
            title = { Text("Hesabınız silinsin mi?") },
            text = { Text("Bu, tüm verilerinizi kaldırır ve geri alınamaz.") },
            confirmButton = { TextButton(onClick = { confirm = false; onDelete() }) { Text("Sil") } },
            dismissButton = { TextButton(onClick = { confirm = false }) { Text("Vazgeç") } }
        )
    }
}

Nasıl test edilir?

  • Yüksek riskli eylemleri listeleyin: Ödemeleri, siparişleri, sözleşmeleri, rezervasyonları, silmeleri, hesap verisi değişikliklerini ve sınav gönderimlerini bulun.
  • Güvence arayın: Her biri için eylem geri alınabilir mi, kontrol ediliyor mu ya da onaylanıyor mu?
  • Gözden geçirme adımını test edin: Kullanıcı her şeyi görebiliyor, geri dönebiliyor ve son adımdan önce düzeltebiliyor mu?
  • Geri almayı test edin: Bir silme ya da sipariş geri alınabiliyor ya da iptal edilebiliyor mu ve bunun için süre belirtilmiş mi?
  • Onayları kontrol edin: Onay ne olacağını söylüyor ve klavye ve ekran okuyucuyla çalışıyor mu?
  • Kapsamı kontrol edin: Veri kullanıcının kontrol edebildiği bir veri mi? Günlükler ve izleme verileri dahil değildir.
  • Denetleyiciyi başlangıç olarak kullanın: Otomatik araçlar hangi eylemlerin yüksek riskli olduğunu ya da bir güvencenin var olup olmadığını söyleyemez. Her süreci bir kişi baştan sona izlemelidir.

Sık yapılan hatalar

  • Gözden geçirmesiz tek tıkla ödeme: Kullanıcı kontrol etmeden para gider.
  • Kurtarmasız kalıcı silme: Geri alma, çöp kutusu ya da onay yok.
  • Açıklamayan onay: Sonuç belirtmeyen "Emin misiniz?".
  • Erişilebilir olmayan onay iletişim kutusu: Klavyeyle erişilemez ya da kapatılamaz.
  • Uyarı yorgunluğu: Bu kriterin istemediği, her küçük düzenlemeyi onaylamak.
  • Belirtilmemiş iptal süresi: Kullanıcı ne kadar süresi olduğunu bilemez.
  • Düzenlenemeyen gözden geçirme sayfası: Kullanıcı bir hatayı düzeltmek için baştan başlamak zorunda.
  • Test ve sınavları unutmak: Gözden geçirme şansı olmadan gönderilen yanıtlar.

Kaynaklar

Standart sürümü: EN 301 549 V4.1.1 (2026-09), WCAG 2.2. Bu sayfa bilgilendirme amaçlıdır ve hukuki tavsiye niteliği taşımaz; bağlayıcı metin için Avrupa Erişilebilirlik Yasası'nın (Direktif (AB) 2019/882) ve EN 301 549 standardının resmî metinlerini esas alın.

Corpowid, Gartner tarafından tanınan bir platformdur.

Corpowid, dijital erişilebilirlik alanındaki yenilikçi yaklaşımı ve performansı nedeniyle dünyanın önde gelen araştırma ve danışmanlık şirketlerinden biri olan Gartner tarafından takdir edilmiştir. Bu rozetler, yapay zeka destekli ve kapsayıcı web deneyimleri oluşturma konusundaki kararlılığımızı yansıtmaktadır.

Corpowid hakkında sorularınız mı var?

Bizimle iletişime geçin.

Size en kısa sürede geri dönüş sağlayacağız.