Як підключити прайс TDB: ціни, наявність і повні картки товарів

6 хв

Elbuz сам забирає прайс з B2B TDB («Техніка для бізнесу») за логіном і паролем дилера: ціни в гривнях, залишки, а за потреби — опис, фото й характеристики з каталогу TDB.

Коли це знадобиться:

  • TDB видав вам посилання на прайс — з нього беруться логін, пароль і номер прайсу.
  • Товари потрібні в каталозі з фото й описом — повні картки оновлюються раз на добу.
  • Ціни ведете в гривнях — курс вести не треба, TDB уже перерахував ціну.
  • Продаєте лише зі складу у Львові чи Києві — наявність береться з потрібного складу.

З чого почати: візьміть логін, пароль і номер прайсу з посилання TDB.

Що вміє інтеграція з TDB

Загальна механіка готових інтеграцій — майстер, вікно параметрів доступу, розмітка колонок — у статті Як підключити постачальника за API. Тут тільки те, що стосується TDB.

Де це і хто має доступ

Меню
Довідники → Обробка прайс-листів → Список прайс-листів
Нове джерело
майстер нового джерела, крок «Звідки» → плитка «API» → «TDB»
Доступ і параметри
картка джерела, секція «Джерело» → «Налаштування параметрів API»
Право доступу
вікно «Список прайс-листів» плюс «Налаштування завантаження» і «…файл із прайс-листом»
Підготувати
посилання на прайс, яке видав TDB

Де взяти логін, пароль і номер прайсу

Усі три значення — у посиланні на прайс, яке TDB видає дилерам у B2B TDB. Воно має такий вигляд: https://api.tdb.ua/hs/get_price/get_xml?username=…&pass=…&priceid=….

  • після username= — логін;
  • після pass= — пароль;
  • після priceid= — номер прайсу.

Якщо посилання у вас немає, попросіть його в менеджера TDB.

Які параметри запиту TDB заповнити

  1. У майстрі нового джерела на кроці «Звідки» оберіть плитку «API» і «TDB» у списку. Адресу, формат XML і колонки програма підставить сама (що саме вона робить).
  2. У вікні «Налаштування параметрів доступу до API» впишіть у «Логін» логін TDB, у «Пароль (токен)» — пароль.
  3. У картці «Параметри запиту» в рядок «Номер прайсу TDB» впишіть число з priceid=.

Кнопка «Отримати довідкові дані» для TDB нічого не показує — зʼявиться напис «У цієї інтеграції немає довідкових даних…».

Параметри в картці «Параметри запиту»
ПараметрЗа замовчуваннямЩо робить
«Номер прайсу TDB»порожньочисло після priceid= у посиланні TDB; без нього прайс не завантажиться
«Повні картки товарів»11 — опис, фото, габарити й характеристики з каталогу TDB (докладніше); 0 — тільки прайс
«Обʼєднувати значення характеристик»11 — характеристики з однаковою назвою стають однією зі значеннями через розділювач; 0 — кожне значення окремим рядком
«Розділювач значень характеристик»/символ між обʼєднаними значеннями
Картка «Параметри запиту» у вікні налаштування параметрів доступу до API TDB
1Номер прайсу TDB
2Повні картки товарів
  1. Номер прайсу TDB — число після priceid= з посилання TDB.
  2. Повні картки товарів: 1 — опис, фото, габарити й характеристики з каталогу TDB.

Коли джерело підключене, далі як із будь-яким прайсом: імпорт і розклад завантажень.

Як перейти з посилання на інтеграцію

Джерело, яке завантажує прайс TDB за посиланням get_xml, і далі працює як працювало, але повних карток у нього немає. Програма таке джерело сама не переводить. Щоб отримати картки:

  1. заведіть нове джерело через інтеграцію «TDB» на того самого контрагента;
  2. впишіть логін, пароль і номер прайсу з посилання;
  3. завантажте нове джерело — і вимкніть старе.

Окреме джерело для каталогу content.xml більше не потрібне: картки інтеграція бере сама.

Які поля приходять від TDB

TDB віддає прайс одним XML-файлом. Колонки джерела TDB — це назви тегів XML. Колонки, які привʼязка розмічає сама:

КолонкаЩо в нійПоле в Elbuz
idкод товару TDB«Артикул контрагента»; за ним до товару привʼязується картка
manufacturerCodeартикул виробника«Артикул виробника»
nameназва українською«Найменування»
manufacturerбренд«Виробник»
Categoryкатегорія TDB — лише назва, без вкладеності«Категорія з прайсу»
price_r_uahціна дилера, грн«Ціна»
priceроздрібна ціна, грн«Ціна РРЦ»
stock_allзагальний залишок«Статус наявності (з прайсу)» (наявність)
EANштрихкод (є не в кожного товару)«Штрихкод EAN»
warrantyгарантія, місяців«Гарантія»
content_description, content_weight, content_width, content_height, content_depthопис, вага й габарити з повної картки«Опис повний», «Вага», «Ширина», «Висота», «Довжина» (заповнюються, коли увімкнені повні картки)

Інші теги теж є у файлі, і будь-який можна взяти вільним рядком секції «Колонки»:

  • price_r — ціна дилера в доларах;
  • price_gurt — оптова ціна в доларах;
  • stock_lviv і stock_kyiv — залишки по складах у Львові й Києві;
  • UKTZED — код УКТ ЗЕД.
Сітка «Колонки» джерела TDB: адреси тегів id, name, price_r_uah і price з валютою UAH
1Артикул контрагента = id
2Ціна = price_r_uah
3Ціна РРЦ = price
  1. id — код товару TDB: за ним привʼязується картка.
  2. price_r_uah — ціна дилера в гривнях.
  3. price — роздрібна ціна TDB у гривнях.

Яку ціну брати: гривні чи долари

Привʼязка бере гривневу ціну дилера — price_r_uah, тож курс у програмі вести не треба. TDB рахує ціни в доларах і сам перераховує їх у гривні за своїм курсом. Валюта ставиться за кодом UAH, а не за порядковим номером валюти в довіднику.

РРЦ — тег price: роздрібна ціна TDB у гривнях. Якщо ви ведете ціни в доларах, візьміть у рядку «Ціна» тег price_r і поставте валюту USD — тоді діятиме курс з вашого довідника валют.

Як отримати опис, фото й характеристики

Поставте «Повні картки товарів» = 1 (у нових джерел так уже стоїть). У прайсі TDB немає ні фото, ні опису: їх TDB викладає окремим каталогом content.xml — опис, усі фото, вага й габарити в упаковці, характеристики. Програма робить так:

  • Качає каталог раз на добу. Він невеликий, а TDB оновлює його постійно.
  • Зберігає картки окремо від прайсу. Кнопка «Завантажити» їх не стирає, а прайс щоразу отримує збережені картки.
  • Розшифровує характеристики в готові значення. «Тип: Підставка для ноутбука», «Охолодження: Активне».

Фото й характеристики є майже в кожного товару, а опис TDB пише не для всіх. Під час додавання товару з прайсу в базовий каталог картка приходить заповненою, а характеристики зіставляються з вашими атрибутами (характеристики товарів, фото товарів).

Під час завантаження в журналі видно рядок «Повні картки TDB: збережено ‹скільки›».

Як читається наявність TDB

Привʼязка бере наявність з тегу stock_all — загального залишку. Точне число TDB показує до 5 штук, далі — порогами: «>5», «>30», «>80». Стандартні статуси розпізнають це без налаштувань: будь-яке число — «В наявності», а кількість — сам поріг: «>30» стає 30 штуками, «>80» — 80.

Потрібен залишок конкретного складу? Візьміть у рядку «Статус наявності (з прайсу)» тег stock_lviv або stock_kyiv. На складах буває ще «Call» — товар під запит; щоб він не йшов як відсутній, додайте правило для цього слова у вкладці «Наявність» джерела (наявність товару в прайсі постачальника).

Сценарії

Додавати товари TDB у каталог одразу з фото й описом

Що зробити. «Повні картки товарів» = 1, завантаження джерела, далі — додавання товарів з прайсу в базовий каталог, як звичайно.

Що вийде. Нові товари в каталозі отримують опис, фото, вагу, габарити й характеристики з TDB. Наступні завантаження оновлюють ціни й наявність, а картки — раз на добу.

Продавати лише те, що є у Львові

Що зробити. У секції «Колонки» в рядку «Статус наявності (з прайсу)» замініть stock_all на stock_lviv.

Що вийде. Товари, яких немає на львівському складі (залишок 0), підуть як відсутні.

Вести ціни TDB у доларах

Що зробити. У рядку «Ціна» замініть price_r_uah на price_r і поставте валюту USD.

Що вийде. Ціна дилера перераховується за курсом з вашого довідника валют, а не за курсом TDB.

Що робити, коли прайс TDB не приїхав

Чому прайс не оновився

Якщо TDB відповів помилкою, програма не затирає прайс: ціни й наявність лишаються з попереднього завантаження. Якщо TDB не віддав каталог карток, прайс усе одно завантажується зі збереженими картками, а картки оновляться наступного разу. Загальна механіка — у статті про способи отримувати прайс.

Розбір частих проблем
Що ви бачитеЧому такЩо зробити
«Помилка API постачальника: TDB get_xml…» з текстом «Користувач не зареєстрований» Неправильний логін або пароль Звірити з посиланням TDB: після username= і pass= (де взяти)
«TDB: впишіть логін і пароль від B2B-кабінету TDB…» Порожній логін, пароль або «Номер прайсу TDB» Вписати три значення з посилання TDB (параметри)
«Повні картки TDB не отримано (…) — прайс завантажується з уже збереженими картками» TDB не віддав каталог карток Нічого: прайс завантажився, картки оновляться під час наступного завантаження
Кількість 105, 130 чи 180 замість 5, 30, 80 Так рахували старі версії: до числа додавалася «Кількість за замовч.» Завантажити прайс ще раз — кількість перерахується
У товарів немає фото й опису Джерело підключене посиланням або «Повні картки товарів» = 0 Перейти на інтеграцію «TDB» (як перейти) і поставити 1

Часті запитання

Чому в товарів TDB кількість 30 або 80?

TDB показує точний залишок лише до 5 штук, далі — пороги «>5», «>30», «>80». Програма бере нижню межу: 5, 30 або 80.

Як часто оновлюються фото й описи TDB?

Каталог карток програма качає раз на добу, ціни й наявність — під час кожного завантаження прайсу.

Чи можна відправити замовлення в TDB з Elbuz?

Ні. Сервіс TDB віддає тільки прайс і каталог, замовлення оформлюють у кабінеті TDB.

Звідки взяти ціну дилера в доларах або оптову ціну?

Вони теж є у файлі TDB: price_r — ціна дилера в доларах, price_gurt — оптова в доларах. Поставте потрібний тег у рядок «Ціна» або вільний рядок «Колонок» (ціни).

Чи будує інтеграція дерево категорій TDB?

Ні. Категорія в прайсі TDB — лише назва, без вкладеності. Її зіставляють з вашими категоріями як звичайно (зіставлення категорій).

Суміжні теми

Чи була стаття корисною?