Ошибки

В первую очередь, хороший интерфейс помогает пользователю избегать ошибок, а не только указывает на них. Для этого нужно:

  • Предлагать пользователю варианты заполнения, а не заставлять его вводить данные вручную

Suggestions

  • Автоматически считать данные и предложить их проверить. Машины ошибаются реже, чем люди.
Scan or Photo Scan or Photo
  • Не допускать ввода некорректных символов. Например, буквы в номере карты.
  • Форматировать данные в полях ввода. Например, номер телефона и карты:
Formated Numbers On The Card
  • Давать подсказки для сложных случаев.

    Пример с CVV

Там, где это возможно, нужно валидировать данные еще в процессе их заполнения пользователем.

Например: корректность ввода номера карты. По первым шести цифрам можно определить платежную систему и банк выпустивший карту. С седьмой по пятнадцатую цифру содержится информация о типе и валюте карты. Последняя цифра это проверочное число, которое позволяет процерить корректность ввода номера карты. Показывая эти данные пользователю в процессе заполнения мы даем ему возможность понять все ли он делает верно.

Ошибки с привязкой к компоненту

Когда есть возможность, необходимо точно дать понять пользователю где он допустил ошибку.

Context Errors Context Errors

Ошибки без привязки к компоненту

Не всегда ошибка может относиться к конкретному компоненту. В этом случае используем нотификацию с объяснением возможных причин.

Abstract Errors