Inventory Management

Manage your per-location wine catalog including stock levels, product details, categories, and availability for club and ecommerce orders.

business
Last reviewed October 23, 2026

Inventory Management

Your inventory in MemberZone is your wine catalog - every product you sell, along with its stock levels and details. Inventory is managed per location, so each of your locations has its own independent catalog. If the same wine exists at two different locations, each one is tracked separately with its own quantities, pricing, and availability.


Getting to Inventory

Navigate to Dashboard → Inventory in the sidebar (under the Location section). Since inventory is managed at the location level, you'll see products for your currently selected location. Switch locations from the UserMenu in the top-right corner to manage a different location's inventory.


Product List

When you open the Inventory page, you'll see a list of all products at the selected location. The product list displays the following columns:

  • Name - The name of the wine or product
  • SKU / Barcode - The unique identifier or barcode for the item
  • Category - The product category (wine, spirits, merchandise, etc.)
  • Stock on Hand - The total number of units you have at that location
  • Allocated - Units reserved for upcoming releases or pending orders
  • Available - Stock on hand minus allocated - the quantity available for new orders or sales

If you have a single location, all your products live there. If you have multiple locations (for example, two tasting rooms), each has its own inventory. Adding a wine to one location does not add it to the other. Stock at one location has no effect on stock at the other.


Item Details

Each inventory item has the following information:

  • Name - The name of the wine or product
  • SKU - A unique identifier you assign for internal tracking
  • Price - The price per unit
  • Description - A detailed description of the product, including tasting notes, vintage, varietal, or anything else you want customers and your team to see. This is the line shown under the item name in the inventory table. It is only ever your own product copy - MemberZone never substitutes a POS menu or category name - so an item with no description simply shows nothing there.
  • Image - A photo of the product that appears in your store and during fulfillment

Shipping Fields

Items that can be shipped have additional fields for shipping configuration:

  • Enabled for Shipping - Whether this item can be included in shipped orders
  • Weight (lb) - The weight of the item in pounds, used for shipping cost and label calculations

MemberZone computes a Shipping Ready status for each item. An item is considered shipping-ready when it has shipping enabled and a weight configured. Items that are not shipping-ready cannot be included in shipped fulfillment orders.

Extended Catalog Fields

Items can include additional catalog metadata for richer product descriptions and filtering:

  • Volume (mL) - Bottle volume in milliliters (e.g., 750)
  • Container Type - The type of container (e.g., bottle, can, box)
  • Is Alcohol - Whether the item contains alcohol
  • Alcohol Percentage - The ABV percentage
  • Production Year - The vintage or production year
  • Variety - The grape variety or blend (e.g., Cabernet Sauvignon, Chardonnay)
  • Product Type - The product category (e.g., wine, spirits, merchandise)
  • Origin - Where the product was produced (e.g., Napa Valley, Willamette Valley)

Item Sources

Every item has a source that tells you where it came from:

Manual

Items you create yourself through the MemberZone Inventory page. You enter all the details - name, price, description, stock - and you have full control over every field.

Toast

Items synced automatically from your Toast POS system. When you connect Toast, MemberZone pulls your menu items into your inventory. These items are linked to your POS, and certain fields (like price and stock) are kept in sync with Toast. See the POS Sync section below for details on how synced items behave.

Square

Items synced from your Square POS system. When you connect Square, your product catalog is imported into MemberZone inventory. Similar to Toast, synced fields are managed by Square and stock levels update from Square transactions. Stock counts are per Square location, so they only come through once the MemberZone location is mapped to a Square location.

Lightspeed

Items synced from your Lightspeed Retail (X-Series) POS. When you connect Lightspeed, your product catalog is imported into MemberZone inventory: names, prices, SKUs and images stay in step with Lightspeed. Stock counts are per Lightspeed outlet, so they come through once the MemberZone location is mapped to its outlet (see Lightspeed). A product Lightspeed doesn't count stays unlimited in MemberZone.

Clover

Items imported from your Clover POS. Import them under Inventory > Items: choose Add item, then Clover. Names, categories, prices and stock counts come from Clover and stay matched from then on. Hidden Clover items are left out, and variable-priced items are skipped on the first import. See Clover.


Stock Tracking

MemberZone tracks three quantities for each item:

  • Stock on Hand - The total number of units you have at that location
  • Allocated (Reserved) - Units that are held for pending orders or upcoming releases that haven't been fulfilled yet. When a member's order is confirmed, an ecommerce purchase goes through, or inventory is reserved for a release, the system automatically allocates the required quantity. This prevents you from accidentally selling stock that's already spoken for.
  • Available - The amount actually available for new orders. This is calculated as Stock on Hand minus Allocated. This is the number that matters when you're deciding whether you have enough stock for upcoming fulfillment or new sales.

Not Tracked (Unlimited Stock)

You can set an item to "not tracked" if you don't want to manage quantities for it. When stock tracking is off, the item is treated as having unlimited availability (shown as ∞). No quantities are deducted, and the item is always considered in stock. This is useful for items where you always have supply on hand or where exact counts aren't necessary.


Is Stocked

Each item has a stocked toggle. When an item is marked as stocked, it's available for selection in templates and orders. When you turn stocked off, the item is temporarily disabled - it won't appear as an option for new fulfillments, but it isn't deleted from your inventory. This is useful when a wine is temporarily unavailable and you want to keep the record for when it comes back, without having to recreate the item later.


Available for Store

Each item has an Available for store switch that controls whether it appears in your public online store for one-off purchases at that location. This is turned off by default.

  • On - The item is visible to customers browsing your online store and can be purchased as a one-off order
  • Off - The item is not shown in your store. It can still be used for club fulfillment and templates, but customers cannot buy it outside of a membership.

This separation lets you keep certain items exclusive to members while offering others for general sale. The switch on an item changes only this location. To manage many products at once, or to change the same product at every location by SKU, use Storefront > Products; categories and tags (including hiding a category from the store) are edited on Inventory > Tags. See Storefront Products and Store Settings.


POS Sync

When you connect a POS system (Toast, Square, Lightspeed or Clover) to MemberZone, your products are synced into your inventory.

How It Works

  • Items from your POS are imported into the MemberZone inventory for the corresponding location
  • New products added in the POS appear automatically in MemberZone
  • Stock levels update from POS transactions on Toast, Square, Lightspeed and Clover - when a count changes in the register, the change is reflected in MemberZone. Shift4 counts don't sync into MemberZone: Shift4 menu items import with untracked stock rather than a count of 0, and you can switch an item to tracked and count it in MemberZone (see Stock Counts by Register)
  • Each synced item shows when it was last synced, the current sync status, and any sync errors that occurred
  • You can trigger a manual sync from the Integrations page if you need to pull the latest data immediately rather than waiting for the next automatic sync

Stock Counts by Register

Register Do its stock counts sync into MemberZone? Inventory shortage email
Toast Yes Yes
Square Yes, for a MemberZone location mapped to a Square location Yes
Shift4 No. Shift4 only reports a low-stock flag, never a count. Shift4 items import with untracked stock (no count), and nothing is written back No
Lightspeed Yes, from the outlet the MemberZone location is mapped to Yes
Clover Yes Yes

On a register whose counts don't sync, the quantity you see in MemberZone is MemberZone's own, so there is no register count to warn you about.

Member pickups (and, on Clover, refunds and reships) also change the register's count. Items with untracked stock are never written back to any register. MemberZone reads the register's count before writing, writes nothing when the register already has that count, and never writes to an item whose count it hasn't read from the register, so a placeholder can't reach your register. Lightspeed receives the movement as a stock adjustment with the reason "MemberZone order" or "MemberZone restock", and a pickup never takes a Lightspeed count below zero. If a register reports no count for a tracked item, the count in MemberZone is left as it was, and the sync result says how many items were left unchanged and why.

When Square Has No Count for an Item

A Square resync never sets a count to zero just because Square didn't send one. An item keeps the count it already had when:

  • the MemberZone location isn't mapped to a Square location (names, prices and SKUs still update, since those are shared across your Square account), or
  • Square isn't tracking stock for that item, so it returns no count.

The sync result says how many were left alone and why, for example "stock left unchanged for 3 item(s) because no Square location is mapped" or "because Square returned no count". A brand-new item imported without a count starts at 0. Square can report part units; MemberZone rounds them down to whole units.

When Items Are Removed from POS

If you remove an item from your POS menu, it doesn't disappear from MemberZone. Instead, the item is flagged as removed from source, along with a timestamp of when the removal was detected. The item stays in your MemberZone inventory so that any references to it (in templates, past orders, etc.) remain intact, but it's clearly marked so you know it's no longer active in your POS. Once flagged as removed, the item becomes fully editable in MemberZone.


Inventory Transactions

The system tracks all inventory movements through transactions to maintain accurate stock counts. All inventory writes go through InventoryService.runScopedTransaction to ensure consistency.

Reserve Phase

When a release is created or an order is confirmed, inventory is reserved for member allocations. The allocated quantity increases and the available quantity decreases by the same amount. This ensures that stock committed to upcoming shipments or confirmed orders cannot be double-sold.

Fulfill Phase

When orders are shipped or picked up, reserved inventory is consumed. The allocated quantity and the stock on hand both decrease - the items have physically left your location.

Adjustments

Manual stock adjustments can be made when you need to correct inventory counts. This covers situations like receiving new stock, accounting for breakage, or correcting a counting error.

Reconciliation

A reconciliation process ensures inventory counts stay accurate over time. If discrepancies are detected between expected and actual quantities, reconciliation resolves them so your numbers match reality.


Allocation for Releases

When a release uses a template, inventory is allocated to member orders ahead of fulfillment.

  • Automatic allocation - When the release is created, the system reserves the required inventory for each member's allocation based on the template
  • Over-allocation protection - If a product runs out during allocation, the system prevents over-allocation. You'll be alerted if there isn't enough stock to cover all member orders.
  • Allocation visibility - The "Allocated" column on your product list shows how much of each item is reserved for upcoming releases, so you always know how much is spoken for

Inventory Shortage Email

When an item synced from Toast, Square, Lightspeed or Clover has more units committed to member orders than the register's on-hand count, new orders for it may be blocked. MemberZone emails your business's contact email about it once a day, around 6:30 AM your time, for as long as the shortage lasts. Toast shortages also send an email as soon as a Toast count drops below what's reserved.

The email, Action Required: Inventory shortage, lists each short item with its Location, On Hand, Reserved and Short By, and names the register the counts came from, for example "synced from Square", or "synced from Square and Toast" when the items come from more than one register, with an extra Register column saying which register each item's count came from. Fix the count in that register; once it syncs back, the item drops off the next email. View Inventory opens your inventory.

The email covers only items whose stock is tracked, at active locations. It's Inventory shortage under Marketing > Transactional, in Internal notifications, where it can be turned off. Shift4 items are never included, because their counts don't sync into MemberZone (see Stock Counts by Register).


Editing Rules

How much you can edit an item depends on its source:

Manual Items

Fully editable. You can change the name, SKU, price, description, image, stock quantity, and every other field at any time.

POS-Synced Items (Toast, Square, Lightspeed or Clover)

Editing is limited. Fields that come from your POS - such as price and stock - are managed through the POS and can't be changed directly in MemberZone. Other fields that don't come from the POS (like "Available for Store" and shipping configuration) can still be edited in MemberZone.

One exception: the SKU. If your POS doesn't send a SKU for an item, MemberZone lets you add your own on the item's Details tab - the POS isn't filling that field, so there is nothing to conflict with. A SKU you type in is kept through future syncs. If your POS later starts sending a real SKU for that item, the POS value takes over again.

Removed POS Items

If a POS-synced item has been flagged as removed from your POS menu, it becomes fully editable in MemberZone. Since the POS is no longer the source of truth for that item, you can update all fields as if it were a manual item.


Deletion Rules

You can delete inventory items, but only when they are not actively in use:

  • An item cannot be deleted if it is assigned to a tier (enrollment or default fulfillment), or referenced on an open order/release
  • An item cannot be deleted if it is part of any pending order that hasn't been fulfilled yet

If you try to delete an item that's still in use, MemberZone will let you know what's referencing it. You'll need to remove the item from those templates or fulfill/cancel the pending orders before you can delete it.

If you just want to temporarily hide an item without deleting it, use the "Is Stocked" toggle instead.


Multi-Location Inventory

Each location tracks its own inventory independently. Products can exist at multiple locations with different stock levels. There is no automatic sharing or transfer of stock between locations.

Item Correlation

If you carry the same wine at multiple locations, you can correlate those items for reporting purposes. Correlation links the same product across your locations so you can see total inventory of a particular wine across your entire business.

What correlation does:

  • Connects the same wine at different locations so you can view aggregate data
  • Helps with reporting and understanding your total stock position across all locations

What correlation does not do:

  • It does not merge or share stock between locations. Each location still tracks its own quantities independently.
  • It does not move inventory between locations.

Correlation is purely for visibility and reporting. Your day-to-day operations at each location remain independent.

Behind the scenes, MemberZone links the same product across locations using the identifier your POS shares across locations (Square and Lightspeed use an account-level product id; Toast provides a multi-location id). When that link is not available, MemberZone falls back to the item's SKU, and then to its name. Keeping a real SKU on each item makes this correlation reliable.


SKUs and Switching POS Systems

Your SKU is the durable identifier for a product. Unlike the internal ids your POS assigns, a SKU is meaningful to you and stays the same even if you change POS systems. Because of this, MemberZone treats the SKU as the key that keeps an item's history intact.

Why SKUs matter:

  • Orders, clubs, and release history all point at the same underlying MemberZone item. That item keeps its identity even when its POS connection changes.
  • A real SKU lets MemberZone recognize "this is the same product" when you reconnect or switch a POS, instead of creating a duplicate.
  • Some shipping/compliance integrations (like VinoShipper) require a real SKU.

MemberZone never uses a POS's internal id as a stand-in SKU. If an item has no SKU in your POS, it simply has no SKU in MemberZone (rather than showing a meaningless code).

Catalog Health

The Inventory page shows a catalog health banner when items need attention - for example, items missing a SKU, items where the SKU is really just a POS id, duplicate SKUs at the same location, or shipping items blocked from VinoShipper because they lack a SKU. Filling in real SKUs clears these warnings and makes a future POS switch smooth.

Click a SKU warning in the banner (or use the SKU filter above the table) to see just the items with no usable SKU, then open each one and add a SKU from its Details tab. A SKU has to be unique within a location, so MemberZone tells you if the one you entered is already on another item.

Reconnecting or Switching a POS

When you connect a POS at a location that already has a catalog, MemberZone offers to rematch your existing catalog by SKU. Before anything changes, you see a preview:

  • Will rebind - items that match one-to-one by SKU. These keep the same MemberZone record (and all their orders, club assignments, and history) and simply point at the new POS.
  • Need review - a SKU that matches more than one existing item. These are never rebound automatically; you resolve them yourself.
  • New to import - items in the new POS with no existing match. Add these with the normal import.
  • Not in the new POS - existing items the new POS does not offer.

Applying the rematch keeps your catalog intact instead of creating parallel items, and it updates item-based reward eligibility to follow the rebound items. Any reward links that cannot be remapped are flagged so you can review them.

Was this helpful?

Still stuck?

Ask Zoe about this article and get a direct answer.

Back to Inventory & Templates