Як вивантажити фід товарів для OpenAI (реклама в ChatGPT)

9 хв

Elbuz збирає фід товарів для реклами в ChatGPT за схемою OpenAI і сам відправляє його на SFTP-сервер OpenAI. Колонки в готовому шаблоні «OpenAI (ChatGPT Ads)» уже названі й заповнені так, як вимагає OpenAI, — збирати їх руками не потрібно.

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

  • Ви запускаєте рекламу товарів у ChatGPT — шаблон дає CSV із 17 полями OpenAI, ціною з кодом валюти і статусом наявності.
  • Ціни й залишки змінюються щодня — розклад шаблону щодня збирає свіжий файл і кладе його на SFTP.
  • OpenAI додав нове поле — воно додається звичайною колонкою з назвою поля OpenAI.

З чого почати: «Вивантаження даних» → «Додати» → «OpenAI (ChatGPT Ads)», далі сценарій першого запуску.

Що вміє шаблон OpenAI

  • 17 готових колонок — назва колонки дорівнює назві поля OpenAI, ціну з валютою, наявність, фото й опис рахує програма.
  • Наявність — in_stock, pre_order або out_of_stock за кількістю і типом статусу наявності.
  • Відправка на SFTP — після кожного вивантаження файл замінює попередній на сервері OpenAI.
  • Пробне вивантаження одного товару — показує значення кожної колонки й нічого не відправляє.
  • Розклад — щоденне оновлення цін і наявності без вас.
  • Нові поля — будь-яке поле схеми OpenAI додається звичайною колонкою.

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

Меню
Довідники → Операції → Вивантаження даних
Інші входи
олівець у рядку шаблону — картка «Додаткове налаштування …»
Право доступу
вікна «Вивантаження» і «Детальне налаштування шаблону вивантаження»
Підготувати
доступ до фідів у рекламному акаунті OpenAI і дані SFTP від OpenAI

Без права на «Детальне налаштування шаблону вивантаження» шаблон видно в списку, але не налаштувати: картка, пробне вивантаження й FTP закриті цим правом.

Що OpenAI приймає і чого вимагає

OpenAI приймає файл товарів у форматі CSV (розділювач — кома), TSV або JSONL у кодуванні UTF-8. Шаблон Elbuz формує CSV з комою.

Доставка — тільки через SFTP: OpenAI не забирає фід за посиланням, як це робить Google Merchant Center. Адресу підключення й пароль видає OpenAI, коли для вашого рекламного акаунта ввімкнено доступ до фідів товарів. Якщо такого доступу немає, OpenAI радить звернутися до своєї команди підтримки акаунтів — у Elbuz його увімкнути не можна.

Обов'язкові поля, без яких OpenAI товар не прийме:

ПолеВимога OpenAI
item_idстабільний ідентифікатор, унікальний у файлі
titleназва, до 150 символів
descriptionопис простим текстом без HTML, до 5000 символів
urlсторінка товару на вашому сайті, публічна адреса HTTP або HTTPS (OpenAI радить HTTPS)
brandсправжня назва бренду, без заглушок
seller_nameназва продавця
image_urlпряме посилання на фото JPEG або PNG
availabilityодне зі значень in_stock, out_of_stock, pre_order, backorder, unknown
priceсума й код валюти через пробіл: 79.99 USD

Заглушки на кшталт n/a чи null OpenAI забороняє: невідоме необов'язкове поле треба лишати порожнім.

Як створити шаблон

Де: «Вивантаження даних» → кнопка «Додати» → група «Файл прайс-листу (XLSX, CSV)» → «OpenAI (ChatGPT Ads)».

Меню «Додати» у вікні «Вивантаження»: група «Файл прайс-листу (XLSX, CSV)» з пунктом «OpenAI (ChatGPT Ads)»
1Група «Файл прайс-листу (XLSX, CSV)»
2OpenAI (ChatGPT Ads)
  1. Файл прайс-листу (XLSX, CSV) — фід OpenAI є CSV-файлом, тому він у цій групі.
  2. OpenAI (ChatGPT Ads) — клік створює шаблон з уже налаштованими колонками.

Одразу після створення відкривається вікно «Додаткове налаштування OpenAI (ChatGPT Ads) #‹номер шаблону›». У ньому вже ввімкнено формат CSV з комою, архівування вимкнено, а ім'я файлу — openai_products.csv. Над списком колонок — підказка з тим, що лишилося налаштувати вручну.

У файл потрапляє товар, який одночасно:

  • активний;
  • має позначку «Вивантажувати у файл (на сайт)»;
  • лежить у категорії, позначеній до вивантаження;
  • має опис мовою шаблону — товар без запису опису обраною мовою випадає з файлу цілком.

Звузити склад ще більше можна на вкладці «Обмеження вивантаження (фільтр)». Як працюють умови відбору: Де задається відбір товарів.

Що потрапляє у файл

На вкладці «Вибір полів» стоять 17 колонок. Назва колонки — це назва поля OpenAI, і в такому порядку вони йдуть у файл.

Вікно налаштування шаблону «OpenAI (ChatGPT Ads)» на вкладці «Вибір полів»: підказка і сітка колонок
1Підказка, що лишилось зробити вручну
2Назва поля
3Формула колонки url
4Колонка price: макро підстановки
  1. Підказка над сіткою — що залишилось зробити вручну: адреса сайту у формулах, виробник у товарах, SFTP.
  2. Назва колонки дорівнює назві поля OpenAI.
  3. У формулі колонки url https://site.com/ замінюють на адресу свого сайту.
  4. Для колонки price джерело — «Макро підстановки»: ціну з валютою рахує програма, власної формули немає.
КолонкаЩо в неї потрапляє
item_idID товару в Elbuz — не змінюється між вивантаженнями
titleповне найменування товару мовою шаблону; якщо воно довше 150 символів, скоротіть його в каталозі
descriptionповний опис без HTML-тегів, обрізаний до 5000 символів; ", – та подібні коди перетворюються на звичайні лапки й тире
urlадреса сайту + SEO-посилання товару
brandвиробник товару
image_urlпосилання на перше фото товару
additional_image_urlsпосилання на решту фото через кому
priceціна у валюті за замовчуванням вашого акаунта: 976.00 UAH
sale_priceакційна ціна в тому ж форматі — тільки коли вона більша за нуль і менша за звичайну, інакше порожньо
availabilityin_stock, pre_order або out_of_stock — правило нижче
gtinGTIN товару, а якщо він порожній — штрихкод EAN
mpnартикул виробника
product_categoryшлях категорії, рівні через знак >
seller_nameназва магазину — текстом у формулі колонки
seller_urlадреса сайту — текстом у формулі колонки
is_eligible_searchtrue
is_ads_eligibletrue — без нього OpenAI не бере товар у рекламу

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

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

  1. in_stock — кількість товару більша за нуль або у товару статус наявності з типом «Є».
  2. pre_order — інакше, якщо в статусу тип «На замовлення».
  3. out_of_stock — у всіх інших випадках.

Тип статусу задається в довіднику статусів наявності.

Як додати нове поле OpenAI

Шаблон — звичайний прайс-лист, тож будь-яку колонку можна додати, видалити чи змінити. Коли OpenAI почне приймати нове поле або ви захочете заповнити необов'язкове, натисніть «Додати поле до вивантаження» і назвіть колонку точно як поле в схемі OpenAI.

Приклад: поле condition (стан товару). Додайте «Своя формула», назвіть колонку condition і впишіть у формулу "new" — у кожному рядку файла буде new.

Службові поля «Ціна з валютою (79.99 USD)», «Наявність, код (in_stock / out_of_stock / pre_order)», «Посилання на головне фото товару», «Повний опис текстом (без HTML, до 5000 символів)» та інші доступні й у звичайному прайс-листі — вони стануть у пригоді для CSV-фідів інших майданчиків.

Що треба доправити вручну

Програма не знає двох речей про ваш бізнес, і їх треба вписати самостійно.

Адреса сайту. Її програма бере з налаштувань основного магазину. Якщо там порожньо, у колонках url і seller_url стоїть https://site.com/. Клацніть клітинку «Формула» в рядку колонки й замініть цю адресу своєю. У url після адреси має лишитися макрос SEO-посилання товару — саме він дописує до адреси шлях до конкретного товару.

Назва магазину. У колонку seller_name підставляється назва основного магазину. Якщо там стоїть назва за замовчуванням, замініть її у формулі на справжню: OpenAI вимагає реальну назву продавця.

Поле brand обов'язкове. У товарів без виробника воно буде порожнім, і OpenAI такі товари відхилить. Заповніть виробника в каталозі до першого вивантаження.

Як відправити файл на SFTP OpenAI

Де: вкладка «Налаштування» → блок «Повʼязані налаштування» → «Налаштування FTP».

Вікно «Налаштування FTP» шаблону OpenAI з порожніми полями підключення
1SFTP
2Адреса сервера і порт
3Ім'я користувача і пароль
4Перевірити підключення
  1. Галочка SFTP — OpenAI приймає файл тільки по SFTP.
  2. Адреса FTP сервера і порт — з адреси підключення, яку видає OpenAI.
  3. Ім'я користувача і пароль — дані від OpenAI.
  4. Перевірити підключення — перевірка введених даних перед вивантаженням.
  1. Увімкніть «SFTP (SSH File Transfer Protocol)».
  2. У «Адреса FTP сервера» впишіть сервер з адреси підключення OpenAI, у «Порт» — порт з тієї ж адреси. Для SFTP програма бере порт як є і не замінює 21 на 22 сама.
  3. У «Ім'я користувача» і «Пароль» — логін і пароль від OpenAI.
  4. «Шлях куди вивантажувати» залиште порожнім: OpenAI чекає файл у корені SFTP, без вкладених папок.
  5. Натисніть «Перевірити підключення».

Після кожного вивантаження файл openai_products.csv кладеться в цю папку під тим самим іменем і замінює попередній. Відправка йде, тільки коли заповнені і сервер, і ім'я користувача: якщо одне з них порожнє, файл збирається, але нікуди не відправляється, і помилки в журналі не буде.

Як перевірити шаблон і запустити перше вивантаження

Кнопка з колбою в шапці вікна шаблону робить пробне вивантаження одного товару: показує кожну колонку з її значенням. Файл при цьому нікуди не відправляється. Перевірте url — посилання має відкриватися — і price з валютою.

Вікно «Перевірка шаблону вивантаження» з результатом для товару 44356
1price
2url
  1. price — сума і код валюти через пробіл.
  2. url — перевірте, що посилання веде на ваш сайт.

Повне вивантаження запускається кнопкою «Вивантажити цей шаблон» у рядку шаблону. У журналі після вдалої відправки з'явиться рядок «Вивантажено файли за FTP: 1 із 1». Що ще показує журнал прогону: Журнал прогону й історія запусків.

Перед першим вивантаженням

Як оновлювати ціни щодня

Ціни й наявність у OpenAI оновлюються тільки новим файлом. Щоб він приходив сам, увімкніть розклад.

Де: вкладка «Налаштування» → «Повʼязані налаштування» → «Налаштування розкладу».

Кожен запуск за розкладом збирає файл заново з поточних даних каталогу і відправляє його на SFTP. Як працює розклад: Запуск руками і за розкладом.

Сценарії

Перший запуск реклами товарів у ChatGPT

  • Що налаштувати: «Додати» → «OpenAI (ChatGPT Ads)»; у формулах url, seller_url і seller_name — свій сайт і назва магазину; «Налаштування FTP» з галочкою SFTP і даними OpenAI → «Перевірити підключення»; пробне вивантаження одного товару.
  • Що вийде: «Вивантажити цей шаблон» збирає openai_products.csv і кладе його в корінь SFTP OpenAI; у журналі — «Вивантажено файли за FTP: 1 із 1».

Щоденне оновлення цін і наявності

  • Що налаштувати: «Налаштування розкладу» в блоці «Повʼязані налаштування».
  • Що вийде: кожен запуск збирає файл з поточних цін і залишків і замінює попередній на SFTP.

Реклама лише частини каталогу

  • Що налаштувати: умови на вкладці «Обмеження вивантаження (фільтр)».
  • Що вийде: у файл ідуть тільки товари, що пройшли фільтр; решти в рекламі OpenAI не буде.

OpenAI почав приймати нове поле

  • Що налаштувати: «Додати поле до вивантаження» → «Своя формула», назва колонки — назва поля OpenAI (приклад з condition).
  • Що вийде: нове поле йде у файл з наступного вивантаження.

Що робити, коли OpenAI не приймає товари

Розбір частих проблем
Що ви бачитеЧому такЩо зробити
«Помилка авторизації на SFTP-сервері!» у журналі Невірні логін або пароль. Якщо після тексту йде повідомлення «Cannot connect to …» — програма не дісталася до сервера: невірні адреса або порт Звірте дані з адресою підключення OpenAI і натисніть «Перевірити підключення» (відправка на SFTP)
Файл зібрано, а рядка «Вивантажено файли за FTP» немає і помилки теж немає У «Налаштування FTP» порожні сервер або ім'я користувача Заповніть обидва поля (відправка на SFTP)
У url стоїть https://site.com/… В основному магазині не вказано адресу сайту Замініть адресу у формулах url і seller_url (що доправити)
OpenAI відхиляє товари через порожній brand У товарів не заповнено виробника Заповніть виробника в каталозі (що доправити)
Товар у наявності, а у файлі out_of_stock Кількість нуль, а в статусу наявності товару тип не «Є» Змініть тип статусу в довіднику статусів наявності (як визначається наявність)
Товару немає у файлі У нього немає опису мовою шаблону або його відсікає одна з умов відбору Перевірте умови складу файла і чому товар не поїхав у файл

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

Чи можна дати OpenAI посилання на файл замість SFTP?

Ні. OpenAI приймає файл товарів тільки через SFTP. Посилання на файл у хмарі, яке Elbuz формує після вивантаження, OpenAI не забирає.

Чи зламає файл кома в назві товару?

Ні. Значення з комою або лапками програма бере в лапки, лапки всередині подвоює — це стандарт CSV, і OpenAI читає такі рядки правильно. Переноси рядків і табуляції в описах замінюються пробілом.

У якій валюті йде ціна?

У валюті за замовчуванням вашого акаунта, її код дописується до суми: 976.00 UAH. Після зміни валюти за замовчуванням наступний файл буде вже з новою.

Як часто оновлюються ціни в OpenAI?

Так часто, як ви вивантажуєте файл: між вивантаженнями OpenAI бачить попередні ціни й наявність. Швидкий канал змін OpenAI (Delta API) Elbuz не використовує. Для щоденного оновлення увімкніть розклад.

Чи можна вивантажити варіанти товару однією групою?

Ні. Кожен товар іде окремим рядком: полів group_id і variant_dict у наборі шаблону немає.

Чи можна вивантажити назви й описи англійською?

Так, якщо тексти англійською є в каталозі. Мову обирають на вкладці «Налаштування» у полі «ID мови»: title і description беруться саме цією мовою. Товар, у якого немає опису англійською, у файл не потрапить зовсім.

Суміжні теми

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