Завершение клиентской сессии

Конфигурационный файл iso8583.parameters_operations.xml обеспечивает настраиваемое поведение завершения клиентской сессии по протоколу ISO8583. Файл автоматически устанавливается в папку ПроАТМ. Параметры, определяющие ход завершения клиентской сессии, можно указывать как для каждого типа операции, так и для одного/нескольких типов операций. Для неуказанных типов операций/отдельных параметров автоматически устанавливаются значения по умолчанию. Описание параметров для типа операции имеет следующую структуру:

<type id='тип операции'>
    <Approved>                                            <- секция параметров для успешной авторизации
        <ActionsSequence>Dispense,Card</ActionsSequence>  <- очередность выполняемых действий
        <ImmediatelyEjectCard>0</ImmediatelyEjectCard>    <- возврат карты [ 0/false - по кнопке, 1/true - безусловно]
        <ConfirmPrintReceipt>0</ConfirmPrintReceipt>      <- подтверждение печати чека [ 0/false - безусловная печать чека, 1/true - печать по запросу пользователя]
    </Approved>
    <Declined>                                            <- секция параметров для неуспешной авторизации
        <ConfirmPrintReceipt>1</ConfirmPrintReceipt>      <- подтверждение печати чека [ 0/false - безусловная печать чека, 1/true - печать по запросу пользователя]
    </Declined>
    <PrintReceipt ExceptRespCodes='61,68'/>               <- перечень кодов ответа процессинга разделенных запятой или точкой с запятой, при которых результат выполнения операции не выводится на чек
</type>

Допустимые типы операций:

  • BALANCE – запрос баланса;

  • CASHIN – внесение наличных;

  • CASHOUT – выдача наличных;

  • CHANGE_PIN – смена ПИН-кода;

  • CHECK_CARD – проверка карты;

  • CHECK_MTS_PHONE – проверка номера телефона МТС;

  • HISTORY – мини-выписка;

  • MOBILE_PAYMENT – мобильный платеж;

  • PAYMENT – платеж;

  • TRANSFER – перевод с карты на карту.

<ActionsSequence> – последовательность действий клиента для операции выдачи (CASHOUT) (для других типов операций настройка последовательности действий не предусмотрена). Возможности значения (указываются через запятую или точку с запятой):

  • Card – возврат карты;

  • Dispense – выдача наличных;

  • Print – печать чека.

Значение по умолчанию – Card, Dispense.

<ConfirmPrintReceipt> – подтверждение печати чека.

Возможности значения:

  • 0 – печатать чек;

  • 1 – запрашивать вывод результата на экран.

Значение по умолчанию – 0 для всех операций, кроме BALANCE.

<ImmediatelyEjectCard> – возвращение карты клиенту.

  • 0 – продолжить выполнение операций

  • 1 – вернуть карту.

Значение по умолчанию – 0 для всех операций.

<ExceptRespCodes> – перечень кодов ответа процессинга разделенных запятой или точкой с запятой, при которых не требуется печать чека. Возможное значение – целое число. Значение по умолчанию – пустой список для всех операций.

Особенности реализации:

  • Для всех типов операций флаг возврата карты ImmediatelyEjectCard при неуспешной авторизации не требуется, так как за возврат карты в этом случае отвечает параметр „permanent“; определенный для каждого кода ответа процессинга в файле iso8583.response_codes.xml.

  • [CASHOUT] Флаг подтверждения печати чека ConfirmPrintReceipt для операции выдачи наличных при аппаратном сбое игнорируется – печатается чек.

  • [CASHOUT] Флаг возврата карты ImmediatelyEjectCard для операции выдачи наличных, если в последовательности действий ActionsSequence выдача карты стоит на первом месте, игнорируется.

  • Для всех типов операций активированный флаг подтверждения печати чека ConfirmPrintReceipt при неверно введенном ПИН-коде добавляет на форму повторного ввода пароля кнопку “РАСПЕЧАТАТЬ ЧЕК”.

  • [CASHIN] Для покупюрного устройства приема наличных в силу аппаратных особенностей устройства (невозможно выполнить возврат внесенных денежных средств) при неуспешной авторизации, а также при аппаратном сбое, печатается чек на возврат.