Рекламни платформи и онлайн магазини

Meta Conversions API (CAPI): практическо ръководство

Практическо ръководство за Meta Conversions API: пуснете го заедно с пиксела с един event_id, изпращайте правилните параметри, тествайте събитията и отстранявайте честите грешки.

·Обновено на ·9 мин четене·От екипа на ROASaurus

Основни изводи
  • Meta Conversions API изпраща събития като Purchase от вашия сървър, така че те стигат до Meta дори когато пикселът в браузъра е блокиран.
  • Използвайте го заедно с пиксела и дайте на двете копия едно и също име на събитие и event_id; тогава Meta отчита събитието веднъж, ако и двете пристигнат в рамките на 48 часа.
  • Събитията от уебсайт изискват action_source, event_source_url и user agent на купувача; хешираните имейл и телефон, IP адресът, fbp и fbc определят колко добре Meta може да ги съпостави.
  • Тествайте с раздела Test events в Events Manager, след това премахнете тестовия код, защото тестовите събития не се отхвърлят.
  • Повечето проблеми идват от несъвпадащи ID-та на събития, собствения IP адрес на сървъра, изгубен fbclid или данни за контакт, хеширани без нормализиране.

Meta Conversions API (CAPI) позволява на вашия сървър да изпраща събития като Purchase директно към Meta. Пикселът на Meta изпраща същите събития от браузъра на купувача. CAPI ги изпраща от вашия сървър, така че те пристигат дори когато блокер на реклами спре пиксела, бисквитката е изчезнала или страницата за благодарност никога не се зареди.

Това ръководство обхваща какво съдържа едно събитие на Conversions API, как да го използвате заедно с пиксела с един event_id, кои параметри Meta изисква и препоръчва, как да тествате с Test events и кои грешки се срещат най-често.

Какво е Meta Conversions API?

Conversions API е част от Graph API на Meta. Вашият сървър изпраща HTTPS POST заявка към graph.facebook.com/VERSION/PIXEL_ID/events с токен за достъп и списък data с до 1,000 събития. Всяко събитие описва едно действие, например покупка, в три части: какво се е случило, кой го е направил и подробностите.

ПолеКакво съдържа
event_nameДействието, например Purchase, AddToCart или InitiateCheckout
event_timeКога се е случило, като Unix времево клеймо в секунди
event_idУникален ID на това събитие, използван за дедупликация спрямо пиксела
action_sourceКъде се е случило: website за покупки в магазина
event_source_urlURL адресът на страницата, на която е станало събитието
user_dataИнформация за клиента за съпоставяне: хеширани имейл и телефон, IP адрес, user agent, fbp и fbc
custom_dataПодробности като value, currency и content_ids
Всяко събитие на Conversions API има една и съща структура: действието, информацията за клиента и подробностите.

Съкратено събитие Purchase изглежда така:

Conversions API: събитие Purchase (съкратено)
{
  "data": [{
    "event_name": "Purchase",
    "event_time": 1792929600,
    "event_id": "order-1042",
    "action_source": "website",
    "event_source_url": "https://yourstore.com/checkouts/thank-you",
    "user_data": {
      "em": ["<SHA-256 of the normalized email>"],
      "ph": ["<SHA-256 of the normalized phone>"],
      "client_ip_address": "203.0.113.24",
      "client_user_agent": "Mozilla/5.0 (iPhone; ...)",
      "fbp": "fb.1.1792928400000.1234567890",
      "fbc": "fb.1.1792928400000.AbCdEf123"
    },
    "custom_data": { "value": 74.00, "currency": "USD" }
  }]
}

Полета за контакт като имейл и телефон се нормализират и хешират със SHA-256, преди да напуснат вашия сървър. IP адресът, user agent, fbp и fbc се изпращат такива, каквито са.

Защо да използвате Conversions API заедно с пиксела?

Meta препоръчва да използвате Conversions API заедно с пиксела и да изпращате едни и същи събития и през двата. Всяка страна вижда нещо, което другата не вижда, и заедно дават на Meta по-пълни данни.

Пиксел на Meta (браузър)
  • Задава бисквитката _fbp и записва fbclid от кликване върху реклама в бисквитката _fbc
  • Вижда страницата и браузъра, докато посещението се случва
  • Губи се, когато браузърът го блокира или страницата не се зареди
Conversions API (сървър)
  • Изпраща платената поръчка от данните на вашия магазин
  • Може да добави хеширани имейл, телефон и адрес от поръчката
  • Не зависи от браузъра, така че блокерите на реклами не го спират
Пикселът носи идентификаторите на браузъра, а сървърът — поръчката. Всеки от тях сам пропуска част от картината.

Цената на използването и на двата е, че Meta вече получава две копия на всяко събитие. Следващият раздел показва как Meta запазва само едно.

Как работи дедупликацията с един event_id?

Meta третира събитие от браузъра и събитие от сървъра като едно и също събитие, когато съвпадат две неща: името на събитието и ID на събитието. В пиксела ID-то се подава в опцията eventID. В Conversions API същата стойност се подава в event_id.

Пиксел на Meta: същият Purchase с eventID
fbq('track', 'Purchase', { value: 74.00, currency: 'USD' }, { eventID: 'order-1042' });
Купувачът плащаПоръчка 1042, $74.00
Пикселът изпраща PurchaseeventID order-1042, от браузъра
Сървърът изпраща Purchaseevent_id order-1042, от поръчката
Meta отчита едноСъщото име и ID в рамките на 48 часа
И двете копия носят едно и също име на събитие и ID, така че Meta запазва една покупка вместо две.

Meta дедуплицира съвпадаща двойка само когато двете копия пристигнат в рамките на 48 часа едно от друго. Няколко правила помагат това да работи на практика:

  • Създайте ID веднъж. Изградете го от нещо, което познават и двете страни, например номера на поръчката, и го подайте на браузъра и на сървъра. Две системи, които си правят всяка свой ID, няма да съвпаднат.
  • Използвайте един формат. order-1042 и 1042 са различни ID-та.
  • Съпоставете името на събитието точно. Purchase и purchase са различни събития.
  • Изпращайте събитието от сървъра веднага. Събитие от сървъра, което пристигне повече от 48 часа след събитието от браузъра, се отчита втори път.

Meta описва и втори метод, който свързва събитията по fbp или external_id. Meta казва, че той по принцип работи само когато събитието от браузъра пристигне преди събитието от сървъра, затова споделеният event_id е по-надеждният избор. Ако Meta все пак отчита повече покупки, отколкото е имал вашият магазин, нашето ръководство за дублиращите се събития за покупка изброява обичайните причини.

Задължителните полета правят едно събитие валидно. Препоръчителните полета определят колко от вашите събития Meta може да съпостави с човек, а само съпоставените събития могат да се използват за атрибуция и показване на реклами.

ПараметърСъбития от уебсайтКакво да изпратите
event_nameЗадължителноСтандартно събитие като Purchase или име на персонализирано събитие
event_timeЗадължителноUnix време в секунди, най-много 7 дни назад
action_sourceЗадължителноwebsite за събития във вашия магазин
event_source_urlЗадължителноURL адресът на страницата, на която е станало събитието
client_user_agentЗадължителноНизът на браузъра на купувача, а не този на вашия сървър
user_dataЗадължителноПоне един параметър с информация за клиента
event_idПрепоръчителноСъщият ID, който използва пикселът, за дедупликация
em, phПрепоръчителноИмейл и телефон, нормализирани и хеширани със SHA-256
client_ip_addressПрепоръчителноIP адресът на купувача, нехеширан
fbp, fbcПрепоръчителноБисквитките с ID на браузъра и click ID, нехеширани
external_idПрепоръчителноВашият собствен ID на клиента, един и същ в събитията от браузъра и от сървъра
value, currencyИзпращайте с PurchaseСтойността на поръчката и трибуквен код на валутата
Meta изброява action_source, event_source_url и client_user_agent като задължителни за събития от уебсайт, изпращани чрез Conversions API.

Три подробности причиняват повечето проблеми:

  • Нормализирайте, преди да хеширате. Meta очаква имейлът да е без излишни интервали и с малки букви, а телефонните номера — като цифри с кода на държавата. Anna@Example.com и anna@example.com дават различни хешове и само вторият може да съвпадне.
  • Не хеширайте идентификаторите на браузъра. fbp, fbc, IP адресът и user agent се подават като обикновени стойности.
  • Запазете click ID точно както е. Стойността на fbc е fb.1., времето на създаване в милисекунди, точка и fbclid от URL адреса на целевата страница. fbclid различава главните и малките букви. Запазете го, когато посетителят пристигне, защото на страницата за плащане вече го няма в URL адреса.

Колко добре тези полета съвпадат е това, което измерва оценката Event Match Quality на Meta. Нашето ръководство за Event Match Quality разглежда всеки параметър, правилата за хеширане и оценката, към която да се стремите.

Как да тествате събития с Test events?

Events Manager има раздел Test events, който показва събитията, докато пристигат. Използвайте го, преди да разчитате на нова настройка.

  1. Отворете Test events

    В Events Manager изберете вашия набор от данни (пиксел) и отворете раздела Test events. Копирайте тестовия код, който показва.

  2. Добавете кода към събитията си от сървъра

    Изпратете го като test_event_code в заявката. В ROASaurus го поставете в полето Test event code на пиксела на Meta.

  3. Направете тестова поръчка

    Посетете магазина, добавете продукт и платете, така че и пикселът, и сървърът да изпратят Purchase.

  4. Сравнете двете копия

    И двете копия трябва да показват едно и също име на събитие, ID на събитие, стойност и валута.

  5. Проверете информацията за клиента

    Събитието от сървъра трябва да носи хеширани имейл и телефон, IP адреса, user agent и fbp, плюс fbc, ако посещението е започнало с кликване върху реклама.

  6. Премахнете тестовия код

    Meta казва, че полето е само за тестване, затова го премахнете, преди да разчитате на събитията.

Purchase browser order-1042 74.00 USDОт пиксела
Purchase server order-1042 74.00 USDОт Conversions API
event_name + event_id matchОтчетени като една покупка
em ph fbp fbc client_ip_address client_user_agentИнформация за клиента в събитието от сървъра
Какво показва добра тестова поръчка (примерни стойности): две копия, един ID и пълна информация за клиента.

Чести грешки при Conversions API и как да ги поправите

Какво виждатеВероятна причинаРешение
Цялата заявка се проваля и никакви събития не се обработватЕдно събитие в пакета има event_time, по-стар от 7 дниИзпращайте събитията, когато се случат. Поправете или изхвърлете старите събития, преди да опитате отново.
Meta отчита повече покупки, отколкото е имал вашият магазинРазлични ID-та на събития, събитие от пиксела без eventID или второ приложение, което изпраща същия пикселИзползвайте един ID за двете копия и един изпращач от страна на сървъра за всеки пиксел.
Ниско качество на съпоставяне при събитията от сървъраВашият сървър изпраща собствения си IP адрес и user agentПредавайте IP адреса и user agent, записани от браузъра на купувача или от поръчката.
Малко събития с fbcfbclid не е бил запазен на целевата страница или е бил промененСъхранявайте fbclid точно както пристига и изграждайте fbc от него.
Имейлът и телефонът не съвпадатСтойности, хеширани без нормализиране или изпратени без хеширанеПремахнете излишните интервали и приведете имейла в малки букви, запазете цифрите и кода на държавата на телефона, след това хеширайте със SHA-256.
Заявките се провалят с грешка за изтекъл токенТокенът за достъп е получен от вход през Facebook, а токените от вход изтичатСвържете се отново или използвайте токен на System User от Business Manager, който можете да създадете без срок на валидност.
Повечето проблеми с Conversions API се проявяват като отхвърлени заявки, двойно отчитане или ниско качество на съпоставяне.

След няколко дни реален трафик отворете раздела Diagnostics в Events Manager. Meta изброява там проблеми с препоръки как да се поправят. След това сравнете дневния брой на Purchase в Events Manager с платените поръчки във вашия магазин за същите дни. Ако Meta е ясно по-висока, нашата помощна страница за избягването на двойното отчитане изброява настройките, които да проверите.

Как да настроите Conversions API с ROASaurus

ROASaurus изпраща събития на Conversions API от данните за поръчките на вашия магазин, така че не се налага сами да изграждате страната на сървъра. В Tracking & platforms кликнете върху Connect with Facebook и изберете своя рекламен акаунт и пиксел или поставете ID на пиксела (набора от данни) и токен за Conversions API. Ръководството за настройка на Meta показва стъпка по стъпка и двата варианта, а страницата за интеграция с Meta изброява всяко изпращано поле.

  • Един ID и от двете страни. Събитията от браузъра и от сървъра споделят един ID на събитието. При покупка това е order-, следвано от ID на поръчката.
  • Кратко изчакване преди покупката. Purchase от сървъра изчаква за кратко, след като поръчката пристигне, така че събитието за покупка от браузъра да може да бъде свързано първо. След това неговите IP адрес, user agent и URL адрес на страницата тръгват със събитието от сървъра заедно с fbp и fbc, запазени за посетителя.
  • Информация за клиента от поръчката. Имейлът, телефонът, името и адресът се нормализират и хешират със SHA-256. ID на клиента в магазина и ID на посетителя в ROASaurus се подават хеширани като external_id.
  • Събитията, които Meta не може да съпостави, се пропускат. Събитие без fbc, fbp, имейл, телефон или IP адрес не се изпраща.

Event log показва всяко изпращане от сървъра със заявката и отговора на Meta. Ако маржовете ви се различават силно между продуктите, можете да изпращате и стойност на печалбата до всяка покупка: нашето ръководство за оптимизацията по стойност на Meta за печалба обяснява как. За пълния път на данните от кликването до поръчката вижте проследяването от страна на сървъра.

Източници

  1. Meta for Developers: Handling Duplicate Pixel and Conversions API Events
  2. Meta for Developers: Server Event Parameters
  3. Meta for Developers: Customer Information Parameters
  4. Meta for Developers: Using the API - Conversions API
  5. Meta for Developers: ClickID and the fbp and fbc Parameters

В ROASaurus

Продължете да четете

Рекламни платформи и онлайн магазиниПроследяване на конверсии при плащане при доставка и външни страници за плащанеПроследяване на конверсии при плащане при доставка: защо пикселите пропускат такива поръчки, както и поръчките от външни страници за плащане, кога да изпратите покупката и как да се справите с отказани поръчки.Рекламни платформи и онлайн магазиниПроследяване на конверсии в CCV Shop: ръководство за настройкаПроследяване на конверсии в CCV Shop: изпращайте платените поръчки към Meta и TikTok с подписан webhook, свържете ги с кликванията върху реклами, настройте, тествайте и обработвайте късните плащания.Рекламни платформи и онлайн магазиниEnhanced conversions на Google Ads в ShopifyEnhanced conversions добавят хеширани данни за клиентите към покупките в Google Ads от Shopify. Как работят, с какво се различават от офлайн импортите и как се настройват.
ЧЗВ

Въпроси и отговори

Нужни ли са ми и пикселът на Meta, и Conversions API?

Meta препоръчва да използвате и двете. Пикселът добавя данни от браузъра, като бисквитката fbp, а Conversions API доставя събития, които браузърът пропуска. Дайте на двете копия едно и също име и ID на събитие, за да брои Meta всяко събитие веднъж.

Колко време Meta изчаква, за да дедуплицира събитие от браузъра и събитие от сървъра?

Meta дедуплицира събитие от браузъра и събитие от сървъра със същото име и ID на събитието, когато пристигнат в рамките на 48 часа едно от друго. Копие, което пристигне по-късно, се отчита отново.

Изисква ли Conversions API данните за клиента да бъдат хеширани?

Да, за данните за контакт. Полетата за имейл, телефон, име и адрес трябва да бъдат нормализирани и хеширани със SHA-256. IP адресът, user agent, fbp и fbc се изпращат без хеширане.

Кои полета са задължителни за събитие от уебсайт?

Всяко събитие се нуждае от event_name, event_time, action_source и поне един параметър с информация за клиента. За събития от уебсайт Meta изисква и event_source_url и client_user_agent.

Мога ли да изпращам стари поръчки през Conversions API?

Само скорошни. event_time може да е най-много 7 дни в миналото, а ако едно събитие в заявката е по-старо, Meta отхвърля цялата заявка.

Всяка продажба, проследена до рекламата, която я е донесла

Проследяване от страна на сървъра, печалба и пожизнена стойност на клиента в едно приложение. 14-дневен безплатен пробен период, без кредитна карта.

Започнете безплатния си пробен период →