Skip to main content
All CollectionsMedia Channel Integrations
Media Channel Enhanced Conversions (Facebook, TikTok, Google)
Media Channel Enhanced Conversions (Facebook, TikTok, Google)
V
Written by Vidushan Kohiladas
Updated over 3 months ago

Facebook Enhanced Conversion Integration

Step 1: Generate Access Token

Work with the client to obtain a facebook access token in order for us to send conversion requests via API.

Within the Facebook Business Manager, navigate to Events Manager and follow these steps:

  1. Select the Pixel that we would like to send offline conversions to

  2. Select the Settings tab

  3. Find the Conversions API section and click on the Generate access token link under Set up manually, and follow the instructions pop-up

Note: The Generate access token link is only visible to users with developer privileges for the business. The link is hidden from other users.

**IMPORTANT** Once the token is generated, be sure to keep a copy of it as you will not be able to see it again, the token is only available for 60 days and the token will need to be replaced with a new one at the end of 60 days. We will automate this in the future.

Step 2: Integrate within Pingtree

There are multiple ways to fire a conversion, ultimately it is up to the client on what they consider a conversion. Here are a few examples:

Form Submission: A client may want a ton of form submission, which means we would want to set up a postback within the source level on form submissions in order for their tiktok ads to target more potential leads that will likely submit a form.

Form Sold: A client may want to target their ads towards traffic that will potentially be sold to one of their buyers within Pingtree, we can set this up through Distribution -> Posting API

Offer Wall Click: A client may want to target leads that are likely to click on a offer wall, we can set this up through Source -> Posting API -> Filter by Events

Offer Wall Conversion: A client may want to target leads that are likely to click on a offer wall and also complete the flow process on the external site, we can set this up through Source -> Posting API -> Filter by Events

Standard events

Website action

Description

Meta Standard event code

Add payment info

The addition of customer payment information during a checkout process. For example, a person clicks on a button to save their billing information.

fbq('track', 'AddPaymentInfo');

Add to cart

The addition of an item to a shopping cart or basket. For example, clicking an Add to Cart button on a website.

fbq('track', 'AddToCart');

Add to wishlist

The addition of items to a wishlist. For example, clicking an Add to Wishlist button on a website.

fbq('track', 'AddToWishlist');

Complete registration

A submission of information by a customer in exchange for a service provided by your business. For example, signing up for an email subscription.

fbq('track', 'CompleteRegistration');

Contact

A telephone, SMS, email, chat or other type of contact between a customer and your business.

fbq('track', 'Contact');

Customize product

The customization of products through a configuration tool or other application your business owns.

fbq('track', 'CustomizeProduct');

Donate

The donation of funds to your organization or cause.

fbq('track', 'Donate');

Find location

When a person finds one of your locations via web, with an intention to visit. For example, searching for a product and finding it at one of your local stores.

fbq('track', 'FindLocation');

Initiate checkout

The start of a checkout process. For example, clicking a Checkout button.

fbq('track', 'InitiateCheckout');

Lead

A submission of information by a customer with the understanding that they may be contacted at a later date by your business. For example, submitting a form or signing up for a trial.

fbq('track', 'Lead');

Purchase

The completion of a purchase, usually signified by receiving order or purchase confirmation, or a transaction receipt. For example, landing on a Thank You or confirmation page.

fbq('track', 'Purchase', {value: 0.00, currency: 'USD'});

Schedule

The booking of an appointment to visit one of your locations.

fbq('track', 'Schedule');

Search

A search performed on your website, app or other property. For example, product or travel searches.

fbq('track', 'Search');

Start trial

The start of a free trial of a product or service you offer. For example, trial subscription.

fbq('track', 'StartTrial', {value: '0.00', currency: 'USD', predicted_ltv: '0.00'});

Submit application

The submission of an application for a product, service or program you offer. For example, a credit card, educational program or job.

fbq('track', 'SubmitApplication');

Subscribe

The start of a paid subscription for a product or service you offer.

fbq('track', 'Subscribe', {value: '0.00', currency: 'USD', predicted_ltv: '0.00'});

View content

A visit to a web page you care about. For example, a product or landing page. View content tells you if someone visits a web page's URL, but not what they do or see on that web page.

fbq('track', 'ViewContent');

Note: The page view event is included as part of your pixel base code. Page view tells you when someone lands on a web page with the pixel base code installed.

Replace {PIXEL_ID} with your actual pixel id..

Headers:

Authorization = Bearer {ACCESS_TOKEN}

Replace {ACCESS_TOKEN} with your actual access token.

Lead Fields:

Email = data.0.user_data.em // data transformer -> sha-256 hash

mobile = data.0.user_data.ph // data transformer -> sha-256 hash

revenue = data.0.custom_data.value

user_agent = data.0.user.user_agent

utc_timestamp = data.0.event_time

Static Fields:

data.0.action_source = web

data.0.event_name = Facebook Event Name (ex. CompleteRegistration)

data.0.custom_data.currency = USD

Facebook Macros

Description

Facebook Parameter

Pingtree Parameter

Campaign Name

{{campaign.name}}

utm_campaign

Ad Group Name

{{adset.name}}

utm_adgroup

Ad ID

{{ad.id}}

MAID

Campaign ID

{{campaign.id}}

MCID

Ad Group ID

{{adset.id}}

MGID

Step 3: Determine Postback Type

There are two postback types to choose from. These signify the triggers for when the postback actually fires back to Facebook.

Form Data:

Selecting this postback type will trigger the postback anytime a lead submits the form, regardless of any further outcome.

Event Data:

Event Data allows you to use Pingtree events (both system events and custom events) as the trigger for when this postback fires.

Example: You can use Pingtree's "Base Form Sold" system event as the trigger. Any time a lead is "Sold" or successfully delivered to an endpoint, this postback will fire.

Using Event Data postback will also allow you to configure multiple Pingtree events and map them to various Facebook events all through a single postback.


Tiktok Enhanced Conversion Integration

There will be cases where the client would like to optimize their tiktok ads to a specific event that does not occur on the actual form, but instead offline, or they may want to only fire specific events depending on a specific buyer rather than all available buyers in their campaign.

Step 1: Generate Access Token

In the TikTok: Ads Manager, after you have completed Step #1, open your pixel and click the Settings tab > Generate Access Token.

Step 2: Integrate within Pingtree

There are multiple ways to fire a conversion, ultimately it is up to the client on what they consider a conversion. Here are a few examples:

Form Submission: A client may want a ton of form submission, which means we would want to set up a postback within the source level on form submissions in order for their TikTok ads to target more potential leads that will likely submit a form.

Form Sold: A client may want to target their ads towards traffic that will potentially be sold to one of their buyers within Pingtree, we can set this up through Distribution -> Posting API

Offer Wall Click: A client may want to target leads that are likely to click on a offer wall, we can set this up through Source -> Posting API -> Filter by Events

Offer Wall Conversion: A client may want to target leads that are likely to click on a offer wall and also complete the flow process on the external site, we can set this up through Source -> Posting API -> Filter by Events

Headers:

Access-Token = Value from Step 1

Lead Fields:

Email = data.0.user.email

Mobile = data.0.user.phone

Transaction_id = data.0.event_id

Ip = data.0.user.ip

Revenue = data.0.properties.value

User_agent = data.0.user.user_agent

Ttclid = data.0.user.ttclid

Utc_timestamp = data.0.event_time

Custom Fields:

event_source = web

data.0.event = Tiktok Event Name (ex. CompleteRegistration)

data.0.properties.currency = USD

data.0.properties.content_type = product

Description

TikTok Parameter

Pingtree Parameter

Campaign Name

{{__CAMPAIGN_NAME__}}

utm_campaign

Ad Group Name

{{__AID_NAME__}}

utm_adgroup

Ad Group ID

{{__AID__}}

MGID

Campaign ID

{{__CAMPAIGN_ID__}}

MCID

Ad ID

{{__CID__}}

MAID

Ad Name

{{__CID_NAME__}}

utm_creative

Google Ads Integration

If you’re using a custom source / marketing partner in Pingtree to send traffic from Google Ads to your offer, we can setup postbacks to send data depending on events:

For example if you want to send google ads all the form submits, you can select ‘Form Data’, if you want to send in Offer Wall Conversions, then you can select ‘Event Data’ and select the event:

You can select multiple different events and associate the events with different actions that you may want to collect and store in Google Ads

The sheet contains:

Google Click ID: We collect this and is stored as GClid

Conversion Name: This will need to be a static field, if you look at my event mapping screenshot you can see that I associated Offer Wall Conversion (500) with offerwall_conversion. This must be the conversion name that you have setup in google ads

Conversion Time: We have the ability to store and send out the current time on the timestamp into UNIX Format. Which will need to be used to convert to the timestamp of your choice within Zapier

Conversion Value: We are storing this in revenue

Conversion Currency: This will need to be a static custom field

Now that you have a live spreadsheet that collects live data from Pingtree, you can set up another zap step in your current zap workflow to send any new records from the spreadsheet back into Google Ads!

Did this answer your question?