Перейти до змісту

Prom Оновити ціни

Вигрузка цін у магазин на Prom. Служба бере ціни з ERPJS і виштовхує їх на маркетплейс — щоб на вітрині завжди було те, що в обліку, а не те, що хтось колись вписав у кабінеті руками.

Де шукати: Модулі → Prom → Служби → Prom Оновити ціни

Розбір на прикладі

Вікно служби

Вікно без параметрів: «Виконати» — разово, «За розкладом» — регулярно. Що саме вигружати, вирішують «Prom Налаштування».

Звідки береться ціна і хто їде у вигрузку

  • Ціна товару — з прейскуранта, вказаного в налаштуваннях; якщо товару в прейскуранті немає або ціна там нульова — «Ціна» з картки товару. Прейскурант у налаштуваннях не вказано — ціна береться з якогось прейскуранта, де товар є, і з якого саме — не визначено, тож його краще вказати. Якщо в товару в прейскуранті кілька рядків (наприклад, персональні ціни клієнтів), який із них поїде, теж не визначено. Товар без ціни (нуль чи порожньо) не відправляється.
  • Код прейскуранта в налаштуваннях не звіряється з довідником: помилка в коді — і весь каталог мовчки поїде за «Ціною» з карток.
  • Ціна прейскуранта в іншій валюті їде в базовій: служба переводить її за поточним курсом валюти прейскуранта й округлює за правилом грошей компанії. Прейскурант без валюти вважається базовим. Курсу немає — ціну цього товару служба не надсилає («Ціна» з картки її не заміняє) і попереджає: «Не надіслано на Prom.ua товарів: … — у валюти прейскуранта немає курсу (коди товарів: …). «Останнє оновлення» не пересунуто, наступний запуск їх надішле». «ПДВ» («Включає» / «Виключає») і «Період» прейскуранта служба не враховує. Для Prom вказуйте прейскурант саме з тією ціною, яку має бачити покупець.
  • Їдуть лише товари, зшиті з Prom (заповнений «Код Prom» на вкладці «Синхр.» картки — його ставить служба «Prom Оновити ключі товарів» або людина вручну), без позначки «Закрито» і з галочкою «Синхронізувати з Prom.ua» на тій самій вкладці. «Код Prom» — числовий номер товару на Prom: товар, у якого код не лише з цифр (12abc, abc), служба не надсилає й називає його код товару в попередженні «Не надіслано на Prom.ua товарів: … — «Код Prom» у картці не число (коди товарів: …)». Один товар Prom — одна картка: якщо той самий «Код Prom» стоїть у кількох картках (уручну — 68 і 068 — чи в копії картки, зробленій не у вікні), чия це ціна, не визначити, тож не йде жодна, а служба називає їх у попередженні «Не надіслано на Prom.ua товарів: … — той самий «Код Prom» стоїть і в іншій картці (коди товарів: …)». Лишіть код лише в потрібній картці й збережіть її — наступний запуск ціну надішле. Товари зі знятою галочкою служба пропускає й називає їх кількість: «Не надіслано на Prom.ua товарів: … — у їхній картці знято «Синхронізувати з Prom.ua»».
  • Знято «Ввімкнути синхронізацію з Prom.ua» в налаштуваннях товарів — служба не шле нічого: «У «Налаштуваннях товарів» знято «Ввімкнути синхронізацію з Prom.ua»: на Prom.ua нічого не надіслано». Позначка «Останнє оновлення» при цьому стоїть на місці, тож після ввімкнення поїде все, що змінилось за час вимкнення.
  • Служба інкрементальна: відправляються тільки товари, чия ціна (у будь-якому прейскуранті) чи картка мінялись після позначки «Останнє оновлення» з налаштувань. Видалений рядок прейскуранта вигрузки не викликає. Після вигрузки позначка пересувається на поточний момент — якщо в кожного товару є курс, і тоді, коли Prom відхилив окремі позиції. Про такі позиції служба попереджає: «Prom.ua відхилив позицій: … (коди Prom: …) — їхні ціни на Prom.ua не оновлено» (до десяти кодів). Відмова позиції стосується даних товару, тож повтор її не вилікує: виправте товар — і змінена картка чи ціна поїде наступним запуском.
  • Якщо Prom не прийняв порцію зовсім (невірний токен, збій на боці Prom, у відповідь — не дані, а сторінка), позначка стоїть на місці, а служба попереджає: «Prom.ua не прийняв оновлення цін (HTTP …): «Останнє оновлення» не пересунуто, наступний запуск надішле ці товари знову». У дужках — HTTP-статус відповіді. Повторна відправка нічого не псує: Prom просто перезапише ту саму ціну.
  • На Prom пакети йдуть порціями по 100 позицій — великий каталог вигружається за один запуск.

Типові ситуації

Змінив ціну, а на Prom стара. Служба ще не запускалась після зміни — запустіть або дочекайтесь розкладу. Якщо запускалась — перевірте, чи товар зшитий (заповнений «Код Prom» і стоїть «Синхронізувати з Prom.ua» у картці) і чи ціна змінилась саме в тому прейскуранті, який вказано в налаштуваннях.

«Prom.ua не прийняв оновлення цін (HTTP …)…». HTTP 401 чи 403 — невірний або прострочений «Токен», 5xx — збій на боці Prom; за іншого статусу перевірте ще й «Хост». Виправте «Prom Налаштування» або дочекайтесь, поки Prom оживе, і запустіть службу знову: позначка не рухалась, тож поїдуть ті самі товари.

«ПОМИЛКА СЛУЖБИ!» без пояснень. Prom не відповів зовсім — перевірте «Хост» і «Порт» у налаштуваннях. Позначка не пересунулась, тож наступний запуск надішле ті самі товари; порції, що пішли до збою, на Prom уже застосовано.

Треба перевигрузити ВСІ ціни. Очистіть «Останнє оновлення» в «Prom Налаштуваннях» — наступний запуск відправить весь каталог. Вписуючи позначку руками, тримайтеся формату ДД/ММ/РРРР ГГ:ХХ (служба розуміє й формати дат із налаштувань користувача, наприклад 2026-10-05 10:00). Текст, якого служба не розбере, запуску не зупиняє: поїде весь каталог, а служба попередить, що позначку не розпізнано.

Частина товарів оновилась, частина ні. Prom повертає помилки по конкретних позиціях (наприклад, товар видалений у кабінеті), а решта пакета проходить; служба називає до десяти кодів Prom таких позицій, подробиці — у серверному журналі. Позначка «Останнє оновлення» при цьому все одно пересунулась, тож наступний запуск ці товари не повторить, поки їхня ціна знову не зміниться: усуньте причину й очистіть «Останнє оновлення».