Product Expiration and Batch Inventory

Batch Inventory Manager for WooCommerce helps store owners manage product inventory at the batch level. Track quantities, monitor expiry dates, automate stock synchronization, receive expiry notifications, and manage all inventory from a centralized dashboard.

Installation

↑ Back to top

To start using a product from WooCommerce.com, you can use the “Add to store” functionality on the order confirmation page or the My subscriptions section in your account.

  1. Navigate to My subscriptions.
  2. Find the Add to store button next to the product you’re planning to install.
  3. Follow the instructions on the screen, and the product will be automatically added to your store.

Alternative options and more information at:
Managing WooCommerce.com subscriptions.

Adding a WooCommerce.com subscription to your store

Setup and Configuration

↑ Back to top

After activating the plugin, navigate to Products → Batch Manager from your WordPress admin dashboard. Here, you can access the Dashboard, Batch Inventory, Settings, and Import/Export tabs to manage all batch inventory features and configurations.

Getting started

↑ Back to top

When you open Batch Manager for the first time, the inventory tables will be empty because no batches have been created yet. The plugin is divided into four main sections:

The plugin is divided into four main sections:

  1. Dashboard.
  2. Batch Inventory.
  3. Settings.
  4. Import / Export.

Dashboard

↑ Back to top

The Dashboard provides a quick overview of your inventory status. It helps store managers identify inventory trends and take action before stock shortages or expiry issues occur.

You can monitor:

  1. Total batches.
  2. Available batches.
  3. Expired batches.
  4. Vendor stock distribution.
  5. High stock products.
  6. Low stock products.
  7. Overall inventory statistics.
Batch Inventory Manager dashboard showing inventory statistics, available batches, expired inventory, stock levels, and inventory overview metrics.

Batch Inventory

↑ Back to top

The Batch Inventory section is where all batch-related inventory management takes place.

From this screen you can:

  1. Add new product batches.
  2. Edit existing batches.
  3. Delete batches.
  4. Search inventory records.
  5. Filter inventory records.
  6. Track expiry dates.
  7. View vendor information.
  8. Manage batch quantities.

Customizing Table Columns

↑ Back to top

Click the Settings icon located above the inventory table.

From here you can:

  1. Show columns.
  2. Hide columns.
  3. Customize your workspace.
  4. Save preferred column layouts.

Click Save Settings after making changes.

Batch Inventory tab showing tools to create new batch inventories and view all existing inventory records in a centralized list.

Using Inventory Filters

↑ Back to top

Filters help locate inventory records quickly.

Available filters include:

  1. Date Filters.
  2. Product.
  3. Category.
  4. Product Type.
  5. Batch Status.

Use filters to find specific inventory records without manually searching through large inventories.

Batch Inventory filters used to search and filter inventory records.

Adding a Product Batch

↑ Back to top

To create a new batch:

  1. Click Add Product Batch.
  2. Select the desired product.
  3. Click Add Batch.
  4. Enter batch information.
  5. Click Update to save.
Batch inventory view showing a list of batches created for one product.

Note: A product can only have one batch inventory record group. If a batch group already exists for a product, a new batch group cannot be created.

Editing Batch Information

↑ Back to top

To update an existing batch:

  1. Click on the batch record.
  2. Modify the required information.
  3. Click Update.

Note: While editing a batch, other batch groups cannot be modified until the current changes are saved.

Deleting Product Batches

↑ Back to top

Delete Entire Product Batch.

Button to delete all batches associated with a product.

Delete Individual Batch Row.

Button to delete a single batch from a product.

Settings

↑ Back to top

General Settings

↑ Back to top

The Settings section allows you to configure inventory automation and expiry management.

General settings page for configuring batch inventory options.

Automatic Batch Stock Management

When enabled, WooCommerce stock quantities are automatically calculated from active batch quantities.

Benefits:

  1. Accurate stock levels.
  2. Reduced manual updates.
  3. Improved inventory synchronization.

Auto Remove Sold Batches

Automatically removes fully sold batches after 30 days from their expiry date.

This helps keep inventory records clean and organized.

Skip Batch If Expire In X Days

Prevent batches that are close to expiry from being allocated to new orders.

Example:

If set to 30 days, any batch expiring within the next 30 days will be excluded from future orders.

Email Settings

↑ Back to top

The Email Settings section manages automated notifications.

Email settings section present in settings tab for batch inventory notifications.

Batch Expiry Email (Admin Notification)

Send automated alerts to store administrators before batches expire.

Benefits:

  1. Plan inventory clearance.
  2. Create promotions.
  3. Reduce stock loss.

Expired Batch Email (Vendor Notification)

Automatically notify vendors when their assigned batches expire.

The plugin uses the vendor email stored within batch records. If no vendor email exists, the notification will not be sent.

Expiring Product Category Management

↑ Back to top

Automatically move products with soon-to-expire batches into selected categories.

Category settings section in the settings tab.

Enable Category Automation

Automatically move products with soon-to-expire batches into selected categories.
Enable category management for expiring inventory.

Select Target Category

Choose a category such as:

  1. Clearance.
  2. Expiring Soon.
  3. Promotional Stock.

Configure Expiry Threshold

Set the number of days before expiry that should trigger category assignment.

Example: If set to 30 days, products with batches expiring within 30 days will automatically be assigned to the selected category.

Enable Product Expiry Display

↑ Back to top

Turn expiry date visibility on or off.

show expiry on frontend section in settings tab

Select Date Format

Choose how expiry dates are displayed.

Examples:

  1. MM/DD/YYYY
  2. DD/MM/YYYY
  3. YYYY-MM-DD

Custom Expiry Message

Add a custom message alongside the expiry date.

Example:

“Best Before:”
“Expiry Date:”
“Fresh Stock Available Until:”

Front-End Expiry Display

↑ Back to top

Display expiry information directly on product pages.

frontend view of product having batches and expiry date of most recent batch

Import & Export

↑ Back to top

The Import & Export section simplifies bulk inventory management.

batch import export tab

Export Batch Data

Export all inventory records to CSV format.

  1. Open Import & Export.
  2. Click Export CSV.
  3. Download the generated file.

Use exported files for:

  1. Reporting
  2. Backup purposes
  3. Inventory auditing
  4. Bulk editing

Import Batch Data

Import inventory records using CSV files.

  1. Click Choose File.
  2. Select your CSV file.
  3. Click Upload & Import.

The plugin will process the file and add or update inventory records automatically.

FAQs

↑ Back to top

Can I manage product variations?

  • Yes. The plugin supports both simple products and product variations.

Does WooCommerce stock update automatically?

  • Yes. When Automatic Batch Stock Management is enabled, WooCommerce stock is calculated from active batch quantities.

Can I prevent near-expiry inventory from being sold?

  • Yes. Use the “Skip Batch If Expire In X Days” setting.

Can I notify vendors when inventory expires?

  • Yes. Vendor notifications can be sent automatically using the vendor email stored in each batch record.

Can I import inventory using CSV files?

  • Yes. Batch inventory data can be imported using CSV files, making bulk updates and inventory migration quick and efficient.

Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.