How to connect ParcelPanel for WooCommerce & Klaviyo via API?

This integration allows users to create personalized campaigns & flows based on tracking events from ParcelPanel for WooCommerce.

Connect ParcelPanel& Klaviyo, there are two optional integration methods:

  • Integrate from ParcelPanel admin (Recommended)
  • Integrate from Klaviyo admin


Here is the instruction

Integrate from ParcelPanel admin (Recommended)

Step 1

Go to Parcel Panel adminIntegration page → Email marketing tab → click Connect button


Step 2

Log in to your Klaviyo account and complete the authorization


Integrate from Klaviyo admin

Step 1

Go to ParcelPanel adminIntegration tab → API Key section → Copy the ParcelPanel API Key

Step 2

Go to Klaviyo adminIntegrations → Click Add integration button → Find and click Parcel Panel

Step 3

Click Add app button → paste the ParcelPanel API Key and ConnectAllow


After connecting ParcelPanel & Klaviyo successfully:

In your ParcelPanel admin

In your Klaviyo admin


How do I know if the connection is successful?

After completing the above steps, back to your Klaviyo admin, there will be a new metric called WooCommerce ParcelPanel Event, you can check the details from this example we sent you.


How to create personalized campaigns & flows?

Step 1
Click Create Flow button → Build your own Your Metric API→ Click WooCommerce ParcelPanel Event → Add Trigger filter


Step 2
Configure the Trigger by your needs, WooCommerce ParcelPanel Events are coming with shipment status updates for each shipment, which are powerful segmentation triggers for Klaviyo Flow

Note:

1. It's case-sensitive.

2. The current supported status: Info received, In transit, Out for delivery, Delivered, Exception, Failed attempt, Expired.

StatusDescription
Info receivedThe carrier received a shipping request and is about to pick up the shipment
In transitThe shipment is on the way
Out for deliveryThe shipment has arrived at the local point and is about to be delivered
DeliveredThe shipment has been delivered
ExceptionThe shipment might have been sent back to the sender, damaged, or lost
Failed attemptThe carrier attempted to deliver the shipment but failed
ExpiredNo tracking details updated for 30 days for express service or 60 days for postal service

For example: I want to create a workflow that automatically sends an email when shipment was Delivered, the trigger conditions can be set as follows:

Step 5

Configure the actions by your needs

Available Event Properties

Event Properties nameTemplate tagExample
shipment_status{{ event.shipment_status }}Delivered
tracking_link{{ event.tracking_link }}https://yourstorename.com/parcel-panel?nums=1234
tracking_number{{ event.tracking_number }}92055901755477000271990251
carrier_contact
{{ event.carrier_contact }}1-800-275-8777
carrier_name{{ event.carrier_name }}USPS
expected_delivery_date{{ event.expected_delivery_date }}Nov 09, 2020 - Nov 19, 2020
residence_time{{ event.residence_time }}3
transit_time{{ event.transit_time }}5
fulfillment_created_at{{ event.fulfillment_created_at }}November 11, 2020 at 04:58 AM
last_check_point{{ event.last_check_point }}Arrived at USPS Regional Facility, SEMINOLE-ORLANDO FL DISTRIBUTION CENTER
last_checkpoint_time{{ event.last_checkpoint_time }}November 15, 2020 at 07:50 PM
order_created_at{{ event.order_created_at }}October 30, 2020 at 07:36 AM
order_number{{ event.order_number }}#1234
product_name{{ event.product_name }}Test product just for preview
first_name{{ event.first_name }}Tom
last_name{{ event.last_name }}Alix
customer_email{{ event.customer_email }}[email protected]
customer_phone{{ event.customer_phone }}+1 234 567 8900
shipping_address1{{ event.shipping_address1 }}151 O'Connor Street
shipping_address2{{ event.shipping_address2 }}Null
shipping_city{{ event.shipping_city }}Ottawa
shipping_country{{ event.shipping_country }}Canada
shipping_zip{{ event.shipping_zip }}K2P 2L8


Addition
In addition to the basic information about the order, the LineItems field contains an array of information about each line item in the order. You can reference this data for building templates, branching logic based on package contents, and so on. This is stored in a 0-indexed array, so you can easily access an individual item or loop over it to get the entire contents.

Property nameTemplate tagExample
product_name{{ event.lineitems.0.product_name }}Test product just for preview
quantity{{ event.lineitems.0.quantity }}1
variant_image{{ event.lineitems.0.variant_image }}https://cdn.parcelpanel.com/woocommerce/assets/
tracking/product/product_1.png
price{{ event.lineitems.0.price }}24.96
sku{{ event.lineitems.0.sku }}12345678-black-l
link{{ event.lineitems.0.link }}Null

Need help? Feel free to contact us via online chat or email, our world-class 24/7 support team is always here 🌻.