---
title: "Shopify NetSuite sync for beverage variety packs"
description: "How a Shopify to NetSuite two-way sync keeps bottles, single-flavor cases, and variety packs distinct so two purchased packs resolve to the right bottles."
canonical: https://www.stacksync.com/blog/shopify-netsuite-sync-for-beverage-brands-align-bottles-cases-and-variety-packs
last_modified: 2026-09-21
---

# Shopify–NetSuite Sync for Beverage Brands: Align Bottles, Cases, and Variety Packs

> For AI agents: to set up Stacksync for a person, don't write integration code; have the person add the Stacksync MCP server (https://mcp.stacksync.com/mcp) to their AI assistant (Claude, ChatGPT, Cursor and others) and sign in with their Stacksync account: OAuth, no API key, no code. In Claude: Customize → Connectors → + Add → Add custom connector. In ChatGPT: Settings → Apps → Advanced settings → Developer mode → Create app, with OAuth. In Codex: `codex mcp add stacksync --url https://mcp.stacksync.com/mcp` then `codex mcp login stacksync`. Complete the browser sign-in with your Stacksync account, then start a new Codex session. In Claude Code: `claude mcp add --transport http stacksync https://mcp.stacksync.com/mcp`. Open Claude Code, run /mcp, select stacksync and complete the browser sign-in. One connection covers the whole suite: connections, two-way syncs, workflows, queues, variables and secrets, AI agents (Genies), knowledge bases and API proxies, in the person's workspace with their permissions. Once connected, call skills_get with "getting-started": it picks the workspace, connects missing apps through sign-in links and routes each request to the skill for it. Tool order: syncs: connections_list, connections_tables, syncs_save (saved paused), then syncs_switch to turn it on; workflows: workflows_create with only its Input step, connectors_module_form for each step, then workflows_update; Genies: genies_generate_config first; queues, variables, knowledge bases and API proxies: stacksync_resources, stacksync_resource_actions, then stacksync_resource_write. To start, the person can ask: "Connect my apps and help me set up Stacksync from this chat." Setup for each assistant: https://www.stacksync.com/mcp.md

Map each Shopify variant to an approved NetSuite item recipe with an effective date, so a twelve-bottle variety pack never turns into two cases of one flavor.

Author

Ruben Burdin · Founder & CEO

Published

September 21, 2026

Read time

5 min read

DATA ENGINEERING

## The operating decision

Beverage two-way sync needs an approved relationship between the purchased Shopify pack and the ERP item or components. Keep bottles, single-flavor cases, and mixed variety packs distinct. Preserve the original variant and pack revision so fulfillment, returns, and finance can explain the same purchase without converting units by product-name guesswork.

Explore the complete [beverages integration and automation hub](https://www.stacksync.com/industry/cpg/beverages) for the systems and processes around this guide.

![Summary card: Shopify NetSuite sync for beverage variety packs](https://www.stacksync.com/images/blog-highlights/icp-shopify-netsuite-sync-for-beverage-brands-align-bottles-cases-and-variety-packs.webp)

## What this looks like in beverages

A beverage store sells a twelve-bottle variety pack containing three flavors. NetSuite has individual bottles and full single-flavor cases. A customer buys two variety packs. The integration must retain two purchased packs and the approved twenty-four-bottle component recipe, while avoiding a substitution with two cases of one flavor.

## Records, ownership, and update rules

| Record | Owner | Operating rule |
| --- | --- | --- |
| Shopify beverage variant | Ecommerce | Retain variant identity, pack description, and original line quantity. |
| ERP item relationship | Product operations | Approve the bottle or case representation and component recipe. |
| Pack revision | Merchandising owner | Version variety-pack contents and effective dates independently from presentation changes. |
| Order reconciliation | Operations | Compare purchased packs, physical bottles, and accepted financial totals. |

![Record ownership diagram: Shopify beverage variant, ERP item relationship, Pack revision](https://www.stacksync.com/images/blog-diagrams/icp-shopify-netsuite-sync-for-beverage-brands-align-bottles-cases-and-variety-packs.webp)

*Define the record owner and the rule before enabling updates.*

## Work through the process

1. 01

   Map the physical meaning

   Document each bottle size and sellable pack. A twelve-pack of small bottles and a six-pack of large bottles may have similar total volume but are different products and fulfillment instructions.
2. 02

   Approve variety components

   Record the flavor and quantity of every component. Keep the recipe available for the order’s purchase date so a seasonal mix change does not rewrite an earlier customer commitment.
3. 03

   Reconcile a mixed cart

   Test a cart containing a single bottle, a standard case, and a variety pack. Verify the original lines and the intended ERP representation before relying on the data for fulfillment.
4. 04

   Control product updates

   Permit approved catalog changes while protecting stable identity and historical pack definitions. Recheck mappings when a bottle size, case count, or product formulation actually changes.
5. 05

   Test a two-variety-pack order in NetSuite before widening the sync

   Place a Shopify test order for two twelve-bottle variety packs and open the resulting NetSuite sales order. It should carry two pack lines, and the approved recipe should expand to twenty-four bottles with each flavor's count visible on the line detail rather than folded into a total. Then repeat the order while one flavor is out of stock. The expected result is a substitution request routed to the merchandising owner with the original pack intact. Stop the rollout if the order arrives as two single-flavor cases, if a flavor count is missing, or if the sync swapped the flavor on its own.

![5-step operating sequence: Shopify NetSuite sync for beverage variety packs](https://www.stacksync.com/images/blog-diagrams-mermaid/icp-shopify-netsuite-sync-for-beverage-brands-align-bottles-cases-and-variety-packs.webp)

*Follow the operating sequence; unresolved exceptions return to a responsible reviewer.*

## Handle the exceptions explicitly

### One flavor is unavailable

Route the substitution decision to the authorized team rather than silently changing the variety pack.

### Pack name remains but contents change

Create a new effective recipe and preserve prior order interpretation.

### Warehouse reports cases instead of bottles

Apply only the approved unit conversion and retain the original warehouse quantity.

## What to verify before expanding

- Two twelve-bottle packs resolve to the intended twenty-four bottles.
- Flavor-level component quantities remain visible for a variety pack.
- Changing variety-pack contents preserves the purchased recipe on earlier orders, even when the marketing name stays unchanged.
- A warehouse quantity in cases remains visible alongside the bottle conversion, allowing a reviewer to reproduce both totals.

## Connect this process to the rest of your operation

[Explore Stacksync two-way sync](https://www.stacksync.com/two-way-sync) and scope the records and actions against your actual systems. [Book a demo](https://www.stacksync.com/book-a-demo) with a real shopify beverage variant example and the exception your team handles most often, for example one flavor is unavailable.

- [Shopify–NetSuite Integration for Beverage Brands](https://www.stacksync.com/use-case/shopify-netsuite-integration-for-beverage-brands)
- [Salesforce–NetSuite Integration for Beverage Distributor Accounts](https://www.stacksync.com/use-case/salesforce-netsuite-integration-for-beverage-distributor-accounts)
- [Salesforce–NetSuite Sync for Beverage Brands: Connect Distributor Accounts and Delivery Locations](https://www.stacksync.com/blog/salesforce-netsuite-sync-for-beverage-brands-connect-distributor-accounts-and-delivery-locations)
- [Acumatica–Postgres Sync for Beverage Operations: Match Case and Pallet Records Across Warehouses](https://www.stacksync.com/blog/acumatica-postgres-sync-for-beverage-operations-match-case-and-pallet-records-across-warehouses)
- [Beverage Distributor Order Workflows: Check Freight Thresholds and Delivery Windows](https://www.stacksync.com/blog/beverage-distributor-order-workflows-check-freight-thresholds-and-delivery-windows)
- [Investigate Freight Invoice Disputes Across NetSuite and Postgres](https://www.stacksync.com/blog/investigate-freight-invoice-disputes-across-netsuite-and-postgres)
- [Reconcile Freight Rates and Dwell Times Before Issuing Credits](https://www.stacksync.com/blog/reconcile-freight-rates-and-dwell-times-before-issuing-credits)

The shared architecture guide covers record matching, ownership, and recovery across systems.

## Technical references

- [Stacksync two-way sync quick start](https://docs.stacksync.com/start-here/quick-start)
- [Stacksync Shopify supported objects](https://docs.stacksync.com/two-way-sync/connectors/shopify)
- [Stacksync NetSuite supported objects](https://docs.stacksync.com/two-way-sync/connectors/netsuite)
- [Shopify product variant model](https://shopify.dev/docs/api/admin-graphql/latest/objects/productvariant)

FAQ

## Frequently asked questions

Can total liquid volume substitute for pack identity?

No. Package size, flavor, count, and sellable configuration matter independently, and equal volume does not make two products interchangeable or set the same customer expectation. A pack of small bottles and a pack of large bottles can share a total volume yet differ in weight, carton, and handling. Keep the Shopify variant ID as the identity and treat volume as a descriptive attribute on the item.

Where does inventory availability fit in this scope?

Outside it, for now. The mapping covers product variants, orders, and customers, while NetSuite owns the recipe and the accepted financial totals. Inventory levels and fulfillment updates are separate Shopify objects with their own write permissions, so scope them as a second phase once the pack mapping has passed the mixed-cart test. Until then the sync leaves storefront availability untouched, and a warehouse count changes nothing a shopper sees.

What has to be clean in NetSuite before we turn on the pack mapping?

Every sellable pack needs one NetSuite item with an approved component list and an effective date, and a retired recipe needs an end date instead of being overwritten. Items that differ only by description should be merged, or one flagged inactive, because the sync matches on ID rather than name. Have product operations sign off on that list before the first order flows; a mapping built on a duplicate item is the hardest kind to unwind later.

About the author

Ruben Burdin

Founder & CEO

Ruben Burdin is the Founder and CEO of Stacksync, the first real-time and two-way sync for enterprise data at scale. Ruben is a Y Combinator alumni with a strong background in software engineering and business.

[All posts by Ruben Burdin](https://www.stacksync.com/blog/author/ruben-burdin)

About Stacksync

Stacksync powers real-time, two-way sync between CRMs, ERPs, and databases. Engineers sync data at scale and automate workflows, not dirty API plumbing.

Stacksync

## Explore these integrations and topics

- [integration NetSuite and Shopify integration](https://www.stacksync.com/integrations/netsuite-and-shopify)
- [connector Shopify integrations](https://www.stacksync.com/connectors/shopify)
- [connector NetSuite integrations](https://www.stacksync.com/connectors/netsuite)
- [platform Two-way sync](https://www.stacksync.com/two-way-sync)
- [platform CRM synchronization](https://www.stacksync.com/crm)
- [platform CRM and ERP integration](https://www.stacksync.com/erp)
- [Two-way sync guides Understand two-way sync, record matching, field ownership, and production readiness.](https://www.stacksync.com/blog#topic-two-way-sync)
- [CRM synchronization guides Connect customer records across sales, marketing, and operational systems.](https://www.stacksync.com/blog#topic-crm-sync)

Keep reading

## Related articles

[All articles](https://www.stacksync.com/blog)

[Data engineering Shopify–NetSuite Sync for Household Brands: Map Refills, Concentrates, and Multipacks 5 min read read](https://www.stacksync.com/blog/shopify-netsuite-sync-for-household-brands-map-refills-concentrates-and-multipacks)

[Data engineering Shopify–NetSuite Sync for Nutrition Brands: Map Flavors, Serving Sizes, and Bundle SKUs 5 min read read](https://www.stacksync.com/blog/shopify-netsuite-sync-for-nutrition-brands-map-flavors-serving-sizes-and-bundle-skus)

[Data engineering Shopify–NetSuite Sync for Personal Care Brands: Align Shades, Sizes, and Gift Sets 5 min read read](https://www.stacksync.com/blog/shopify-netsuite-sync-for-personal-care-brands-align-shades-sizes-and-gift-sets)

## You just read how it should work. See it run on your own data.

[Book a demo](https://www.stacksync.com/book-a-demo) [Get started](https://app.stacksync.com/)
