Skip to content

Commit 604dcdd

Browse files
authored
Merge branch 'master' into marin/aws-updates
2 parents c4615d4 + 7f7bcc8 commit 604dcdd

File tree

1 file changed

+41
-31
lines changed
  • src/connections/sources/catalog/libraries/website/shopify-littledata

1 file changed

+41
-31
lines changed

src/connections/sources/catalog/libraries/website/shopify-littledata/index.md

Lines changed: 41 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,14 @@ redirect_from:
66

77
<!-- LR Note: the working copy of the source catalog YML we built on showed this in the `website` source though as of Nov 18 it's labeled cloud-source -->
88

9-
Littledata is a smart analytics app that automates e-commerce tracking. Littledata's [Shopify-to-Segment connection](https://blog.littledata.io/help/posts/segment-overview/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners) automatically tracks key e-commerce events on a Shopify or Shopify Plus store, so you can use Shopify as a source in your Segment workspace.
9+
Littledata is a smart analytics app that automates e-commerce tracking. Littledata's [Shopify-to-Segment connection](https://blog.littledata.io/help/posts/segment-overview/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners){:target="_blank"} automatically tracks key e-commerce events on a Shopify or Shopify Plus store, so you can use Shopify as a source in your Segment workspace.
1010

11-
Littledata is available as an independent [Shopify App](https://apps.shopify.com/segment-com-by-littledata). When you install the Littledata app on your store, Littledata does two things:
11+
Littledata is available as an independent [Shopify App](https://apps.shopify.com/segment-com-by-littledata){:target="_blank"}. When you install the Littledata app on your store, Littledata does two things:
1212

1313
1. It inserts a smart tracking script to your store's front end. You can use this script with any Shopify site, and uses Analytics.js under the hood to send data in a spec-compliant manner to Segment.
1414

1515
2. The app also sets up server-side webhook forwarding to ensure 100% accuracy of important Customer and Order data.
1616

17-
This source has a full [tracking plan and event schema](https://docs.google.com/spreadsheets/d/1aljowRhMU9_7uGXmcipbP1Y14S4cOSdXGQA2Vx7BHko/copy) in Google Sheets, which is ready to [upload into Protocols](/docs/protocols/apis-and-extensions/#google-sheets-tracking-plan-uploader).
18-
1917
Here's an architecture diagram that shows how the Littledata app mediates data flow between Shopify and Segment.
2018

2119
![](images/littledata_arch.png)
@@ -26,23 +24,25 @@ Here's an architecture diagram that shows how the Littledata app mediates data f
2624
## Getting Started
2725

2826
1. **Login** to your Shopify Store account.
29-
2. Go the [Shopify app store listing](https://apps.shopify.com/segment-com-by-littledata) for **_Segment.com by Littledata_**.
27+
2. Go the [Shopify app store listing](https://apps.shopify.com/segment-com-by-littledata){:target="_blank"} for **_Segment.com by Littledata_**.
3028
![](images/Nd5L0C6.png)
3129
3. Click **Add app** to begin the installation process.
3230
4. **Sign up** for a Littledata account using an email address, Google login or Facebook login. _More team members can be added to the subscription after completing the installation process._
3331
5. Add the [**Segment write key**](/docs/connections/find-writekey/) for the source that is going to send data in the **input field**.
3432
![](images/eLUh6GF.png)
35-
6. Choose either an **Automatic** or a **Manual** install. _Automatic installs work in most instances, but if you choose to do a manual install, just follow [this guide](https://blog.littledata.io/help/posts/segment-installation-guide/)._
33+
6. Choose either an **Automatic** or a **Manual** install. _Automatic installs work in most instances, but if you choose to do a manual install, just follow [this guide](https://blog.littledata.io/help/posts/segment-installation-guide/){:target="_blank"}._
3634
![](images/iYM76VI.png)
3735
7. Segment's **analytics.js** library, Littledata **tracking script** and **webhooks** will be automatically applied to the store and the installation process will then be complete.
3836
![](images/kvjNx4M.png)
3937

38+
## Event schema
39+
40+
This source has a full [tracking plan and event schema](https://docs.google.com/spreadsheets/d/1aljowRhMU9_7uGXmcipbP1Y14S4cOSdXGQA2Vx7BHko/copy){:target="_blank"} in Google Sheets, which is ready to [upload into Protocols](/docs/protocols/apis-and-extensions/#google-sheets-tracking-plan-uploader).
41+
4042
## Device-mode events
4143

4244
Below is a table of events that **Shopify by Littledata** sends to Segment through the analytics.js library. These events will show up as tables in your warehouse, and as regular events in your other Destinations supporting device-mode.
4345

44-
You can _opt out_ of device-mode pageviews or events by setting `disableClientSideEvents: true` or `disablePageviews: true` in the `LittledataLayer` settings.
45-
4646
| Event Name | Description |
4747
| --------------------- | ------------------------------------------------------------------- |
4848
| Cart Viewed | A user has viewed the /cart page |
@@ -59,6 +59,10 @@ You can _opt out_ of device-mode pageviews or events by setting `disableClientSi
5959
> note ""
6060
> \*This is less reliable than the de-duplicated `Order Completed` event sent from the Littledata servers, but you can use it in device-mode destinations to trigger a conversion. The `payment_method` and `shipping_method` properties are not available with this event.
6161
62+
You can _opt out_ of device-mode pageviews or events by setting `disableClientSideEvents: true` or `disablePageviews: true` in the `LittledataLayer` settings.
63+
64+
The source also respects [GDPR-compliant cookie](https://blog.littledata.io/2021/06/18/shopify-cookie-banner-gdpr-compliance/) consent via Shopify's cookie banner, or popular consent management platforms such as [OneTrust](https://blog.littledata.io/help/posts/integrating-onetrust-with-shopify/) and [TrustArc](https://blog.littledata.io/help/posts/integrating-trustarc-with-shopify/).
65+
6266
## Cloud-mode events
6367

6468
Below is a table of events that **Shopify by Littledata** sends to Segment from Littledata's servers. These events appear as tables in your warehouse, and as regular events in your other Destinations that support cloud-mode. They include the `anonymousId` that links them to the device-mode events where the event was part of a previous user session, or associated with a `userId` that was previously linked with an `anonymousId`. See Littledata's [troubleshooting guide on attribution](https://blog.littledata.io/help/posts/troubleshooting-marketing-attribution-for-shopify/) for more details.
@@ -134,7 +138,9 @@ To support seamless customer tracking the [Mixpanel](/docs/connections/destinati
134138

135139
## Subscription events
136140

137-
Additional events available through Littledata's [ReCharge connection](https://www.littledata.io/connections/recharge), and available in cloud-mode destinations.
141+
All [recurring orders in the Shopify checkout](https://blog.littledata.io/help/posts/tracking-subscription-orders-in-the-shopify-checkout/){:target="_blank"}, from any subscription app, are tracked as Order Completed events.
142+
143+
Additional subscription lifecycle events via Littledata's [ReCharge connection](https://www.littledata.io/connections/recharge){:target="_blank"} are available in cloud-mode destinations. See the [Track (custom)](https://docs.google.com/spreadsheets/d/1aljowRhMU9_7uGXmcipbP1Y14S4cOSdXGQA2Vx7BHko/edit#gid=1155311093){:target="_blank"} tab of the event schema.
138144

139145
| Event Name | Description |
140146
| ------------------------ | ----------------------------------------------------------------------------------------------------------- |
@@ -148,7 +154,7 @@ Additional events available through Littledata's [ReCharge connection](https://w
148154

149155
## Event properties
150156

151-
The list below outlines the properties included in the events listed above.
157+
The list below outlines the properties included in most events. See the 'Track (eCommerce)' tab of the [event schema](https://docs.google.com/spreadsheets/d/1aljowRhMU9_7uGXmcipbP1Y14S4cOSdXGQA2Vx7BHko/copy){:target="_blank"} for exactly which properties are sent with which events.
152158

153159
| Property | Description | Property Type |
154160
| -------------------------------------- | -------------------------------------------------------------------------------------------------- | ------------- |
@@ -171,7 +177,7 @@ The list below outlines the properties included in the events listed above.
171177
| `sent_from` | A unique property to identify events sent by Littledata | String |
172178
| `shipping_method` | The shipping method chosen for checkout | String |
173179
| `shipping` | The shipping cost | Float |
174-
| `source_name` | The source of the order (e.g. `web`, `android`, `pos`) | String |
180+
| `source_name` | The source of the order or checkout (e.g. `web`, `android`, `pos`) | String |
175181
| `step` | The checkout [step number](https://blog.littledata.io/help/posts/shopify-checkout-funnel-updates/) | Integer |
176182
| `subscription_revenue` | The revenue associated with a [Subscription Event](#subscription-events) | Float |
177183
| `subtotal` | Order total after discounts but before taxes and shipping | Float |
@@ -186,35 +192,39 @@ The list below outlines the properties included in the events listed above.
186192

187193
Each item in the `products` array, or Product Viewed and Product Added events, will have the following properties
188194

189-
| Property | Description | Property Type |
190-
| -------------------- | ------------------------------------------------------------------ | ------------- |
191-
| `brand` | The brand of the product (Shopify `vendor`) | String |
192-
| `category` | The category of the product (defaults to `all`) | String |
193-
| `compare_at_price` | The product price before any discount | String |
194-
| `image_url` | The URL of the first product image | String |
195-
| `list_id` | The ID of the product collection (for List Views and Clicks) | String |
196-
| `list_position` | The product position in the collection (for List Views and Clicks) | Integer |
197-
| `name` | The product name | String |
198-
| `price` | The product price | Float |
199-
| `product_id` | Shopify product ID | String |
200-
| `quantity` | The quantity of products | Integer |
201-
| `shopify_product_id` | Also Shopify product ID | String |
202-
| `shopify_variant_id` | The Shopify variant ID | String |
203-
| `sku` | The product SKU | String |
204-
| `url` | The URL of the product page | String |
205-
| `variant` | The product variant name | String |
195+
| Property | Description | Property Type |
196+
| ---------------------- | ------------------------------------------------------------------ | ------------- |
197+
| `brand` | The brand of the product (Shopify `vendor`) | String |
198+
| `category` | The category of the product (defaults to `all`) | String |
199+
| `compare_at_price` | The product price before any discount | String |
200+
| `coupon` | Coupon code associated with the product | String |
201+
| `currency` | The currency displayed to the user | String |
202+
| `image_url` | The URL of the first product image | String |
203+
| `list_id` | The ID of the product collection (for List Views and Clicks) | String |
204+
| `position` | The product position in the collection (for List Views and Clicks) | Integer |
205+
| `name` | The product name | String |
206+
| `presentment_amount` | The product price as displayed to the user | String |
207+
| `presentment_currency` | The currency displayed to the user | String |
208+
| `price` | The product price at the time of the event, in the store currency | Float |
209+
| `product_id` | The Shopify product ID | String |
210+
| `quantity` | The quantity of products | Integer |
211+
| `shopify_product_id` | Also Shopify product ID | String |
212+
| `shopify_variant_id` | The Shopify variant ID | String |
213+
| `sku` | The product SKU | String |
214+
| `url` | The URL of the product page | String |
215+
| `variant` | The product variant name | String |
206216

207217
## Import all orders
208218

209-
With a [Littledata Plus plan](https://www.littledata.io/app/enterprise) you can import all Shopify orders and refunds from before you started using Segment, to sync with destinations that support timestamped events (for example, a data warehouse). This enables you to build a complete customer history in your chosen destination.
219+
With an [annual Littledata Plus plan](https://www.littledata.io/app/enterprise){:target="_blank"} you can import all Shopify orders and refunds from before you started using Segment, to sync with destinations that support timestamped events (for example, a data warehouse). This enables you to build a complete customer history in your chosen destination.
210220

211221
## Advanced Device-mode settings
212222

213-
You can edit the LittledataLayer object in your Shopify theme to manually change these advanced settings. For more information, see the [Shopify tracker GitHub repository](https://github.com/littledata/shopify-tracker#segment-configuration).
223+
You can edit the LittledataLayer object in your Shopify theme to manually change these advanced settings. For more information, see the [Shopify tracker GitHub repository](https://github.com/littledata/shopify-tracker#segment-configuration){:target="_blank"}.
214224

215225
### cookiesToTrack
216226

217-
You can send any cookie set on a landing page (for example, a session identifier or marketing campaign name) to Segment with an Identify call. A common use is to set the array as `['iterableEmailCampaignId', 'iterableTemplateId']` to pass Iterable `campaignId` and `templateId` through to the [Order Completed event](https://support.iterable.com/hc/en-us/articles/204795719-Sending-Data-from-Segment-to-Iterable-#order-completed).
227+
You can send any cookie set on a landing page (for example, a session identifier or marketing campaign name) to Segment with an Identify call. A common use is to set the array as `['iterableEmailCampaignId', 'iterableTemplateId']` to pass Iterable `campaignId` and `templateId` through to the [Order Completed event](https://support.iterable.com/hc/en-us/articles/204795719-Sending-Data-from-Segment-to-Iterable-#order-completed){:target="_blank"}.
218228

219229
### CDNForAnalyticsJS
220230

0 commit comments

Comments
 (0)