Результаты предоставляются исключительно в информационных целях и могут содержать ошибки. Проверяйте важную информацию самостоятельно. Использование этого инструмента осуществляется на ваш страх и риск.
Что делает этот инструмент
Валидатор номера кредитной карты проверяет, правильно ли составлен номер карты. Он удаляет пробелы и дефисы, проверяет, что длина составляет от 12 до 19 цифр, вычисляет контрольную сумму Luhn и определяет платёжную систему по начальным цифрам: Visa, Mastercard, American Express, Discover, Diners Club или JCB.
Алгоритм Luhn выявляет большинство опечаток: начиная справа, каждая вторая цифра удваивается (если результат больше 9, из него вычитается 9), и итоговая сумма должна делиться на 10. Одна неверная цифра или две переставленные соседние цифры почти всегда нарушают проверку. Успешная проверка не означает, что карта существует, активна или на ней есть средства: это может сказать только банк-эмитент. Проверка целиком выполняется в вашем браузере, и номер никуда не отправляется.
Когда использовать
- Нужно протестировать форму оплаты с помощью опубликованных тестовых номеров платёжного провайдера.
- Вы пишете клиентскую валидацию и сверяете свою реализацию Luhn с заведомо известным результатом.
- Вы очищаете импортируемые данные, где номера, похожие на номера карт, нужно пометить до сохранения.
- Нужно объяснить пользователю, почему номер с опечаткой отклоняется ещё до того, как дойдёт до платёжного шлюза.
Пример
4111 1111 1111 1111
Passes Luhn check Network: Visa
4111 1111 1111 1112
Fails Luhn check Network: Visa
Вопросы об этом инструменте
Безопасно ли вставлять сюда номер настоящей карты?
Проверка — это обычный JavaScript на странице, который не выполняет сетевых запросов, поэтому номер не покидает ваше устройство. И всё же использовать настоящую карту незачем: каждый платёжный провайдер публикует тестовые номера, которые проходят проверку Luhn.
Почему номер, который выглядит правильным, не проходит проверку?
Обычно одна цифра неверна или две переставлены местами. Последняя цифра любого номера карты — контрольная, она вычисляется из остальных, поэтому любое одиночное изменение приводит к тому, что сумма перестаёт делиться на 10.
Как определяется платёжная система?
По префиксу эмитента: 4 — Visa, 51-55 и 22-27 — Mastercard, 34 и 37 — American Express, 6011 и 65 — Discover, 300-305, 36 и 38 — Diners Club, 35 — JCB. Для неизвестных префиксов выводится Unrecognized (не распознано).
Можно ли использовать проверку Luhn для других номеров?
Да. Та же контрольная сумма защищает номера IMEI, многие номера карт лояльности и некоторые национальные идентификаторы. Однако правило длины здесь специфично для платёжных карт, поэтому номера короче 12 или длиннее 19 цифр отклоняются ещё до вычисления контрольной суммы.
Этот инструмент бесплатный?
Да, он бесплатный. Без регистрации и электронной почты. Результат на этой странице.
Как получить результат?
Используйте инструмент на этой странице. Результат появится здесь, без отправки по электронной почте.