Авторизация

Регистрация

На указанный вами Email уже зарегистрирована учетная запись.
Если вы забыли пароль, воспользуйтесь формой восстановления.
Вы ввели некорректный E-mail.
Регистрация успешно начата!
На ваш E-mail отправлено письмо с дальнейшими инструкциями.
Регистрация завершена с ошибкой!
Пожалуйста, обратитесь в службу поддержки.



API для PHP и Python
  |  
API для .NET



Написанное ниже относится к версиям MikroBILL 2.0.6 и более новым.
Для создания расширений на PHP вам понадобится подключить файл apicore.php
(найти его можно в папке WEB документов апача в подпапке kassa).
Полное описание классов доступно здесь.
Версия класса для Python здесь.



1. Пример на PHP для подключения к серверу MikroBILL.






Вы можете скопировать файл apicore.php на другой WEB-сервер, где нет кассы MikroBILL, тогда при создании экземпляра класса MikroBILL_API необходимо добавить ещё 2 аргумента:






Переменную $CRYPTO_KEY_1 вы можете взять из файла config.php, который расположен в корне WEB сервера MikroBILL, а переменную $CRYPTO_KEY_2 из БД MikroBILL из таблицы `workparams`.
Обратите внимание, что значения этих переменных являются уникальными и при переустановке MikroBILL будут изменены!





2. Формат команд.

Команды вызываются по их пути. Разделителем пути является символ точки. Путь соответсвует классам в их иерархии, описание классов доступно здесь.
Как видим, команда получения или поиска абонентов находится непосредственно в классе API, значит вызов будет выглядеть так:




Результатом будет JSON вида:




В поле return массив ID абонентов. Поле code = 0 показывает отсутствие ошибок. Любое другое число сигнализирует о проблеме, тогда в return будет описание.
Чтобы обратиться к свойству абонента, в пути команды необходимо указать ID абонета:




Результат:




Ещё пример. Установим новый IP абоненту. Для этого нужно вначале получить все аккаунты абонента:




Результатом будет массив GUID аккаунтов:




Теперь обратимся к нужному аккаунту, чтобы получить свойство "IP".




Ответ:




Для установки значения необходимо добавить второй аргумент в функцию Process:




Если функция требует несколько входящих аргументов, то их нужно передавать в виде массива.
Напоминаем, описание входных аргументов Вы можете найти в описании классов здесь.




Если операция прошла успешно, вы получит сообщение вида:






3. Пакетные команды.

Вы можете в одной команде запрашивать несколько значений (начиная с версии MikroBILL 2.0.9), для этого во второй аргумент в функцию Process необходимо передать массив.
В массиве необходимо перечислить аргументы так, чтобы начальный путь в функции Process + имя элемента массива образовали законченный путь.




Результатом будет JSON вида:




Для того, чтобы установить несколько параметров одновременно, нужно в массиве к каждому аргументу добавить ассоциированное значение.




Результатом будет JSON вида:




Так же имеется возможность в одной команде читать параметры и устанавливать.




Результатом будет JSON вида:





Вы можете использовать массивы с любой глубиной вложенности.
Например, здесь:




И здесь:




В обоих случаях вызывается путь: