Как отправлять события покупателей в Shoply AI из headless-магазина на Shopify
Shoply AI отслеживает поведение покупателей (добавление в корзину, оформление заказа, просмотры товаров и т. д.), чтобы улучшать ранжирование в поиске и рекомендации. В стандартных витринах Shopify это происходит автоматически с помощью нашего расширения Web Pixel . Однако Shopify Web Pixels не работают в headless-витринах, поскольку для внедрения песочницы пикселя они используют механизм рендеринга витрины Shopify.
Если у вас headless-магазин на Shopify (например, на Next.js, Hydrogen или с пользовательским интерфейсом), необходимо отправлять эти события непосредственно из кода интерфейса.
Предварительные требования
- Вы установили Shoply AI, и скрипт Shoply AI загружен в вашей витрине.
Отправка события
После загрузки скрипта Shoply AI он автоматически предоставляет window.shoplyLogEvent. Просто вызывайте его напрямую — вам не нужно самостоятельно управлять идентификаторами сессий, ключами магазина или конечными точками API:
window.shoplyLogEvent(eventName, data)Структура объекта data зависит от типа события (см. ниже).
Обязательные события для поддержки отслеживания конверсий
product_added_to_cart
Вызывайте это событие, когда покупатель добавляет вариант товара в корзину.
await window.shoplyLogEvent('product_added_to_cart', {
"cartLine": {
"cost": {
"totalAmount": {
"amount": 769,
"currencyCode": "USD"
}
},
"merchandise": {
"id": "42553607094387", // Variant ID
"title": "25.5 Mondo",
"price": {
"amount": 769,
"currencyCode": "USD"
},
"product": {
"id": "7834124058739" // Product ID
}
},
"quantity": 1
},
"clientId": "35214700-144e-4022-974e-fe008736e973", // Not used
"referrer": "https://demo.shoplyai.ai/collections/all"
})checkout_completed
Если вы используете стандартную кассу Shopify, обычно это не требуется, поскольку мы автоматически отслеживаем завершение оформления заказа с помощью событий web pixel. Однако если у вас собственный процесс оформления заказа, вызывайте это событие после завершения оформления заказа покупателем (например, на странице подтверждения заказа).
await window.shoplyLogEvent('checkout_completed', {
"token": "8cea7db9ce551f0a8c9113a0f7f2dce0", // Not used
"order": {
"id": "7251060916339", // Shopify Order ID
"customer": {
"id": "9903183265907", // Shopify Customer ID
"isFirstOrder": true
}
},
"lineItems": [
{
"finalLinePrice": {
"amount": 1538,
"currencyCode": "USD"
},
"quantity": 2,
"variant": {
"id": "42553607094387", // Variant ID
"title": "25.5 Mondo",
"price": {
"amount": 769,
"currencyCode": "USD"
},
"product": {
"id": "7834124058739" // Product ID
}
}
},
{
"finalLinePrice": {
"amount": 384.93,
"currencyCode": "USD"
},
"quantity": 1,
"variant": {
"id": "42553643958387",
"title": "157 CM",
"price": {
"amount": 384.93,
"currencyCode": "USD"
},
"product": {
"id": "7834140180595"
}
}
}
],
"clientId": "35214700-144e-4022-974e-fe008736e973", // Not used
"referrer": "https://demo.shoplyai.ai/cart"
})Нужна помощь?
Будем рады назначить встречу с вами и помочь интегрировать отслеживание событий в вашу headless-витрину.