CRM інтеграції

KeyCRM: підключення, замовлення й статуси

Як платформа прив’язує магазин до KeyCRM без універсального Source ID і дублювання покупців.

1. Кожен магазин має власне перевірене підключення

Connection зберігає encrypted credentials, revision і source ID конкретного магазину.

Перед імпортом або експортом backend звіряє connection, store, source ID та поточну revision. Значення 6 не є глобальним стандартом.

{
  "provider": "keycrm",
  "store_id": "<store-uuid>",
  "source_id": "<verified-source-id>",
  "credential_revision": "<current-revision>"
}

2. Покупець зіставляється до створення нового запису

Номер телефону нормалізується, після чого server-side lookup шукає наявного покупця в межах дозволеного connection.

Ім’я одержувача і контакт покупця — різні поля. Дані замовлення не повинні безумовно переписувати картку клієнта.

3. Статуси й оплати проходять через mapping

Внутрішній статус платформи не копіюється в KeyCRM навмання. Використовується затверджений mapping customer-relevant і provider status.

Повторні webhook або reconciliation jobs не повинні створювати другу оплату чи повторне повідомлення.

provider event
  -> verified connection scope
  -> idempotency check
  -> status/payment mapping
  -> local transaction
  -> controlled notification

4. Де дивитися точні маршрути

Generated OpenAPI є технічним джерелом правди для path, DTO та public error contract поточної candidate revision.

Активація реального provider call потребує перевірених credentials і owner acceptance; наявність кнопки в UI цього не доводить.