Integração sem cookies com Shopify
Passo 1 : Criar Oferta
Para rastreamento sem cookies, é obrigatório incluir o parâmetro click ID e o token na URL da oferta e também em todas as páginas de destino ao criar uma oferta no painel Offer18.
https://shopurl.com/?<YOUR-CLICK-ID-PARAMETER>={tid}
Passo 2 : Colocação do Código
No seu admin do Shopify, vá para "Configurações"
Navegar para "Eventos de cliente" » "Adicionar Pixel Personalizado"
Digite o "Nome do pixel" e então clique "Adicionar pixel"
Remova o conteúdo existente da seção "Código"
Agora, coloque o script fornecido abaixo em "Código"
analytics.subscribe("page_viewed", (event) => {
const sdkScript = document.createElement('script');
sdkScript.setAttribute('src', 'https://web-resources.offer18.net/sdk/web/WebSDK.js');
sdkScript.setAttribute('async', '');
document.head.appendChild(sdkScript);
sdkScript.onload = function () {
// window.Offer18WebSDK.activateDebugMode();
window.Offer18WebSDK.initializeConversion('<YOUR-CLICK-ID-PARAMETER>');
};
sdkScript.onerror = function () {
console.error('Failed to load the Offer18 Web SDK.');
};
});
analytics.subscribe('checkout_completed', (event) => {
var discountString;
var totalAmount = event.data.checkout.totalPrice.amount;
var orderID = event.data.checkout.order.id;
var currency = event.data.checkout.currencyCode;
var allDiscountCodes = event.data.checkout.discountApplications.map((discount) => { if (discount.type === 'DISCOUNT_CODE') { return discount; } });
if (allDiscountCodes.length > 10) { discountString = ''; } else { discountString = allDiscountCodes.map((item) => item.title).join(','); }
const sdkScript = document.createElement('script');
sdkScript.setAttribute('src', 'https://web-resources.offer18.net/sdk/web/WebSDK.js');
sdkScript.setAttribute('async', '');
document.head.appendChild(sdkScript);
sdkScript.onload = function () {
// window.Offer18WebSDK.activateDebugMode();
window.Offer18WebSDK.trackConversion({
domain: '<YOUR-POSTBACK-DOMAIN>',
accountId: '<YOUR-ACCOUNT-ID>',
offerId: '<CAMPAIGN-ID>',
postbackType: 'ajax',
coupon: `${discountString}`,
conversionData: {
sale: `${totalAmount}`,
currency: `${currency}`,
adv_sub5: `${orderID}`,
}
});
};
sdkScript.onerror = function () {
console.error('Failed to load the Offer18 Web SDK.');
};
});
Certifique-se de que os espaços reservados no script sejam substituídos pelas informações reais da campanha. Os espaços reservados são explicados na tabela fornecida abaixo.
Espaço reservado
Explicação
<YOUR-CLICK-ID-PARAMETER>
Isto é o clickid
parâmetro usado ao criar a oferta.
<YOUR-POSTBACK-DOMAIN>
Domínio de postback do usuário. (domain)
<YOUR-ACCOUNT-ID>
ID da conta Offer18 do usuário. (accountId)
<CAMPAIGN-ID>
Id da oferta. (offerId)
No caso do Shopify 'postbackType' deve ser 'ajax'
Vá para Salvar

Opções Personalizadas de Checkout
Se você estiver usando qualquer um dos checkouts personalizados listados abaixo, deve usar o script de conversão correspondente específico para esse checkout de terceiros.
Shiprocket
analytics.subscribe("page_viewed", (event) => {
const sdkScript = document.createElement('script');
sdkScript.setAttribute('src', 'https://web-resources.offer18.net/sdk/web/WebSDK.js');
sdkScript.setAttribute('async', '');
document.head.appendChild(sdkScript);
sdkScript.onload = function () {
// window.Offer18WebSDK.activateDebugMode();
window.Offer18WebSDK.initializeConversion('<YOUR-CLICK-ID-PARAMETER>');
};
sdkScript.onerror = function () {
console.error('Failed to load the Offer18 Web SDK.');
};
});
analytics.subscribe('PurchaseSR', (event) => {
var totalAmount = event.customData.value;
var orderID = event.customData.transaction_id;
const sdkScript = document.createElement('script');
sdkScript.setAttribute('src', 'https://web-resources.offer18.net/sdk/web/WebSDK.js');
sdkScript.setAttribute('async', '');
document.head.appendChild(sdkScript);
sdkScript.onload = function () {
// window.Offer18WebSDK.activateDebugMode();
window.Offer18WebSDK.trackConversion({
domain: '<YOUR-POSTBACK-DOMAIN>',
accountId: '<YOUR-ACCOUNT-ID>',
offerId: '<CAMPAIGN-ID>',
postbackType: 'ajax',
coupon: `${discountString}`,
conversionData: {
sale: `${totalAmount}`,
adv_sub5: `${orderID}`,
}
});
};
sdkScript.onerror = function () {
console.error('Failed to load the Offer18 Web SDK.');
};
});
GoKwik
analytics.subscribe("page_viewed", (event) => {
const sdkScript = document.createElement('script');
sdkScript.setAttribute('src', 'https://web-resources.offer18.net/sdk/web/WebSDK.js');
sdkScript.setAttribute('async', '');
document.head.appendChild(sdkScript);
sdkScript.onload = function () {
// window.Offer18WebSDK.activateDebugMode();
window.Offer18WebSDK.initializeConversion('<YOUR-CLICK-ID-PARAMETER>');
};
sdkScript.onerror = function () {
console.error('Failed to load the Offer18 Web SDK.');
};
});
analytics.subscribe('gokwik', (event) => {
var totalAmount = eventData.customData.total_price;
var orderID = eventData.customData.order_name;
const sdkScript = document.createElement('script');
sdkScript.setAttribute('src', 'https://web-resources.offer18.net/sdk/web/WebSDK.js');
sdkScript.setAttribute('async', '');
document.head.appendChild(sdkScript);
sdkScript.onload = function () {
// window.Offer18WebSDK.activateDebugMode();
window.Offer18WebSDK.trackConversion({
domain: '<YOUR-POSTBACK-DOMAIN>',
accountId: '<YOUR-ACCOUNT-ID>',
offerId: '<CAMPAIGN-ID>',
postbackType: 'ajax',
coupon: `${discountString}`,
conversionData: {
sale: `${totalAmount}`,
adv_sub5: `${orderID}`,
}
});
};
sdkScript.onerror = function () {
console.error('Failed to load the Offer18 Web SDK.');
};
});
Coletar Dados
Você pode coletar dados de conversão usando vários Parâmetros de Postback da Offer18
Dados de Conversão
Parâmetro de Postback do Offer18
Variável a usar
Moeda
currency
`${currency}`
Valor Total do Pedido
sale
`${totalAmount}`
ID do Pedido
adv_sub5
`${orderID}`
Cupons de Desconto
cupom
`${discountString}`
Modo de Depuração
O usuário pode ativar o modo de depuração descomentando 'window.Offer18WebSDK.activateDebugMode();'

Atualizado
Isto foi útil?