This article will cover the following:
- Overview of ecommerce
- Tracking Basics
- Ecommerce Tracking
- Advertiser - Storefront
- Import Feeds
- Offer - Storefront
- Offer - Ecommerce Payout Rules
- Campaign - Affiliate Ecommerce Payout Rules
- Commerce Pixel
- Ecommerce Reporting
The ease of selling products online has lowered the barrier to entry and being a merchant is as commonplace as search engines. However, in order to ensure the right affiliate sales strategy you need access to the accurate real time data and analytics so that you can optimize your spend.
This document will walk you through the process of setting up your instance to take advantage of CAKE’s commerce intelligence functionality. CAKE set out to provide an easy to implement yet powerful view of your ecommerce campaigns.
In performance marketing, accurate tracking and attribution plays a critical role in the success of your affiliate program. With CAKE you can ensure correct attribution for your affiliates and publishers so that they are credited with each transaction. CAKE provides you with a simple set of code - tracking links and conversion pixels - which connect the impression, click and ultimately, the order, along with appropriate attribution and accurate payouts.
CAKE supports two models for attribution – first touch and last touch. First touch simply gives credit for a transaction to the affiliate/publisher that was responsible for the first (initial) click. Conversely, last touch gives credit for a transaction to the affiliate/publisher that was responsible for the last click, prior to the order.
First Touch (default) – Attribution credit is given to the affiliate/publisher responsible for the initial click.
Last Touch – Attribution credit is given to the affiliate/publisher responsible for the last click, prior to an order.
In addition to the types of attribution, CAKE also supports attribution reporting through multiple methods:
Pixel Based Tracking - CAKE supports 4 different conversion pixels:
iFrame: The iFrame conversion pixel is highly recommended when affiliates have a conversion pixel placed as well. This type of conversion pixel allows for piggybacking 3rd party pixels.
Image: The image pixel is never recommended unless the advertiser only supports the image pixel. This type of pixel has a difficult time piggybacking other pixels.
(Server to Server) Postback URL: Also known as a server pixel. This pixel requires a request ID to be sent to the advertiser in the offer link. CAKE accomplishes this by using the token #reqid#. This request ID needs to be sent back in the pixel in the parameter “reqid=” for a conversion to occur.
To better understand how tracking works let’s walk through the process of how a click becomes an order (conversion).
Overview of the click to conversion Workflow:
- An affiliate places a banner with a CAKE tracking link embedded.
- A customer navigates to an affiliate’s website and clicks on a link.
- On the click, the customer is redirected to CAKE to establish the initial click and is then redirected to the advertiser’s (merchant) website. This redirect is done very quickly and a cookie is placed on the customer’s computer with various pieces of data – this will be leveraged to give appropriate attribution at conversion.
- The customer is then redirected to the advertiser’s website to view their content (flash sale page or product detail page).
- The customer adds items to their cart and proceeds to checkout.
- The customer proceeds through checkout and reaches the order receipt page.
- On the receipt page there is tracking code which notifies CAKE that an order has been completed. The corresponding attribution is set (giving credit to the right affiliate).
Sample Click to Conversion Workflow:
- Affiliate pulls their tracking link. – http://trackingdomain.com/?a=1&c=2&s1=
- Customer clicks the tracking link from the affiliate’s website.
- Click tracks through CAKE and redirects to the advertiser’s website.
- Customer navigates the site and completes checkout.
- From the receipt page the conversion pixel fires - http://trackingdomain.com/p.ashx?o=1&t=123&r=25566&ecsk=LL^LLJ&ecqu=1^2&ecpr=10.00^8.00&ecst=44.00&ecd=2&ectx=5.80&ecsh=5.00&ect=69.80&ecco=US&ecrg=CA
- Transactional data is populated into CAKE.
With commerce intelligence, we expand on tracking and provide deeper analytics to include transactional information (order details). By integrating CAKE’s enhanced commerce pixel with the workflow above we can track attribution, payouts and provide details around a customer’s purchase – you can now see how much advertiser revenue (store sales) an affiliate is generating or which brands, products and/or storefront categories are most popular.
Further, we can now take those order level details and create attribution and payout rules based on them. For example, if you wanted to give affiliates varied payouts based on the categories of products purchased you can create multiple category based payout rules. You can provide custom payouts at the category, sku, brand and/or order details, such as order totals or quantity. We’ll get into the details in the “Offer – Ecommerce Payout Rules” section below.
*Note: In order to use commerce intelligence you must have Ecommerce enabled in your settings. If this option is not available you must request access from your Account Manager or purchase the add-on feature (CAKE Basic).
For now, let’s start by describing the basic workflow for CAKE and how we manage attribution. CAKE’s hierarchy looks like the following:
Advertiser – Represents the storefront or website of your advertiser or your specific business. In an ecommerce example, this is where the order is generated (conversion occurs). Offers are created under your advertiser.
Vertical – This represents the industry or business vertical of your offers. For example, you might create a vertical called “Retail – Women’s Fashions”. You can create offers which are grouped into this vertical.
Offer – Offers are the products and services you are extending to your affiliates to promote. For example, you may create a “Back to School” offer which markets school supplies for a particular advertiser. Your affiliates would run traffic to this offer to generate sales and record attribution.
Affiliate – An affiliate is someone who promotes your advertiser’s offers – they provide qualified traffic to your offers.
Campaign – When an affiliate decides they want to run traffic to a particular offer, they create a campaign. A campaign is simply the direct relationship between the offer and affiliate.
As outlined in the above hierarchy there are two starting points in CAKE – creating verticals and advertisers. You can create each independent of one another, but both provide the necessary infrastructure to ultimately start running traffic in CAKE.
Once your CAKE instance is available, go to the login screen (your Admin domain) and sign in.
After signing in, proceed to the Setup tab > select Other Lists sub tab. We’ll start by creating verticals and vertical categories. Vertical Categories are a way to group verticals. From the Other Lists tab, you can navigate to the Vertical Categories widget and select the Add button.
When you select Add you can name your new vertical category and define a featured offer. You may see a number of vertical categories already created. You can either create your new vertical category or proceed to the next step – vertical creation. If you decide to create a new vertical category, the Featured Offer field is optional.
Once you’ve created your vertical categories, you can select the Verticals sub tab from the main Setup tab. In the above right section of the screen, you then click the Add Vertical button.
Advertiser - Storefronts
Now that we’ve created the initial infrastructure we can now create our Ecommerce advertisers and storefronts. As noted earlier, an advertiser can be your website or the website you work with. CAKE provides a flexible infrastructure where you can create a single advertiser, if you have a single website. Or multiple advertisers, where each one represents a different website or business unit. For example, if you were a boutique ecommerce website, marketing cameras, you’d most likely create a single advertiser with your ecommerce website name. The nice thing about CAKE is that it’s up to you to decide. You create your own business rules and we provide the platform.
In order to create an advertiser, hover over the main Advertisers tab from the top navigation > scroll down to Advertisers > select Add a New Advertiser.
This will launch the Add a New Advertiser wizard – there is minimal information required:
Name: Name of the advertiser
Website: Your advertiser’s website address
Notes: Notations (Optional)
All other information at this step in the wizard can be added from the Contacts tab on the Advertiser card.
Once you’ve filled out the information, click Next. This will take you to a review screen – review the information and click Finish. This will then launch the card for the advertiser you just created.
On the Advertiser card, you will see the Storefront tab. This is the initial section to setup and configure your offers to leverage commerce intelligence. Under Storefront, you can configure your website or ecommerce site’s product catalog, configure your storefront categories or create an order reconciliation file.
An advertiser can have single or multiple storefronts. Your advertiser might be a large portal site, which has access to multiple ecommerce websites. Each ecommerce website can be configured as a storefront. Again, CAKE gives you the control on how you’d like to configure your storefronts.
Select the Storefront tab and then click the Add Storefront button.
This will launch a wizard to create your new Storefont. Select the name of your storefront, the advertiser this storefront is associated with (from the wizard your advertiser will already be preselected) and the URL for your storefront. Click Next and you will be taken to the review screen.
Review the information and click Finish. You have now created a storefront and can repeat this process if your advertiser has multiple storefronts.
Now that we have created a storefront there are various tabs available so that we can setup your storefront’s product feed. Let’s review each section of the storefront:
Storefront Drop Down - You can select the drop down and choose which storefront you’d like to edit. When you only have one storefront it will default to that storefront.
Info – The name and URL of your storefront.
Products – Once you’ve imported your product feed your products will be listed in this tab.
Categories – When you import your website’s category hierarchy into CAKE you can review them in this tab.
Import Feeds – This is the initial tab where you configure your website’s various feeds (Product, Category, Reconciliation).
From the Storefront tab > Import Feeds tab you can manage your various feeds and feed types. The most common is a Product Feed Import – CAKE will import your website’s SKU catalog. By importing your product feed, CAKE can leverage the data to create custom payout rules and provide reporting analytics.
From the Import Feeds tab click the Add Import Feed button.
This then launches your Feed Importer wizard. There are a number of fields in this section so let’s review the available fields before we continue.
Import Feed Type: Available options are Product, Category, and Order Reconciliation.
- Product – This method imports your website’s sku catalog.
- Category – This method imports your website’s category hierarchy.
- Order Reconciliation – This is the update process to reconcile (cancel, edit) orders that have been previously processed.
Response Type: CSV – CAKE currently supports product feeds in CSV format.
Mapping Set – When you create a new mapping set they are automatically saved in this drop down. That mapping set can then be leveraged in future imports when the formats match the same mapping. To create a new mapping name, select Add new mapping set.
*Note: When you change an existing mapping set it will be a global change.
Column Delimiter – If your file has a column separator, like a comma, you indicate the character in this field.
Multi Value Delimiter – If you have a column that has multiple values separated by a character you indicate that character in this field. For example, if you have a category hierarchy and the category/subcategories are separated by a carrot, put the “^” in the text field.
Has Headers – If your import file has column names or headers check the checkbox.
Post URL - This can either be the website that hosts your file (http/https) or the FTP location.
Timeout (in milliseconds) - This is the amount of time in milliseconds that you want to wait before the import process times out.
Username/Password - If your site requires credentials for access input those values here (FTP, for example).
Frequency - You can select the time window for CAKE to access and import your feed. The most frequent option is once per day, up to every 9 days.
Start Date - You can select the Start Date from when CAKE will initially pull down your product feed.
Time to Run - Select or input the time that you’d like CAKE to retrieve your file from the remote location.
Enabled – On initial setup this box is disabled. You must complete the setup process before you can enable the import schedule.
Once you’ve entered in the various data points, click Save, which will then enable the Mapping, Post Fields, XML Post and Post Headers tabs.
Post Fields - Additional parameters that your URL or FTP site might require in order to access the file.
Post Headers – If your import feed requires a SOAP call you can add parameters and a SOAP method.
Lets proceed with the import setup and switch from the Request Info tab to the Mapping tab. From this tab, we’ll be able to map all of the various fields needed to import the product feed.
In this section, there are three tabs available to you – Validation, Category, and Product. Since CAKE supports a scheduled process for importing feeds, we need an easy way to validate the import file, or portion of the file, prior to enabling the schedule. From the Validation tab, you can paste in a portion of your feed so that CAKE can perform validation before the full file is imported. As an example, you can grab the first 10 rows of your import file (including the header) and we’ll use this sample set to validate the full file.
After Sample Input:
Once you’ve inputted the data, click Retrieve Data (this may take a few seconds to confirm) and then select Save. *Note: Please remember to select a portion of the file (first 10 rows, for examples)*
Now click the next tab – Category. The Category tab outlines your store’s category hierarchy. This is mapped to a field in the import file. It can be a single field in the file or multiple fields denoting top level categories and their subcategories. For example, you may have your storefront categories as “Mens”, “Womens”, and “Sale”. If that is mapped to a field called “Categories” in the import file, map that name in the Category Name field.
You will also notice the Master Category Name and Master Category Delimeter fields near the top of the Category tab. CAKE maintains an internal listing of master categories, which is mapped in this field. You can see the list of master categories in the following location.
CAKE Master Categories
As best practice it is recommended that you include this category name as part of the feed so that it’s mapped on import.
As a first step, check the Manage Category Hierarchy field. Next, if you have multiple fields in your file that indicate subcategories (Top Level Category – Subcategory, for example), you can define them in the Category Name and Subcategory # Name fields). For example, if you only have one field that defines your categories simply add the field name in the Master Category Name and the same value in the Category Name. If you have multiple fields that define your Category – Subcategories, input the top level category in the Master Category Name and Category Name field. Your subcategories are then listed the Subcategory # Name fields.
Once you’ve entered in your category hierarchy, click the Save button. This saves your category mapping. Next, you’ll want to test that the category mappings layout appropriately. The Test button will load your mapped categories from the sample set you loaded in the Validation box. If the category layout appears to be correct, click Approve.
Next, select the Product tab. In this tab, we are mapping the field values from the import feed to CAKE’s master list of field names. The CAKE list is extensive and not every field is required. The CAKE values are listed to the left hand side of the grid. The feed header names go in the text boxes to the right.
As an example you may have a field called Sku, which outlines the actual sku code from the advertiser’s backoffice system. You can map your sku value to CAKE’s Sku Code field – simply add in the column descriptor in the text box. Performing a complete mapping ensures that this data will be mapped correctly in CAKE and made available to your affiliates/publishers.
The required fields are:
Brand Name - Manufacturer Name (ex. Canon) - cannot be null
Brand Key - Manufacturer Name (ex. Canon) - cannot be null
Product Code - Product ID (ex. XKU-123456), Sku ID - cannot be null, must be unique
Product Name - Product Name (ex. Canon 5D Mark III SLR Camera) - cannot be null
Sku Name - Product ID (ex. XKU-123456), Sku ID - cannot be null, must be uniqueS
Sku Code - Product ID (ex. XKU-123456), Sku ID - cannot be null, must be unique
Price - Sku Price (either Sale or MSRP)
Once you’ve mapped your product feed, click Save > then click Test. This will populate the sample data from the Validation tab into the Results grid. If the data maps correctly, click Approve.
Once you’ve clicked Approve, you can then return to the Request Info tab (first tab) and the Enabled checkbox should now be enabled. Go ahead and click the checkbox and then Save.
You’ve now successfully scheduled your import feed. Based on the Start Date and Time, CAKE will run the product feed import and populate your instance with your feed data. Note: CAKE will retrieve the import feed at the scheduled time, but there may be some latency before the products are available for view in CAKE.
Offer - Storefront
Once your storefront catalog has been imported we can then configure an offer to leverage that catalog data to specify custom payouts. From your Advertiser card > select the Offer tab > then click the Add Offer button.
This will launch the offer creation wizard. Fill out the necessary information:
Name – The name of your offer
Vertical – The vertical you’d like to have the offer grouped under.
Advertiser – Your current advertiser will be listed by default.
Status – There are four statuses available – Public, Private, Apply to Run and Inactive. Public is a status that is visible to any affiliate and they can accept and start running traffic without prior approvals. Private offers are not visible to affiliates unless an admin creates a direct campaign. Apply to Run offers are visible to all affiliates, but require approval from the admin before a campaign is created. Inactive offers are offers that are no longer directing traffic.
Offer Type – There are three available options, but for now, we’ll focus on Hosted and Third Party
Offer Currency – The currency that this offer will be paid in.
Price Format – CPA, CPC, CPM, Fixed and Revenue Share. In the ecommerce space, we’ll focus on two – CPA and RevShare. CPA is a specified payment amount for each order (conversion) - $1.00 CPA per order, for example. RevShare is a specified percentage on each order – 20% revenue share per order.
Received – This is the amount that you receive from the advertiser on each order (conversion).
Paid – This is the default amount you will pay your affiliate for each order (conversion).
Offer Link – This is the base offer link that you create for your offer. When a tracking link is clicked, this will be the URL that the customer will land on – typically this is your advertiser’s website.
Click Next on the wizard to review and confirm the information that you entered in the previous step. Then click Finish. You have now created your offer!
Offer - Ecommerce Payout Rules (Commission Types)
You can create granular order and catalog based payouts with commerce intelligence. This means you can set payouts based on sku, brand, category and order value. You can set these payout rules in the Offer card > Ecommerce tab.
In order to enable the Ecommerce functionality on your new offer select the appropriate storefront from the drop down under the Info tab.
**Note, you can only select one storefront per offer and once you’ve created Ecommerce Payout Rules, you will not be able to change storefronts.
Once you’ve selected a storefront and clicked Save, the Ecommerce tab will appear.
Select the Ecommerce tab to begin configuring your payout rules. On the Ecommerce tab, there are two options available – Related Products and Ecommerce Payout Rules.
Related Products – This section will help define to your affiliates what brands, categories and products are included/accepted for this offer. It also determines which categories/brands/skus will be made available for publisher access.
You can click the Add Related Products section to filter the available products. If you leave this section empty all products will be available to your publishers in their product feeds.
Ecommerce Payout Rules – This is the “brains” for controlling your payout rules. You define what you will pay your affiliates based on the storefront catalog. There are four levels for defining payouts – Sku, Category, Brand and Filters.
Sku – This is the individual Sku that qualifies as your payout. As an example, when an order is taken and that sku is part of the order we will match on this rule and payout.
Categories – As with brand, each sku is associated with a category. When you define a payout rule based on category, any SKU that’s associated with that category will match payout rules.
Brand – This is defined from your storefront product feed. When you define a payout rule based on brand, any sku that’s associated with that brand will match payout rules.
Filter – While Sku, Brand and Categories are defined from Storefront product feed, Filters are matched on the data from the commerce pixel. Available Filter Types are – Order Total, SubTotal, Voucher, Coupons, Line Item Price, Line Item Qty and Line Item SubTotal. For example, you define a payout rule where you will pay on any order that exceeds $100.
Now that we have an understanding of the available payout options, let’s discuss how we configure an Ecommerce Payout Rule. The Payout Rule screen is divided into two hierarchical sections – Rules and Conditions. Rules are placeholders for your Conditions and each Rule can have multiple Conditions.
As an example, we have defined three Payout Rules – a Brand Rule, Category Rule and Sku Rule. When I open my Sku Rule, I see that I have one sku defined as a condition. If an order is processed, CAKE will scan all the rules available and match each qualifying rule. By default, CAKE will take all matching rules and select the highest payout.
Let’s add a Payout Rule – select Add and a new line will appear in the Rules grid.
Name – This is the Name of your Payout Rule. You can enter in any name, but best practice is to put as descriptive a name as possible – “Offer – Rule Filter” is a good descriptor.
Description – Provides a detailed description of the payout rule – As with name you can enter in any descriptor, but try to be as descriptive as possible.
Price – This is the payout that you define when a rule matches.
Once you’ve entered those fields, click Save. This will then open the bottom half of the Payout Rule grid so that you define the conditions for your payout rule.
Click Add New Condition and this will open up your storefront catalog data. You can use this catalog data to define your conditions for payout. As described above, there are various conditions you can select to define your Payout Rules – Sku, Categories, Brands, and Filters.
Let’s create a condition based on Category – Select the Category tab and you will see your storefront categories defined in the grid to the left. You can select your top level categories or drill down into your subcategories. Click the + symbol to add specific categories as your conditions for payout. This will move those categories to the Included Items section, which means when an order is processed and one of the SKUs belongs to this category, we will match that condition for payout.
You can add as many conditions as you’d like, but each condition creates an “And” relationship to other conditions in the rule. In other words, if you have two conditions defined both must match for the rule to match.
By default, we will scan all matching rules and select the highest paying rule for the entire order. In other words, if you have two line items in your order and they match on two payout rules – Rule #1 with a CPA of $2.00 and Rule #2 with a CPA of $3.00 – CAKE will select Rule #2 and payout $3.00 since it has the higher payout.
As a variation, CAKE also supports a payout model that pays on each matching line item of your order, called Order Details Payout Rule. This can be enabled from the Ecommerce Payout Rules grid and once enabled, it will pay on each matching payout rule.
Campaign - Affiliate Ecommerce Payout Rules
The rules that you defined in the offer are automatically inherited when a campaign is created. By inheriting the payout rule, you can set different payouts based on your relationship with that affiliate. Your affiliate may be preferred and known for providing quality, high converting traffic. As a result you may want to define a higher payout just for them. Simply open the Campaign card for that affiliate, select the Ecommerce Payout Rules and you will see the default payouts defined.
As part of our support for Ecommerce and product data in CAKE, we also expanded the functionality of our commerce pixel. On Ecommerce (storefront based) offers you can now implement the CAKE Commerce Pixel (conversion pixel) to pass order detail information when an order is generated.
The updated pixel format looks like the following:
Sample Commerce Conversion Pixel
<iframe src="http://trk.clientdomain.com/p.ashx?o=769&t=123&r=25566&ecsk=144^201^242&ecqu=1^2^3&ecpr=10.00^8.00^12.00&ecld=0^1.00&ecst=61.00&ecd=2&ectx=5.80&ecsh=5.00&ect=69.80&ecco=US&ecrg=CA" width="1" height="1" frameborder="0"></iframe>
Sample Postback Request (Server to Server)
r - request Id - generated by CAKE (append your offer link with #reqid#)
a - Advertiser ID
p - Revenue - If you are using a Revshare, please include the 'p' parameter to pass in the price through the pixel so that the correct Revshare calculation can be determined for each order.
t - Order/Transaction ID
ecld - Line Item Discount
ecv - Voucher
ecc - Coupon
eccu - Order Currency
ecd - Order Discount
ecst - Order Sub Total
ectx - Order Tax
ecsh - Order Shipping
ecco – Shipping Country
ecrg – Shipping Region
If any of the following parameters are used, all of them will be required.
ecsk - Line Item SKU *
ecqu - Line Item Quantity *
ecpr - Line Item Price Per Item *
ect - Order Total *
*Denotes Mandatory Fields
If you have multiple line items as part of your order you can separate them respectively with the “^” symbol. For example, you may have an order that has two line items (two skus). You can post both skus in the ecsk parameter (sku parameter) as such: exsk=sku1^sku2.
CAKE provides both “raw” commerce and performance based commerce reports. When an order (conversion) is tracked the details of the order are stored with it – skus, quantities, order amounts, line item prices, etc. With this data we’re able to create detailed views of your ecommerce data.
These reports give sku, brand, and storefront centric details about the orders that are transacted on the advertiser’s website. CAKE provides multiple reports and drill downs to give you visibility on the types of traffic and orders being tracked.
Storefront Report – This is a high level view of each storefront that was defined and their corresponding order traffic. You get a high level view of the revenue generated by each storefront.
Brand Report – This is a drill down available on the Storefront report that gives you a breakdown, delineated by brand, of the orders and revenue generated.
Category Report - This is a drill down available on the Storefront report that gives you a breakdown, delineated by your advertiser’s categories, of the orders and revenue generated.
Sku Report – This is a drill down available on the Brand and Category reports that gives you a breakdown, delineated by defined sku, of the orders and revenue generated.
Product Report – This is a drill down available on the Brand and Category reports that gives you a breakdown, delineated by defined product, of the orders and revenue generated.
These reports give performance centric details (affiliate, campaign, offer, etc.) about the orders that are transacted on the advertiser’s website.
On each of the main performance reports, CAKE has added Order Total, Orders, and AOV (Average Order Value). The reports also include a Storefront Filter so that you just see the respective performance data by storefront.
These additional columns provide ecommerce data to your various performance views and how it affects your overall traffic. For example, if you wanted to see which affiliates drove the highest AOV by a particular storefront, you would view the master Affiliate Report, filter by your storefront and then sort by AOV.