Межплагинное взаимодействие
Версия контракта API: 1.1.0
Начиная с версии плагина MCRM 3.5.1
Интеграция с лояльностью MCRM через External Operations iikoFront.
Опция доступна после настройки плагина MCRM.
СОСТАВ ПАКЕТА
Скачать все файлы архивом
ЧТО УМЕЕТ API
In-process вызовы из вашего плагина в плагин MCRM через iiko External Operations — без прямого REST к MCRM Cash API.
Сервис: MCRM.Loyalty
ModuleId MCRM: 21016318
Сервис: MCRM.Loyalty
ModuleId MCRM: 21016318
Важно перед стартом
- PayOrder не закрывает заказ в iikoFront.
Оплату/закрытие/фискализацию заказа в Front делаете или вы или официант.
- Типичный флоу:
- TransactionId — всегда Guid.NewGuid().ToString() на каждый SpendBonus / PayOrder.
Правильно: SpendBonus + PayOrder(NoSpend=1) или только PayOrder(NoSpend=0).
- Суммы — в рублях (decimal), не в копейках.
- Все операции silent: без диалогов MCRM и без SMS.
УСТАНОВКА НА ТЕСТОВУЮ КАССУ
- Установить / обновить плагин MCRM из MCRM_Plugin от версии 3.5.1.zip (как обычно для Front-плагинов).
- В MCRM_Plugin_Config.xml убедиться, что External Operations включены (по умолчанию да):
xml <EnableExternalOperations>true</EnableExternalOperations>- Перезапустить iikoFront
- В логе MCRM должна быть строка вида:
[EO] 8 external operations registered under service 'MCRM.Loyalty'- (Опционально) Положить MCRM.ExternalOps.Tester-bin.zip рядом с плагинами Front — проверить кнопки «MCRM EO: …» в меню плагинов.
- В ваш плагин: ссылка на MCRM.Iiko.ExternalOps.Contracts.dll + вызовы как в README / sample.
Минимальный чеклист приёмки
◻︎GetCapabilities → Success, ContractVersion 1.1.0, 8 операций
◻︎FindGuest по тестовой карте/телефону
◻︎AuthorizeGuestInOrder в открытом заказе (гость появился в заказе, без попапов)
◻︎GetGuestStateInOrder / GetPaymentLimits — баланс и лимиты
◻︎SpendBonus + PayOrder(NoSpend=1) или PayOrder(NoSpend=0)
◻︎После PayOrder — ваше закрытие заказа в Front; в MCRM транзакция одна (без дубля)
◻︎Если MCRM выключен — корректная ошибка / ExternalOperationCallingException, ваш плагин не падает
Фичи плагина:
• Сертификаты
• Заметки о госте
• Предоплата
• iikoWaiter
• Дополнения плагина
• Надбавки и сервисный сбор
• Параметры конфига