Процессинг покупок
Сервис процессинга предназначен для расчёта скидки, запроса бонусного баланса, подтверждения покупки, совершения оплаты бонусными баллами, совершения возвратов и тд. В качестве основного протокола используется HTTP, а значит, подходит для разработки на любом языке программирования, который умеет работать с HTTP-библиотеками. API процессинга является RPC и использует POST-запросы с телом в JSON формате. API всегда возвращает ответ в формате JSON. Сервис процессинга принимает запросы от касс, мобильных приложений или сайтов.
Сервис Core
Сервис Core отвечает за генерацию базы данных процессинга и обеспечивает взаимодействие процессинга с BPMsoft через RabbitMQ.
Контакт-сервис
Контакт сервис применяется для регистрации клиентов в системе, получения и изменения данных профиля, получения информации о покупках и бонусном балансе клиентов. Контакт сервис принимает запросы от касс, мобильных приложений или сайтов.
Для установки и запуска сервиса процессинга покупок , сервиса Core и контакт-сервиса необходимо:
- установить BPMSoft, установить RabbitMQ,
- установить PostgreSQL для базы сервиса процессинга покупок,
- установить Docker на машине (машинах), где будут развернуты сервисы и настроить конфиги.
После установки всего необходимого, нужно создать и запустить Docker-compose.yml для процессинга покупок. Не забудьте поправить конфиги в соответствии с вашими настройками.
Проверить, что запуск процессинга прошел успешно, можно перейдя по адресу http://имя_сервера:порт/health (например, http://srv-processing1:5000/health)
При отсутствии подключения к RabbitMQ, либо к базе данных будет выведен соответствующий статус
{
"status": "Unhealthy",
"errors": {
"Rabbit": {
"status": "Unhealthy",
"description": "NotConnected"
},
"DataBase": {
"status": "Unhealthy",
"description": "NotConnected"
}
}
}
Для того, чтобы сервис процессинга работал и после закрытия консоли, необходимо сделать процесс фоновым. Для этого запустите контейнер с указанием флага -d
$ docker-compose up -d
Теперь сервис процессинга работает и после закрытия консоли.
SMS сервис
SMS сервис предназначен для верификации клиента по мобильному телефону. Касса, мобильное приложение или сайт направляет в Контакт сервис запрос на отправку кода подтверждения (sendCode), после чего Контакт сервис перенаправляет его в RabbitMQ. SMS сервис принимает сообщение из RabbitMQ и отправляет SMS через HTTP API Rapporto, МТС-коммуникатор.
Для установки и запуска SMS сервиса необходимо:
- установить BPMSoft, установить RabbitMQ,
- установить PostgreSQL для базы SMS сервиса,
- установить Docker на машине, где будет развернут SMS сервис и настроить конфиги.
После установки всего необходимого, нужно создать и запустить Docker-compose.yml для SMS сервиса. Не забудьте поправить конфиги в соответствии с вашими настройками.