WooCommerce Integration

WooCommerce is an open-source e-commerce plugin for WordPress. It is designed for small- to large-sized online merchants using WordPress. By integrating WooCommerce with DailyStory, you can leverage the DailyStory marketing automation platform to seamlessly send emails, text messages, push notifications and more.

How to integrate WooCommerce and DailyStory

Obtain your WooCommerce API keys

Login to your WooCommerce account and see the WooCommerce documentation to generate the Consumer Key and Consumer Secret from your WooCommerce site.

Enable integration in DailyStory

  1. Navigate to your User Account Settings > Integrations.
  1. Scroll down to find WooCommerce, click on the gear icon, and select Configure.
  1. Enter the Site URL, Consumer Key, and Consumer Secret obtained in Step 1, and click the Save button.

SMS Opt-Out for New Customers

The WooCommerce integration supports an option that new customers synced from WooCommerce come into DailyStory as opted-out by default. This option requires the recipients are opted in separately.

Congratulations. WooCommerce integration is now successfully configured! Data will begin importing into DailyStory from WooCommerce.

WooCommerce Sync

Once WooCommerce integration is enabled, DailyStory:

Fields synced from WooCommerce

When WooCommerce integration is enabled, DailyStory automatically syncs data from WooCommerce.

Standard fields

DailyStory will sync the following standard fields from WooCommerce:

DailyStory also will automatically geocode (calculate the latitude and longitude) the contact record.

WooCommerce order fields at a glance

If you would like additional fields synced from WooCommerce, please submit a support ticket to our development team and we would love to accommodate you if possible.

Complete field reference

Every field the WooCommerce integration creates on a contact record, in addition to the standard fields listed above.

FieldWhat it holds
IdThe WooCommerce customer id
Date CreatedWhen the customer registered in WooCommerce
Date UpdatedWhen the customer record last changed
StatusThe most recent order status, including custom statuses added by plugins
Date Last OrderWhen the most recent order was completed
Last Order IdThe WooCommerce id of the most recent order
Last Order NumberThe order number as shown to the customer
Last Order ValueThe total of the most recent order
Order CountHow many completed orders this customer has placed
Total SpentLifetime spend across all completed orders
CurrencyThe currency of the most recent order
Purchased ProductsThe products this customer has bought
Products CategoriesThe categories those products belong to
Coupon CodesCoupon codes used on the most recent order
Cart AbandonedWhen a checkout was started and not paid for
Cart Abandoned UrlA link that returns the shopper to their unpaid order
Purchase HistoryA structured record of every item purchased, with price and date

Order status and automations

DailyStory tracks the status of every WooCommerce order. When an order moves from one status to another, the change starts the matching automation trigger. Status changes are picked up whenever they happen, including on orders placed days or weeks earlier.

WooCommerce order statusAutomation trigger
pendingWhen cart abandoned
failedWhen payment is declined
completedWhen cart ordered

To build an automation on one of these triggers, see the Abandoned Cart Campaign guide.

Abandoned checkout is not the same as an abandoned cart

In WooCommerce, the pending status means a shopper reached checkout and did not complete payment. That is an abandoned checkout. A shopper who adds items to a cart and leaves before reaching checkout never creates an order in WooCommerce at all, so there is nothing for the sync to see. To reach those shoppers, enable store activity tracking in the DailyStory WordPress plugin.

Custom order statuses

Many WooCommerce extensions add their own order statuses, such as partially-shipped or the statuses used by WooCommerce Subscriptions. DailyStory syncs these exactly as your store reports them, so you can build segments on any status your store uses. The triggers listed above fire for the core statuses shown.

Sales and revenue

When an order reaches completed, DailyStory records a sale for each item in that order against the customer's contact record. The amount recorded is the line total the customer actually paid, after any coupon discounts have been applied.

Store activity tracking

The WooCommerce integration syncs customers and orders from your store. To also capture what shoppers do on the storefront itself, install the DailyStory WordPress plugin. With the plugin in place, DailyStory additionally receives:

See WordPress Integration for details on enabling store activity tracking.

Recovering an abandoned checkout

When a checkout is abandoned, DailyStory records the date on Cart Abandoned and a link back to the unpaid order on Cart Abandoned Url. Use that link in your recovery email or text message so the shopper returns straight to payment:

Finish your checkout: {{profile.woo_abandoned_url}}

Both fields are cleared as soon as the order moves on from pending, so a recovery automation stops targeting a customer who has since paid.

Refunds and cancellations

If an order is later refunded or cancelled, the sales recorded for it are removed, and the customer's Order Count and Total Spent fall back accordingly. Both figures are recalculated from the recorded sales on every sync rather than added up as orders arrive, so they stay correct even when the same order is synced more than once.

Purchase history

Purchase History is a structured record of everything a customer has bought, rather than a flat list of product names. Each purchase carries three values: Item, Price and Purchase Date.

Because each purchase is its own record, a segment can ask questions the flat product list cannot, such as "bought a particular item between two dates for more than a given amount". Purchase history is built from the sales already recorded for your store, so a store with existing order history sees it appear without needing a re-import.

Auto-created segments

When the WooCommerce integration is enabled, the following dynamic segments are created automatically. They are provided as starting points and can be used, edited or deleted:

  1. Customers that haven't ordered in past 60 days - previous purchasers who have gone quiet.
  2. New WooCommerce customers in past 30 days - customers who placed their first order in the last month.
  3. Abandoned cart today - customers who abandoned a checkout today.
  4. Customers that have ordered more than once - repeat purchasers.
  5. Customers that have spent more than $100 - your higher-value customers.

Conversion tracking

A WooCommerce conversion funnel is created when the integration is enabled. With the DailyStory WordPress plugin installed, completed orders report their value to that funnel, so store revenue can be attributed to the campaigns and automations that produced it.