Тарифные планы обязательно содержат информацию о отнесении типов трафика к той или иной услуге и стоимости единиц типа трафика. Дополнительно в них могут быть указаны параметры сервиса (опции). Порядок просмотра тарифных планов соответствует Алгоритму 2.
В тарифном запросе передаются следующие параметры:
| идентификатор учётного периода; |
| время потребления; |
| тарифные опции; |
| перечень потреблённых после последней тарификации типов трафика и их объёмы. |
После редактирования тарифного дерева необходимо вызвать контекстное меню у главной ветки модуля в дереве (при редактировании дерева она подсвечивается рыжим цветом) и выбрать , для того чтобы все приложения обновили кэш данного тарифного дерева.
Если с момента последней тарификации изменился час, то вызываются последовательно несколько тарифных запросов, т.к. стоимость может изменится со сменой часа. В результате выполнения в тарифном запросе обязательно появляется следующая информация:
| стоимость каждого из потреблённого объёмов трафика каждого вида; |
| услуга, к которой отнесена каждая из стоимостей. |
Для каждой цены рекомендуется назначать отдельную услугу для облегчения бухгалтерской отчетности. Например услуга - 0 руб./МБ и услуга - 0.10 руб./МБ.
Дополнительно в запрос можно добавить набор опций модуля Inet. Пример простейшего тарифного плана приведён на скриншоте.

Здесь трём типам трафика сопоставляются нулевые стоимости и одноимённые услуги. Кроме того, производится установка опции сервиса "Inet".
Внутри ветки можно указывать диапазоны, внутри диапазона можно назначить отдельную цену, услугу и/или опции. Диапазон со значением 0 работает как бесконечно большой.

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

При помощи опций модуля Inet можно, например, регулировать скорость соединения. А при помощи тарифных опций настроить "турбо-кнопку", которая будет действовать на период активированной опции:

Здесь, при активности тарифной опции "Турбо супер" будут отрабатывать первая ветка , при неактивности - вторая (т.к. она пуста и выше ни одна ветка не отработает).
Если же "турбо-кнопка" должна быть ограничена не только по времени действия тарифной опции, а также по объему трафика, необходимо использовать диапазон с привязкой к тарифной опции:

Для подсчета превалирующего трафика из двух типов трафика нужно использовать ветку .

При отсутствии внутри ветки превалирующего трафика зависимостей цены от какого-либо временного промежутка, стоимость за период ветки будет равна стоимости максимального трафика, помноженного на цену.
В других случаях стоимость может "плавать", т.к. в один момент времени превалирующим может быть первый трафик, в другой момент - второй, а за время, пока второй трафик "догоняет" первый наработки соостветственно не будет, т.е. трафик будет превалирующим.
Ветка умножает стоимость на указанное число. При этом, если эта ветка находится внутри веток или , то умножается только стоимость текущего типа трафика, т.е. ветка отработает относительно ветки или , иначе (т.е. если ветка находится в корневой ветке, в самом низу) будет умножена стоимость по всем типам трафика, которым уже сопоставлена цена.
Ветка производит фильтрацию по указанным реалмам, т.е.если текущий REALM (по умолчанию - default) не входит в список, то тарифный запрос не попадет внутрь. Если на том же уровне есть ветка с пустым набором REALMов, а ни в одну из веток , которые находятся выше на том же уровне запрос не попал, то эта пустая ветка отработает, т.е. запрос попадет внутрь этой ветки. Для сессий с типом инициации REALM всегда default.
Ветка фильтрует по указанным группам договоров, т.е. запрос попадет внуть этой ветки, только, если группы обсчитываемого договора совпадают с фильтром. Если на том же уровне есть ветка с пустым набором групп, а ни в одну из веток выше на этом же уровне запрос не попал, эта пустая ветка отработает.
Если запрос попал в ветку , а авторизация происходит на одном из указанных устройств или на одном из потомков указанных устройств, то в авторизации будет отказано с кодом 40 "Доступ к устройству (NAS'у) закрыт".
Если запрос попал в ветку , а авторизация не происходит на одном из указанных устройств или на одном из потомков указанных устройств, то в авторизации будет отказано с кодом 40 "Доступ к устройству (NAS'у) закрыт".
Если запрос попал в ветку , то в авторизации будет отказано с кодом 44 "Доступ приостановлен".