Integrate with Shopify
Affiliate & Influencer on Shopify integrates impact.com's conversion tracking & reporting with your Shopify store. Our app is a no-code plugin, meaning you can integrate and end-to-end test without needing web development expertise.
This guide covers…
- A checklist of action items for your impact.com account before integrating
- How to find and install the impact.com plugin to your Shopify store
- Full end-to-end conversion testing in your store
- Troubleshooting tips
- How order (and item) reversals and modifications work
Pre-integration checklist
The steps below cover the necessary configuration needed to integrate with Shopify. In most cases, your account will be pre-configured with all of these settings, but we recommend checking each to confirm.
Prerequisites
Confirm the following about your Shopify store & impact.com account:
- Your store landing page is hosted by Shopify, not externally. Custom shopping experiences are not supported at this time.
- All products in your Shopify store are assigned a SKU (stock keeping unit) in Shopify. Learn how to edit products in Shopify.
- You're not tracking recurring subscription purchases (only online sales and first-time subscription purchases). If you want to tracking recurring subscriptions, refer to Shopify & Recharge or Shopify & Bold.
- View-Through Tracking is disabled in your impact.com account. By default, this option is disabled, so if you haven't specifically requested it in the past, it should be disabled. See General Tracking configuration.
Step 1: Event Type configuration
Online Sale Event Type
Confirm that your impact.com account has one (1) event type that's validated and configured to track Online Sales.
- From the left navigation bar, select
[Vertical Ellipsis] → Settings.
- In the right column, go to the Tracking section and select Event Types.
- Confirm that your event type matches the screenshot below:
- Type column reads Online Sale.
- Status reads as Active.
- Tracking reads as Web Services.
- Promo Code reads as
[Checkmark].
Tracking Method & Returns Processing
Confirm that the validated event type reports conversions and modifications/reversals (i.e., order & item returns) via API.
From the left navigation bar, select
[Vertical Ellipsis] → Settings.
In the right column, go to the Tracking section and select Event Types.
On the Event Types screen, hover your cursor over the right-most column and select
[Horizontal Ellipsis]→ View/Edit.
On the View/Edit Event Type screen, confirm that:
- Tracking Method is configured as Non-Pixel Tracking (advanced) — Use system web service (API).
- Returns Processing is configured as Automate returns processing (advanced) — Use system web service (API).
Customer Status Mapping
Confirm that impact.com can distinguish between new and existing customers in your Shopify store. Having this data enables to you adjust commission structures based on customer type.
- From the left navigation bar, select
[Vertical Ellipsis] → Settings.
- In the right column, go to the Tracking section and select Event Types.
- On the Event Types screen, hover your cursor over the right-most column and select
[Horizontal Ellipsis]→ View/Edit.
- On the View/Edit Event Type screen, select Show advanced settings.
- Next to the Customer Status Mapping line item, select
[Pencil Icon].- Confirm that New Customer Value has the value
New
, and Existing Customer Value has the valueExisting
.
- Select Save.
Step 2: Gateway Tracking configuration
Campaign Tracking Template (
irclickid
)Confirm that the campaign tracking template is configured exactly the same as the steps below, otherwise tracking will not work.
- From the left navigation bar, select
[Vertical Ellipsis] → Settings.
- In the right column, select Gateway.
- Find the Campaign Tracking Template line item. Confirm it's configured exactly identical to the screenshot below (
irclickid = {clickid}
):
- Select Save.
Deep Linking
Confirm that your website and store domain(s) are configured under deep linking, which enables partners to link traffic directly to specific pages and products.
- From the left navigation bar, select
[Vertical Ellipsis] → Settings.
- In the right column, select Gateway.
- Find the Deep Linking line item and configure the following domains under Permitted Domains, replacing
example.com
with your exact domains — do not use spaces between commas:
example.com,example.myshopify.com,*.example.myshopify.com
- Select Save.
Step 3: General tracking configuration
Site Definition
Confirm that your website domain(s) are configured as site definitions, which enables our tracking solution to forward traffic from our domains to yours.
- From the left navigation bar, select
[Vertical Ellipsis] → Settings.
- In the right column, select General.
- Next to the Site Definition line item, confirm that your domains that you want tracked are specified as a comma-separated list (no spaces). For example,
*.example.com,example.com
tracks everything on your top domain and any subdomains, such aswww.example.com
orstore.example.com
.
- Select Save.
Disable View-Through Tracking
Confirm that View-Through Tracking is disabled.
- From the left navigation bar, select
[Vertical Ellipsis] → Settings.
- In the right column, select General.
- Next to View-Through Tracking, ensure it's disabled.
Add Impact to Shopify
This instruction set covers installing Affiliate & Influencer to your Shopify store.
Install Affiliate & Influencer
While logged in to Shopify, visit the Affiliate & Influencer by impact.com app in the Shopify App Store and select Add app.
Shopify will prompt you that you're about to install Impact: Partnership Cloud. Review the details on the screen, and select Install App.
Once installed, find it in your list of Shopify apps. To begin, select Activate Integration.
Add your impact.com account information:
Refer to your Program Elements document for your specific account information.
Account Data Description Impact Account SID* Navigate to
[Vertical Ellipsis] → Settings → API to find your Account SID. Copy the full case-sensitive value.Auth Token* Navigate to
[Vertical Ellipsis] → Settings → API to find your Auth Token. Copy the full case-sensitive value.Program ID* Enter your Program ID value (a.k.a Campaign ID value). To find this value, select your brand name in the top left corner of Impact. Your Program ID is shown in gray type under your Program name in the Program column.
Sale and Subscriptions Tracker* Navigate to
[Vertical Ellipsis] → Settings → Event Types. Your Event Type ID is the number in parenthesis next to the name of the event type — enter this value.Recurring Subscription Tracker Leave this field blank. Universal Tracking Tag (UTT)* Navigate to
[Vertical Ellipsis] → Settings → General. Paste your entire unique UTT code into this field.Select Save. You'll see a confirmation screen for the enabled integration, along with your Impact account info.
End-to-End Testing
Once the impact.com app is fully installed, you can begin end-to-end testing to ensure everything is working properly. Learn how to proceed with End-to-End Testing.
Troubleshooting
My test conversion isn't appearing in impact.com
If your test conversion isn't appearing, check the following:
- You've waited at least 30 minutes since the test conversion occurred in your Shopify store. Conversion reporting can take up to 2-4 hours during peak times — consider checking back later in a few hours.
- Your Event Type ID in Shopify exactly matches the Event Type ID in impact.com.
- Use the OrderId (OID) Lookup tool to search for the Shopify Order ID of the test order.
If the conversion still hasn't appeared after several hours, there may be something wrong with integration. Reverse the order in Shopify, verify that you've followed the installation instructions & end-to-end testing instructions closely, then try again.
IrClickId
appears under "Additional Details" on the Shopify Order page
IrClickId
appears under "Additional Details" on the Shopify Order pageWhen you view an order in Shopify that was tracked by impact.com, you may notice the irclickid
value appears in the Additional Details section on the order page.
The integration does not overwrite any existing or new notes you apply to customers in Shopify. Any notes you had for a customer will remain untouched, and new notes can be individually created.
Modifications & Reversals
Once integrated, you can modify & reverse items and/or entire orders in Shopify and Impact will update actions accordingly.
Important!
Modifications and reversals you make in impact.com will not be sent to Shopify — we recommend always modifying or reversing items & orders in Shopify first, then confirm it was modified/reversed in impact.com's platform.
A few things to keep in mind:
- A SKU represents an item within an order. For example, if an order has 1 item with the SKU
1ABC23
priced at 10.00, the line item SKU amount would be 10.00. - A line item SKU is a SKU with a quantity larger than 1 in an order (e.g., the order has multiples of the same item). For example, if an order has 2 items, both with the SKU
1ABC23
priced at 10.00 each, the line item SKU amount would be 20.00. impact.com will always show the line item SKU amount. - When applying order-level reversals, the amount reversed from the order is distributed and weighted across all items within an order. In some cases, reversing certain amounts at the order-level could completely reverse an item if the item's price is less than the weighted amount that's applied to it.
- When applying item-level reversals after an order level discount has already been applied, the remaining amount for the item will be weighted / deducted across the remaining items.
Item-level reversals
When modifying a SKU in Shopify, impact.com will receive the updated Quantity
and Amount
and apply it to the item.
Example
-
Shopify reports an order to Impact with two different SKUs that both have the same price:
+-----------------+ | ITEM | PRICE | |========|========| | 1ABC23 | 10.00 | | 9XYZ87 | 10.00 | |=================| | TOTAL | 20.00 | +-----------------+
-
In Shopify, a 5.00 reversal is applied to this order, which is distributed across all SKUs in the order. It will now show in Impact as:
+-----------------+ | ITEM | PRICE | |========|========| | 1ABC23 | 07.50 | | 9XYZ87 | 07.50 | |=================| | TOTAL | 15.00 | +-----------------+
The 5.00 is split evenly across the price of the two items in the order.
-
Let's reverse an individual line item: SKU
1ABC23
is fully reversed, which at its original price of 10.00, means that 10.00 is reduced from the order.+-----------------+ | ITEM | PRICE | |========|========| | 1ABC23 | 00.00 | | 9XYZ87 | 05.00 | |=================| | TOTAL | 05.00 | +-----------------+
Since the item was already reduced at the order level, the remaining 2.50 that can't be removed from
1ABC23
(since it was already reduced) is applied evenly to the rest of the items in the order. -
One final step: reverse
9XYZ87
, meaning 10.00 is reduced from the order. Since it's the only item left and has been reduced down to 5.00, reversing this will refund the entire order in Shopify and reverse the action in Impact.
Order-level reversals
Example
-
Shopify reports an order to Impact with two different SKUs that both have the same price:
+-----------------+ | ITEM | PRICE | |========|========| | 1ABC23 | 10.00 | | 9XYZ87 | 10.00 | |=================| | TOTAL | 20.00 | +-----------------+
-
In Shopify, a 5.00 reversal is applied to this order, which is distributed across all SKUs in the order. It will now show in Impact as:
+-----------------+ | ITEM | PRICE | |========|========| | 1ABC23 | 07.50 | | 9XYZ87 | 07.50 | |=================| | TOTAL | 15.00 | +-----------------+
The 5.00 is split evenly across the price of the two items in the order.
-
Going another step further, the order has a 15.00 reversal applied to it in Shopify. The order is fully refunded in Shopify and reversed in Impact:
+-----------------+ | ITEM | PRICE | |========|========| | 1ABC23 | 00.00 | | 9XYZ87 | 00.00 | |=================| | TOTAL | 00.00 | +-----------------+
Supported parameters
The table below lists all of the supported parameters of the integration — in other words, data that Impact captures from Shopify.
Parameter | Example | Description |
CampaignId | 8882 | Also known as a Program ID, this is the ID number for your Impact program/campaign. |
ActionTrackerId | 16027 | Also known as the Event Type ID, this is the ID number for your Impact event type. |
EventDate | 2020-06-18T14%3A33%3A49 | Tracks the date that the action occurred. |
ClickId | 2uz3sQWFlxyJRcqwUx0Mo34VUkiyyO0tIzeG3U0 | This is the Click Id associated with the action. |
OrderId | 2516623458378 | This is the Impact Oid (Order ID) value associated with the action (not the Shopify Order ID). |
CustomerId | 3222174466122 | If you're tracking and passing customer info, this is an ID number to reference the customer associated with the order. |
CustomerEmail | 38b85baa75385758d44d3dbfd97921c32e0d09a9 | If you're tracking and passing customer info, this is the SHA1 hash of the customer's email. |
CustomerStatus | EXISTING or NEW | If you're tracking and passing customer info, this is the status of the customer associated with the order. |
CurrencyCode | USD | This is the currency code for the currency recorded in the action. |
IpAddress | 1.1.1.1 | The IP address associated with the action. |
UserAgent | Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0 | The user agent string associated with the action. |
For item-level data, the {i} value is replaced with an integer (e.g., 1), and increased for each item that's reported to Impact. For example, If an order had two items, it'd report ItemSku1 , ItemQuantity1 , ItemCategory1 , ItemSubTotal1 , then ItemSku2 , ItemQuantity2 , etc. |
||
ItemSku{i} | KS944RUR | The Shopify SKU number for an item in the action. |
ItemQuantity{i} | 1 | The quantity amount for the first item in the action. |
ItemCategory{i} | Electronics | The name of the Shopify Collection that the item is organized under. |
ItemSubtotal{i} | 60.00 | The subtotal amount of the item before taxes, shipping, and any other costs are added onto the total. |
OrderPromoCode{i} | Welcome10 | Promo code used for the order tracked by the conversion. Only works as an attribution key if this code was assigned as a unique tracking code to a particular partner. In that case, that partner will win credit for this conversion. |
Updated about 1 month ago