Масштабно вопрос задан. Попробую рассказать в общих чертах. Задача кассира перед тем как отдать покупку взять у вас оплату за товары. При это кассир далеко не всегда в состоянии проверить можно ли этим средством оплаты пользоваться. То есть необходимо убедиться, что оплата валидная.
1. Для наличных средств сделать это достаточно просто. Известно как должна выглядеть купюра, её можно проверить под лампой, пощупать и понюхать. А также посчитать хватит ли купюр для оплаты покупки. В этом случае проверкой оплаты занимается сам кассир. Однако программа знает, что это наличные деньги и после оплаты будут положены в денежный ящик. Это важная особенность наличной оплаты.
2. Для безналичной оплаты происходит всё точно также, кроме переноса денег в денежный ящик. То есть покупатель предъявляет нечто, допустим банковскую карту. Кассир точно также проверяет доступными ему средствами карту - сверяет логотипы и голограммы по альбому, сообщает по телефону реквизиты или делает снимок карты на мпринтере или использует терминал или ещё что-то что ему сказали делать, главное, что кто-то дал добро на использование карты. Программа ничего не знает, про то как карту проверяли. В этой ситуации программе нужно знать, то оплачено не налом. Для этого в УКМ2 заводится карта без авторизации.
3. Для безналичной оплаты процесс можно немного автоматизировать разрешив программе проверять средство оплаты. Тут уже появляются некоторые ограничения - например обслуживать можно только международные банковские карты со стандартными треками. Программа разрешает прокатать карту в считывателе и передать номер трека и сумму чека в банк по согласованному протоколу. Тут есть уже варианты - как передать информацию? В каком виде? Например в виде текстового файла на некий сервер. С этого сервера информация должна попасть в банковское ПО, которое выполнит непосредственно проверку и вернёт ответ - ДА или НЕТ. Для работы по такой схеме в магазине устанавливается ПО банка, на кассе настраивается авторизация для корректной передачи трека и суммы в банк. (в некоторых случаях ПО может устанавливаться непосредственно на кассу либо находиться в банковском терминале подключенном к кассе). в УКМ2 заводится карта и привязывается к конкретному протоколу обмена.
4. Процесс авторизации карт можно отвязать от только международных банковских. Для этого программа просто запрашивает у банковского ПО сумму, а всё остальное делает ПО самостоятельно - просит прокатать/прижать/вставить карту/брелок/поясок, далее проверяет возможность указанную сумму снять и даёт кассе добро. В УКМ2 настраивается точно также, просто другой набор протоколов. Банковсое ПО в этом случае находится либо на кассе либо на подключенном к кассе терминале.
Это в общих чертах все мне известные варианты авторизаций. Надеюсь, несмотря на большой текст, станет понятней что и как работает.