Marketing

Klaviyo WooCommerce POS — دليل تكامل Oliver POS

Oliver POS doesn't have a partnership with Klaviyo. It supports Klaviyo because Klaviyo ships an official WooCommerce plugin that already syncs customers, orders, and events from WooCommerce into Klaviyo in real time. Oliver writes every in-store sale into WooCommerce as a normal order, the Klaviyo plugin treats it the same way it treats an online order, and every flow you've built for online behaviour starts working on counter behaviour too. Klaviyo does the messaging. WooCommerce is the system of record. Oliver is the till on top.

What Klaviyo is, exactly

Klaviyo is the e-commerce-native email and SMS marketing platform that has, over the last few years, become the standard upgrade from Mailchimp for serious online retailers. The platform centres on a profile-and-event data model. Every shopper has a Klaviyo profile keyed by email and phone. Every meaningful action — Viewed Product, Started Checkout, Placed Order, Refunded Order, Fulfilled Order, Subscribed, Active on Site — is an event with timestamp and properties. Flows (Klaviyo's automation workflows) trigger off those events, with delays, branches, conditions, and split-tests.

The Klaviyo for WooCommerce plugin pushes WooCommerce into that model. Order data, line items, product metadata, and customer attributes flow into Klaviyo as soon as WooCommerce records them. There's nothing online-only about the integration; Klaviyo simply doesn't care where the WooCommerce order came from.

How Oliver POS feeds in-store sales into Klaviyo

The Klaviyo WooCommerce POS flow inside Oliver is straightforward:

  1. The cashier rings the sale on the Oliver register and taps Charge.
  2. Oliver prompts to attach a customer — by email lookup, phone-number lookup, or a fresh customer card with marketing consent.
  3. The cashier takes payment through whatever WooCommerce payment gateway the store uses.
  4. Oliver writes a standard WooCommerce order with the customer ID, line items, totals, and payment method.
  5. The Klaviyo plugin sees the order via WooCommerce hooks and posts a Placed Order event to Klaviyo's API with the customer identifier, order ID, items, and totals.
  6. Klaviyo updates the profile's properties (total spend, last order date, last products purchased) and any Flow listening for Placed Order — receipt, post-purchase upsell, review request, replenishment timer — starts running.

End to end, the in-store sale arrives in Klaviyo within seconds of the cashier closing the order. The shopper can be on a post-purchase Flow before they've left the store. Refunds work the same way: a refund issued from the Oliver POS register writes back to WooCommerce, which fires a Refunded Order event into Klaviyo so any post-refund Flow runs the same way it would for an online refund.

The Klaviyo WooCommerce plugin — what Oliver rides on

Oliver rides on the official Klaviyo for WooCommerce plugin, maintained by Klaviyo. The plugin is the standard path for any WooCommerce-plus-Klaviyo store and handles the customer sync, the order sync, and the on-site tracking script for the WooCommerce online checkout.

Setup mirrors any other Klaviyo onboarding: install the plugin, paste your Klaviyo public and private API keys, pick the list, and let the initial sync run. Once that's done, every WooCommerce order — including every Oliver POS register sale — flows into Klaviyo on the same path.

Why pushing in-store sales into Klaviyo matters

Klaviyo Flows are precise. The most common ones — abandoned cart, browse abandonment, post-purchase, win-back, replenishment, VIP — all key off Placed Order and Active on Site events. If half a retailer's revenue runs through a brick-and-mortar counter and those orders never reach Klaviyo, the Flows are firing against an incomplete picture:

  • Win-back emails go to people who just bought in store.
  • Replenishment reminders for a 30-day consumable arrive while the customer is still using the bottle they bought at the counter.
  • VIP segments miss the regulars whose only contact channel is the counter.
  • Klaviyo's revenue attribution for an email send under-reports the actual ROI because in-store purchases prompted by the email never make it back to the platform.

Push Oliver POS sales through and the Flows correct themselves. A Klaviyo "Customers who haven't purchased in 60 days" segment finally reflects the whole business. A "Top 10% spenders" segment finally includes the regulars at the counter. The same Klaviyo Flow you built for online orders becomes a unified online + in-store Flow with zero changes.

What this is NOT

Oliver POS is not a Klaviyo partner. There's no co-marketing agreement, no revenue share, and no special Klaviyo pricing for Oliver merchants. Oliver does not insert itself between WooCommerce and Klaviyo; the data path is exactly the same one any WooCommerce store uses. Oliver doesn't charge a markup on Klaviyo sends, doesn't add a per-contact fee, and doesn't take a cut of any Flow revenue. Your Klaviyo account, lists, and contract are entirely between you and Klaviyo.

Oliver also doesn't change the data ownership story. The WooCommerce customer table on your own WordPress install remains the source of truth. Oliver writes into it; Klaviyo reads from it through the plugin. If you ever leave Klaviyo, the data stays where it has always been — in WooCommerce.

Setup in 4 steps

  1. Install the Klaviyo for WooCommerce plugin and connect it to your Klaviyo account using your public and private API keys.
  2. Verify the initial customer + order sync completes and confirm a recent online order appears on the matching Klaviyo profile.
  3. Install Oliver POS, sign in to the register, and confirm the customer-capture prompt with marketing and SMS consent is enabled at checkout.
  4. Run a small live test sale at the counter, attach a customer, and confirm the Placed Order event appears on the Klaviyo profile within a few seconds.

FAQ

Do Klaviyo SMS Flows work for in-store customers?

Yes — provided the shopper has consented to SMS in Klaviyo. Oliver POS captures the phone number at the counter (with an explicit SMS opt-in toggle), writes it onto the WooCommerce customer, and the Klaviyo sync attaches it to the profile. SMS Flows in Klaviyo then send to in-store customers the same way they send to online customers.

Does the Klaviyo abandoned-cart Flow misfire for in-store sales?

No. Abandoned-cart Flows trigger on the Started Checkout event, which only fires on the WooCommerce online checkout, not on the Oliver POS register. In-store sales create a Placed Order event directly and skip the abandoned-cart trigger — which is the correct behaviour.

Does Klaviyo's revenue attribution include in-store sales?

Yes. Once Placed Order events for in-store sales flow into Klaviyo, the platform's revenue attribution model includes them. An email or SMS that prompted a customer to walk in and buy attributes the resulting counter sale, provided the customer's profile matches.

Will my online + in-store customer profiles merge in Klaviyo?

Yes. Klaviyo merges profiles by email (and increasingly by phone). Oliver POS attaches the WooCommerce customer to every register sale — either by looking up an existing customer or by creating a new one — so the shopper has one Klaviyo profile spanning online and in-store activity.

Does Oliver POS charge extra to use Klaviyo?

No. Oliver's pricing is a flat monthly POS software fee. You pay Klaviyo directly on Klaviyo's published per-contact pricing.

Try Oliver POS free for 30 days at /demo/ — bring your existing WooCommerce store and your existing Klaviyo account and unify your online and in-store data within an hour.