Интеграция OSMI Cards
Как настроить интеграцию OSMI Cards
Порядок настройки, ограничения и возможности указаны по ссылке (Интеграция с OSMI Cards).
Создать точку интеграции
Тип пресета — «Другое». Для создания и настройки интеграции с внешней системой.

Создать шаблон действия
1. UpdateCard
Обновление электронной карты

Создать балльный счет
Если бальный счет создан, то этот шаг можно пропустить.

Создать дополнительные поля
1. WalletCardLink
Ссылка на установку электронной карты

2. WalletCardSubscription
Подписан на рассылки

3. WalletCardQrCodeLink
Ссылка на qr-код установки карты

Создать тип дисконтных карт

Импортировать дисконтные карты
В файле укажите для карт созданный в предыдущем пункте тип.

Создать вебхуки
Создать вебхук необходимо после того, как менеджер OSMI Cards передаст вам шаблон.
1. Создание карты OSMI
POST
https://[URL полученный от OSMI или клиента]/v2t/passes/${Recipient.Card.[тип карты].Number}/[название шаблона дизайна дисконтной карты полученный от OSMI или клиента]?withValues=true&transactionId=${WebhookRequest.TransactionalId}
Content-Type
application/json
Authorization
Bearer xxxxx где xxxxx это токен, который получен от менеджера OSMI
Тело запроса
{
"values": [
{
"label": "[название поля "клиент" полученное от OSMI или клиента]",
"value": "@{if IsEmpty(Recipient.OnlyStandardFirstName)}@{ else }${Recipient.FirstAndLastName}@{end if}"
},
{
"label": "["название поля "баллы" полученное от OSMI или клиента]",
"value": "${Recipient.GetBonusPointsAccount("[название бального счета в Mindbox]").Available}"
}
],
"barcode": {
"show": true,
"showSignature": true,
"message": "${Recipient.Card.AnyType.Number}",
"signature": "${Recipient.Card.AnyType.Number}"
}
}
2. Обновление баланса карты OSMI
PUT
https://[URL полученный от OSMI или клиента]/v2t/passes/${Recipient.Card.[тип карты].Number}?transactionId=${WebhookRequest.TransactionalId}&push=true
Content-Type
application/json
Authorization
Bearer xxxxx где xxxxx это токен, который получен от менеджера OSMI
Тело запроса
{
"values": [
{
"label": "[название поля "клиент" полученное от OSMI или клиента]",
"value": "@{if IsEmpty(Recipient.OnlyStandardFirstName)}@{ else }${Recipient.FirstAndLastName}@{end if}"
},
{
"label": "[название поля "баллы" полученное от OSMI или клиента]",
"value": "${Recipient.GetBonusPointsAccount("[название бального счета в Mindbox]").Available}"
}
],
"barcode": {
"show": true,
"showSignature": true,
"message": "${Recipient.Card.AnyType.Number}",
"signature": "${Recipient.Card.AnyType.Number}"
}
}
В теле запроса могут быть дополнительные параметры полей, в зависимости от потребностей клиента.
Создать сценарии
1. OSMI - Изменение баланса
- Событие — «Изменение заданного баланса» в выбранном счете:

- Группа шагов — вызвать вебхук:

Ответ сервиса и ошибки можно проверить в логах вызова вебхуков.
2. OSMI - Создание карты
- Событие — зависит от выборки, которая должна получить карты. Это может быть любое попадание в базу или регистрация через определенную операцию, например.
- Частота применения - одним разом на клиента.

- Проверяем, что нет карт OSMI:

- Выдаем карту и вызываем вебхук:

Создать операции
Операции необходимо создавать с теми настройками и именами, которые указаны в инструкции:
1. Wallet.BindCard

2. Wallet.CheckCustomer

3. Wallet.EditCustomer

4. Wallet.RegisterCustomer

5. Wallet.SubscribeCard

6. Wallet.UnsubscribeCard

7. Wallet.UpdateCard

8. Wallet.SetCardLink
