Авторизация должна выполняться перед каждым запросом, где передается параметр CardCode. После успешной авторизации карта считается авторизованной еще то количество минут, которое указано в настройках Протокола пункт Processing → Time Not Activity Of Session (min) и в течение этого времени повторная авторизация не нужна.
Важно! Если общение с внешним протоколом происходит через протокол HTTP, то символ «+» в номере телефона должен быть указан по стандарту http, вида %2B
Валидируется ли CardPIN / Password по отношению к указанному CardCode - зависит от настроек системы Премьера. Если карточная система не требует авторизации - то подойдет любой фейковый CardPin (но он обязательно должен указываться, например: CardPIN=1111).
Пример запроса через номер карты
ServiceID=1&QueryCode=Login&CardCode=101&CardPIN=1111&Encoding=Windows-1251
Пример запроса через номер телефона
ServiceID=1&QueryCode=Login&CustomerContact=+79001234567&CardPIN=1111&Encoding=Windows-1251
Пример ответа
<?xml version='1.0' encoding='Windows-1251' standalone='yes'?>
<XML>
<Result>Ok</Result>
<Error/>
<Remark/>
<Data>
<CardInfo DiscountSystem='1' CardCode='26566181440147433336' Status='1' />
<Owner ID='10000000000102'>
<Name Type='First'><![CDATA[Юрий]]></Name>
<Name Type='Middle'><![CDATA[Акимович]]></Name>
<Name Type='Last'><![CDATA[Коробов]]></Name>
<Name Type='Full'><![CDATA[Ivanov Ivan Ivanovich]]></Name>
</Owner>
<Accounts>
<Account AccountNumber='05.00002.00000102.0001' Type='5' Code='0' Blocked='0'>
<Name><![CDATA[Потраченные средства]]></Name>
<CreditDepth Sum='0'>0руб 00коп</CreditDepth>
<Balance Sum='9852600'>98526руб 00коп</Balance>
<BlockReason><![CDATA[]]></BlockReason>
</Account>
<Account AccountNumber='02.00003.00000614.0001' Type='1' Code='1' Blocked='0'>
<Name><![CDATA[Discount]]></Name>
<CreditDepth Sum='0'>0руб 00коп</CreditDepth>
<Balance Sum='41200'>412руб 00коп</Balance>
<BlockReason><![CDATA[]]></BlockReason>
</Account>
<Account AccountNumber='01.00004.00000615.0001' Type='2' Code='5' Blocked='0' CurrencyID='21'>
<Name><![CDATA[Bonus]]></Name>
<CreditDepth Sum='0'>0руб 00коп</CreditDepth>
<Balance Sum='21170'>211руб 70коп</Balance>
<BlockReason><![CDATA[]]></BlockReason>
</Account>
</Accounts>
</Data>
</XML>
[6.0.1.4] Появился параметр CurrencyID