У многих кто с нами работал, возникает вопрос, как мы успеваем написать совершенно всю интеграцию за 2-3 дня. В этой статье, мы постараемся расписать, как у наших разработчиков это получается.
Разделение всей интеграции на шаги
В какой-то момент времени, мы поняли, что невозможно засунуть всю интеграцию в одну функцию, он становится слишком сложным и запутанным, и мы разделили всю интеграцию на шаги.
- Шаг 1. Создание контракта
- Шаг 2. Отправка контракта агентству - проверка работоспособности
- Шаг 3. Создание калькуляций под каждую страховую компанию
- Шаг 4. Получение результатов калькуляций
- Отображение результатов расчета
- Шаг 6. Получение платежной ссылки
- Шаг 8. Подтверждение SMS кода страховой компании
- Шаг 11. Проверка факта оплаты
- Шаг 12. Получение печатных форм
Чтобы написать новую интеграцию, нужно сделать следующие действия
Действие 1. Скопировать папку интеграции
Для этого нужно скопировать всю папку интеграции с предыдущей, и правильно прописать пути и классы в соответствии с алиасом.
Действие 2. Прописать переменные в файле
Прописать такие переменные как
- путь к тестовому сервису
- адреса wsdl файлов
- логин
- пароль
- id партнера
- id компании
Действие 2.1 Реализовать механизм авторизации
Через сохранение токена, и получение токена.
Действие 3. Создать XML файлы для интеграции, по всем основным методам
Для каждого действия, такого как создание расчета, проверка статуса, и получение результатов нужно создать XML файл
Действие 4. Шаг 1 - Создать контракт для интеграции
Необходимо проверить, что
- контракт создается в таблицах
- партнер есть в списке партнеров
- адрес класса есть в worker и в api
Действие 5. Шаг 2 - Отправка контракта агентству
Необходимо проверить, то что мы отправляем контракт агентству и получаем external hash / calculation ID
Действие 6. Шаг 3 - Создание отдельных калькуляций под каждую страховую компанию
Необходимо
- проверить наличие отдельного поля под страховую компанию в таблице company
- прописать коды страховых компаний
- прописать алгоритм отправки и запуска расчетов по каждой из них
Действие 7. Шаг 4 - Получение результатов расчета
В цикле проверяем результаты расчетов, и пишем один из двух вариантов
- успех если есть success и цена
- не успех, если расчет закончился фатально
По результатам расчета сохраняем
- цену
- комиссию
- платежную ссылку (если ее возвращают сразу маскируем её в запасное поле)
Действие 8. Шаг 6 - Получение платежной ссылки
Проверяем, требуется ли верификация, если требуется отправляем код в SMS и отправляем на 8 шаг.
Если верификация не требуется, запрашиваем платежную ссылку, или вытаскиваем ее из запасного поля
Действие 9. Шаг 8 - Верификация SMS кода (необязательно)
Отправляем код, сохраняем его в БД, пытаемся получить платежную ссылку
Действие 10. Шаг 11. Проверяем статус платежа
В цикле проходим по всем калькуляциям у которых есть платежная ссылка, и проверяем их статус, если оплачен, ставим статус PAID
Действие 11. Шаг 12. Получение печатной формы
В цикле проходим по всем расчетам, которые отмечены оплаченными, но не распечатаны, если находим спрашиваем печатную форму, и сохраняем её в документы
Действие 12. Проходим все шаги в автоматическом режиме и уходим в тестирование
По результатам, нам нужно достичь того, чтобы worker сам мог пройти все шаги, и если это удается, то тогда проходим все кейсы из статьи про тестирование
Страховой мета-агрегатор Агентброкер
Агентброкер это как Aviasales на рынке ЕОСАГО, мы показываем все результаты на одном сайте
- Работаем со всеми страховыми компаниями (РГС, Альфа, Согаз, Согласие, Ингосстрах, Макс, Ренессанс и другие)
- Считаем на всех площадках (Инсапп, ЭльМаркет, Ингуру, Пампаду, Настоящий Электронный Полис, Инссмарт, Банки.Ру, Умный полис, Нетворкс, СИБ, Инстор и другие)
- Высокое вознаграждение
- Быстрые выплаты
- Работаем по всей Российской Федерации
Присоединяйтесь к нам: https://zen.agentbroker.ru