но это не отменяет того что кривонаписанный софт чересчур умным программистом не пропускает настоящий ЛН
С настоящими и правильно сгенерированными ЛН никаких проблем нет. Проблемы есть с ЛН, которые содержат в себе ошибки, которые были допущенные ещё в паспортных столах.
Скажу тебе по секрету, что проверка ЛН это не прихоть программиста, который ваял эту софтину. Если когда-то он так написал, значит было такое требование со стороны банка (проверять перед сохранением карточки клиента правильность ЛН). Программеру плевать
на правильность чьего-то ЛН в БД, которая является собственностью банка. Об этом обычно начинает болеть голова у юристов банка, когда в некоторых случаях отношения банка с клиентом доходят до суда, где важна каждая цифра и запятая. Программеру отменить эту проверку - закоментарить несколько строчек кода (дело нескольких минут – перекомпилить исходники и отдать версию на банк(и). Они делают как хочет заказчик (запрещать ввод кривых ЛН, не проверять вообще, или проверять, но лишь предупреждать при наличии ошибочного ЛН). Основная проблема в различии мнений различных управлений банка (юридического и операционного) по поводу наличия контрольной проверки правильности заполнения поля ЛН в картотеке клиентов. Юристам побоку, что кто-то не может получить кредит из-за неправильного ЛН, и что расчетно-кассовому управлению доставучие клиенты выворачивают мозг по каждой мелочи.
А расчетно-кассовому управлению плевать на проблемы юристов (они на суды не ходят).