Към съдържанието
N1
Интеграции · Bitrix24 · trade-in

Изкупуване и trade-in: сделката сама намира оценката на автомобила

Клиент: Автомобилен маркетплейс, NDA Категория: Интеграции Стек: PHP 8.3, Bitrix24 D7, REST API на услугата за оценка (JWT), cron Срок: внедрявано поетапно
Проблем

Резултатът от оценката при trade-in трябваше да идва в сделката чрез push от услугата за оценка и изкупуване на автомобили, но почти не идваше: връзка имаше само при 12 сделки за цялата история при ~450 trade-in оценки на месец — push покриваше 1–2% от случаите.

Ограничения

Услугата не изпрати пример за отговор — форматът беше установен чрез четене от продукционната ѝ среда; търсенето по телефон при нея е точно съвпадение на низ, токенът живее 9 часа, а при част от статусите крайна цена изобщо няма.

Какво направих
  • Бутон „Изкупуване“ в сделката: търсене на оценки по телефоните на клиента, списък с намереното, потвърждение и свързване
  • Записът минава през същия сервиз, който обработва входящия push — не се появи втори път за обновяване на полетата на сделката
  • Защита от нулиране на цената: ако услугата няма цена, полето в сделката остава същото; смяна на свързаното изкупуване — само с потвърждение
  • Парсенето на отговора е зададено с конфигурация, а не с код; порталът сам получава и подновява токена
  • Почасова досинхронизация на свързаните изкупувания по отворените сделки и 137 проверки без Bitrix и мрежа
Архитектура
Карта на сделката → Търсене по телефон → API на услугата за оценка → Общ сервиз за запис → Почасова досинхронизация
Резултат

Изкупуването се свързва със сделката по инициатива на мениджъра, а не само чрез push: при проверката търсенето по телефон намери своята оценка при 10 от 12 сделки, а двата пропуска се дължат на друг номер на клиента, записан в услугата. Бутонът влиза в продукция през септември 2026.

Какво може да се преизползва
Парсене на отговор от външно API, зададено с конфигурация Единен сервиз за запис за входящото и изходящото направление Почасова досинхронизация по cron