Клиенты дублируются в Яндекс.Метрике

Занимаюсь интеграцией Яндекс.Метрика в CRM, возникла следующая проблема. Мы выгружаем заказ и контакты в два этапа:

  1. Выгружаем контакт через data/contacts?merge_mode=SAVE с телом такого формата:
[{
 "client_ids":["md5"], // Metrica Client ID
 "name":"Имя Фамилия",
 "emails_md5": ["md5"], // Hashed Emails
 "phones_md5":["md5"], // Hashed phones
 "uniq_id":"md5" // hashed internal CRM client id
}]
  1. Выгружаем заказ через data/orders?merge_mode=SAVE с таким телом:
{
  "id": "md5", // hashed internal CRM order id
  "client_type": "CONTACT",
  "revenue": 0,
  "cost": 0,
  "client_uniq_id": "md5", // hashed internal CRM client id
  "products": {
    "product": 1 // product_name: quantity
  },
  "create_date_time": "YYYY-MM-DD HH:MM:ss", // formatted date string
  "order_status": "1" // internal CRM status id
}

Статусы выгружали в первую очередь и больше не трогали, т.е. должны совпадать с категориями Метрики.

Проблема в том, что если выгружать снова этот контакт, не изменяя тело, этим же методом, то мы получим одного клиента в метрике с захешированным идентификатором, а второго - просто с четырехзначным числом, которого в системе у нас даже нет. То есть не понятно, откуда он берется.

Почему такое может происходить? Из-за этого заказы не верно привязываются к клиентам И количество выгружаемых заказов не совпадает с количеством заказов в метрике.

Верен ли алгоритм? Надо ли какой-то интервал выдерживать между выгрузкой контакта и заказом?


Ответы (0 шт):