Route’s Klaviyo integration allows you to create your own custom shipping notifications within Klaviyo. Once you activate the integration, Route will automatically send your customers' package status data to Klaviyo, so that Klaviyo can send your shipping notifications as soon as your customers’ package status changes - from “in-transit” to “out-for-delivery” to “delivered” etc.
Follow the steps below to set up Klaviyo + Route integration within your merchant portal.
Log into your Klaviyo account:
Collect the API key (Account > Settings > API Keys):
Log into your Route dashboard:
Select “Admin” > ”Integrations” > “View Details” in the Klaviyo section > then in the “Klaviyo API Key” field, paste and save the API key. You’ll see a confirmation appear on the screen once the integration is complete:
Now that you’ve successfully integrated with Klaviyo, you’ll see new metrics in Klaviyo that you can use to create specialized flows and custom shipping notification emails. To view these new metrics, navigate to Klaviayo and go to “Analytics” > click on “Metrics”.
You can use Route’s metrics to trigger shipping notification emails at the right moment:
- InfoRecieved - This metric can trigger an email as soon as a tracking number is generated for a package.
- CarrierPickupDelayed - This metric can trigger an email when the carrier has not scanned the package for pickup after a specified amount of time.
- IMPORTANT: make sure to set the delay time here to trigger this metric.
- InTransit - This metric can trigger an email when the carrier updates the package’s status to “in-transit” the first time.
- OutForDelivery - This metric can trigger an email when the carrier updates the package’s status to “out for delivery”.
- Delivered - This metric can trigger an email when the carrier updates the package’s status to “delivered.”
You can view the properties of each metric by clicking “Metric” > “Activity feed” (at the top) > “Details”. These properties are what you’ll use to create flows and customize shipping notification email templates.
To create your shipping notification emails in Klaviyo, start by creating a new email flow. (Note: A flow is a sequence of automated actions that trigger emails at specific times). To get started, click “Flows” in the left menu, then > “Create Flow” > “Create From Scratch”
Name the flow after the shipping notifications you want to trigger, here (image above) we are using “Delivered” as an example.
For each Flow you create, select “Metric” as the trigger.
Click the drop down for “What action will trigger this flow?”, and find the metric you want to use for this flow - in this case, we’re selecting ‘Delivered’ as our action. This will ensure that this email triggers as soon as a package is delivered. Then click “Done”.
After you click “Done,” drag an “Email” from the “Action” menu into your flow, and drop it under your trigger. Continue to customize your flow with additional actions, timing or logic (for more information on actions, timing or logic, visit Klaviyo.com).
Click on the “Email” tile that you just created, and then click “Configure Content”
Next, choose how you would like to customize your email content. For this example, we’ll select the “Drag and Drop” option.
Next, select a template for your email layout. For this example, we’ll select “Basic” > “1 - 2 Columns”.
Click on a text block and then select “Preview” to edit the content.
In the “Preview Email” popup, it will show a list of properties that you can use to customize the content. We recommend adding variables to your content to customize your email with fields such as customer name, and date the package shipped. To learn more about using Variables in Klaviyo emails, check out this Klaviyo article.
Be sure to customize your email to match your brand.
Before you send your shipping notifications, add a call-to-action that invites customers to track their packages on the web or in the Route app. That way they’ll be able to see their orders on a branded map.
To add the package tracking call-to-action to your Klaviyo email:
1. First, copy the code snippet from this link.
2. Add a text block to your email.
3. Click “Source” and paste the cope snippet into your email.
4. Finish by clicking Save!
When you’re ready to send your email, select your flow and click ”Review and Turn On”:
Click “Turn On”
Now the Flow will trigger and send an email every time the package status updates.
- Note: Make sure to turn off any shipping notification emails you may be sending through Route’s merchant portal so that you avoid sending duplicate notifications.
- “Carrier” - This will return the carrier that is providing the shipping update. Ex: “UPS”
- “Event_name” - This is the name of the event we are sending over. Ex: “In Transit”
- “Event_subname” - This is the subname of the event we are sending over. We’ll use this for future events but you can ignore for now.
- “Orders” - This property will contain additional properties around your order. It will return a list of orders in a rare occasion that you fulfillment multiple orders in one shipment; like how Amazon does sometimes. Make sure to iterate through this list to get the details.
- “Created_on” - The date and timestamp that the order was created on. Ex: '2022-08-17T02:29:41.356856635Z’
- “Order_number” - Your internal order number. Ex: 'd6666688-8cf5-4658-9604-6e02163bd23c'
- “Route_order_number” - Route’s order number. Ex: 'RTC2013'
- “Shipping_details” - This property shill contain additional properties around the shipping details.
- 'city' - The city that the shipment is going to. Ex: 'Reno'
- 'country_code' - The country that the shipment is going to. Ex: 'US'
- 'first_name' - The first name of the customer that the shipment is going to. Ex: 'Annette'
- 'last_name' - The last name of the cumer that the shipment is going to. Ex: 'Dicki'
- 'province' - The state or provice that the shipment is going to. Ex: 'NV'
- 'street_address1' - The first part of the address the that shipment is going to. Ex: '123 Route Blvd',
- 'street_address2' - The second part of the address that the shipment is going to. Ex: 'Apt. 519',
- 'zip' - The zip code that the shipment is going to. Ex: '89523’
- “Shipment_items” - This will contain a list of items in the shipments. Make sure to iterate through this list to get the details.
- 'name' - This is the name of the product that was purchased. Ex: 'Toaster Oven'
- 'quantity' - This is the number of items purchase for this specific product. Ex: ‘1’
- 'image_url' - This a URL to the image of the product that was purchased. Ex: 'https://route-cdn.s3.amazonaws.com/route-products/oitm_3pD7XD8jwH7yZkb.png'
- “Store_domain” - This is the store domain that is saved in Route’s dashboard. Ex: ‘hero.myshopify.com’
- “Tracking_number” - This is the tracking number provided by the carrier. Ex: ‘6d064d06-8392-4f57-ae39-3e1d74f3cfa6’