Решение
процессы + контрольAPI-интеграция передаёт данные между программами без повторного ручного ввода. Например, заказ из интернет-магазина поступает в CRM, а остаток товара возвращается из складской программы на сайт. До разработки нужно определить, какая система отвечает за каждое поле и когда данные должны обновляться.
Что согласовать до начала работ
- Какие объекты передаются: товары, цены, остатки, клиенты, заказы или оплаты.
- Направление обмена и источник достоверных данных.
- Частоту обновления и допустимую задержку.
- Правило сопоставления записей и обработки дублей.
- Ответственного за доступ к документации и тестовой среде сервиса.
Как обрабатываются ошибки
Недоступность внешнего сервиса не должна незаметно терять заказ. В проекте следует предусмотреть журнал операций, повторную отправку и уведомление об ошибке. Повтор одного сообщения не должен создавать второй заказ или повторно списывать остаток. Ограничения количества запросов и смена версии API также учитываются при проектировании.
Проверка перед запуском
Проверяем создание и изменение записи, отмену операции, повторное сообщение и восстановление связи после сбоя. В тестах используем обезличенные данные. Список успешно переданных записей сопоставляем с исходной системой. Доступы ограничиваются необходимыми действиями; ключи не должны находиться в публичном коде страницы.
Стоимость и границы проекта
На объём работы влияют число систем, качество документации, объём данных, нестандартные поля и необходимость переноса истории. Подписка на сторонний сервис и его тарифы оплачиваются по условиям поставщика отдельно от разработки. Для оценки пришлите названия систем и один пример нужного обмена.
Для продаж через сайт смотрите разработку интернет-магазина, для приёма карт — интеграцию платежей. Опишите задачу интеграции, чтобы согласовать первый рабочий сценарий.
Приемка рабочего сценария
Нужны сценарии неизвестного кода, пустого обязательного поля, повторного запроса и обрыва связи. Повторный прием не должен повторно выполнять ту же операцию.
Подготовка данных проекта
Потребуются документация обеих систем, тестовая среда и образцы данных. Рабочие секретные ключи нельзя публиковать в статье, открытом документе или браузерном коде.
Пример сценария
Пример приемки: принимающая система сохранила заказ, но ответ потерян. При повторной попытке должен распознаваться тот же идентификатор. Проверяются отсутствие повторной записи и повторного выполнения операции.