=== Multi Location Product & Inventory Management for WooCommerce ===
Plugin Name: Multi Location Product & Inventory Management for WooCommerce
Contributors: plugincy, hellomasum
Tags: inventory management, woocommerce inventory, location based pricing, multiple stores, stock management
Requires at least: 5.0
Requires PHP: 7.2
Tested up to: 6.9
Stable tag: 1.1.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Manage products, prices, stock, and orders across multiple store locations. The ultimate WooCommerce multi-location inventory management solution.

== Description ==

**Multi Location Product & Inventory Management for WooCommerce** is the ultimate solution for businesses operating multiple physical locations, warehouses, retail stores, or regional centers.  
This powerful plugin enables you to manage your entire multi-location business from a single WooCommerce installation — providing **location-based inventory tracking, pricing, customer selection, and advanced order fulfillment**.

Whether you run a chain of retail stores, manage multiple warehouses, operate franchises, or serve different geographical regions — this plugin gives you full control to streamline operations, improve customer experience, and maximize profitability.

[&raquo; Buy Pro](https://plugincy.com/multi-location-product-and-inventory-management-for-woocommerce/#allpricing) | [&raquo; More info](https://plugincy.com/multi-location-product-and-inventory-management-for-woocommerce/) | [&raquo; Demos](https://demo.plugincy.com/multi-location-product-and-inventory-management/) | [&raquo; Docs](https://plugincy.com/documentations/)

== ⭐ Key Features at a Glance: ==
A powerful all-in-one multi-location inventory and store management solution designed to streamline operations, optimize stock control, and deliver a seamless, location-based shopping experience for modern businesses.

✅️ **Centralized multi-location inventory Management** – Manage stock across unlimited locations with centralized control, per-location quantities, transfers, backorders, and stock alerts.
✅️ **Location-Based Product Availability & Display** - Control which products are visible in each location and ensure customers only see items available in their selected store.
✅️ **Location-Based Pricing, Tax & Payment Management** - Set different prices, taxes, payment methods, and promotions for each location with full flexibility.
✅️ **Multi-currency (Location based currency)** – Automatically switch store currency and pricing rules based on the selected location.
✅️ **Order Management & Smart Fulfillment by Location** - Automatically route, split, and manage orders based on location rules for smooth and accurate fulfillment.
✅️ **Location-Based Shipping & Local Pickup Management** - Configure shipping methods, pickup options, business hours, and cash-on-pickup settings per location.
✅️ **Automatic Location Detection & Smart Store Selection** - Enable geolocation-based nearest store detection or allow customers to manually select their preferred location.
✅️ **Analytics, Reporting & Business Insights** - Track revenue, profit, stock aging, investment, and performance per location with advanced reports and dashboard visualizations for quick decision-making.
✅️ **Store Operations & Team Management** - Assign location managers, manage roles, and control operations at each branch independently.
✅️ **Communication & Real-Time Notification System** - Get instant stock alerts, order notifications, and real-time dashboard synchronization across devices.
✅️ **Integration, Sync & Data Management** - Import & Export data via CSV, connect APIs, sync with POS systems, and manage large-scale inventory efficiently.
✅️ **SEO, Marketing & Store Discovery Tools** - Improve visibility with location-based SEO pages, promotions, reviews, and an interactive store locator.
✅️ **Real-Time Stock Display & Dynamic Frontend Experience** - Display live stock quantities, enable location-based filters, and provide a smooth, location-aware shopping experience.

### 🏢 FREE VERSION FEATURES

#### 📍 Unlimited Location Management
- Create and manage unlimited locations.
- Add detailed business info including address, contact, and hours.
- Parent-child (hierarchical) location structure.
- Enable or disable locations as needed.
- Assign products to one or multiple locations.
- Bulk assign locations to multiple products.

#### 📦 Location-Based Inventory Tracking
- Manage all stock from one centralized dashboard.
- Filter products by location to check stock availability.
- Set separate stock quantities per location.
- Define regular, sale, and purchase prices per location.
- Manage stock statuses (in stock, out of stock, backorder).
- Low stock alerts per location.
- Purchase price and profit margin tracking.
- Toggle product activation/deactivation per location.

#### 🎨 Frontend Display Options
- Show location names on product titles.
- Display location selectors in dropdown, list, or button style.
- Responsive and customizable display layout.
- Show or hide location info on shop and single product pages.
- Shortcode: `[mulopimfwc_store_location_selector]` for placement anywhere.

#### 🛒 Customer Location Selection
- Customers can choose their preferred store location.
- Location persistence using cookies.
- Automatic product filtering by selected location.
- Optional cart update when changing locations.
- Control display of out-of-stock products (hide, badge, gray-out).

#### 📋 Order Management & Fulfillment
- Orders automatically tagged with customer-selected location.
- View, filter, and manage orders by location in admin.
- Order count indicators per location.
- Support for location-based fulfillment logic.

#### ⚙️ Admin Dashboard & Settings
- Centralized admin interface for managing locations.
- Product location overview table.
- Custom CSS customization.
- Plugin settings backup/import/export (Pro).
- Compatible with WooCommerce HPOS and REST API.
- Secure AJAX operations, data sanitization, and performance caching.

### 🚀 PRO VERSION FEATURES

#### 🌍 Geolocation & Auto Detection
- Automatically detect customer location using IP geolocation.
- Display nearest available inventory.
- Distance-based sorting (coming soon).
- Location-based recommendations.

#### 📍 Location-Based Shipping & Logistics
- Configure unique shipping methods for each store location.
- Set location-specific shipping rates, zones, and restrictions.
- Calculate inter-location transfer costs for inventory movement.
- Automatic shipping cost calculation based on customer’s selected location.
- Support for free-shipping thresholds per location.
- Integration with major shipping carriers for each location.

#### 🧾 Location-Based Tax & Payment Management
- Configure tax rates defined per location.
- Automatic tax calculation based on selected store location.
- Enable or disable payment gateways depending on location.
- Apply location-specific payment restrictions and rules.

#### 🎯 Location-Specific Promotions
- Create exclusive discounts and coupon codes tied to specific locations.
- Set promotional pricing based on store location.
- Manage bulk discount rules per location.
- Target specific customer groups by location segment.

#### ⭐ Location-Based Reviews & Ratings
- Collect reviews that are tied to individual store locations.
- Display customer ratings per location for better transparency.
- Moderate reviews independently for each location.
- Show aggregated rating summaries with location-wise breakdown.
- Gain insights into location performance using customer feedback analytics.

#### 🔍 Location SEO Optimization
- Generate structured data (Schema.org) for each location page.
- Add unique meta titles and descriptions per location.
- Optional location-based URL structures for SEO.
- Local business schema markup support for multi-location stores.
- OpenStreetMap integration for localized SEO pages.
- Improved visibility for local search results.

#### 💬 Advanced Communication
- Location-specific email templates for customer notifications.
- Custom order confirmation emails per store location.
- Automated alerts for location managers.
- Low stock notifications sent to respective location teams.

#### 🗺️ Interactive Store Locator
- OpenStreetMap integration with dynamic store markers.
- Store information cards with directions and contact details.
- Filter stores based on product availability.
- Get directions to the nearest store location.
- Fully mobile-responsive store map interface.
- Shortcode for custom placement: [mulopimfwc_location_info layout="tabs" search="yes"]

#### 🏢 Business Operations Management
- Set operating hours per location with day-by-day scheduling.
- Define public holidays and store closure dates.
- Display real-time “Open” or “Closed” status dynamically.
- Automatically route orders based on live business hours.
- Show location-specific business hours on the store locator.

#### 📦 Advanced Order Fulfillment
- Support for cross-location shopping cart scenarios.
- Automatically group cart items based on store location.

#### 👥 Team Management
- Create location manager roles with permission control.
- Assign users to specific store locations.
- Restrict dashboard access per assigned location.
- Location-specific notifications and admin capabilities.

#### 📊 Advanced Analytics & Reports
- Comprehensive reporting by location.
- Inventory, order, and revenue tracking per store.
- Low stock and new product tracking.
- Visual charts: orders, revenue, investments, profits.
- Export reports to CSV or Excel.
- Custom date range and scheduled reports (coming soon).

#### 🎯 Advanced Frontend Display
- Multi-level popup location selector.
- Cascading menu for hierarchical locations.
- Mobile-optimized popup interface.
- Shop/archive product sorting by location priority.

#### 🔧 Advanced Technical Features
- Enhanced REST API and WooCommerce Blocks integration.
- Optimized SQL queries and caching.
- Plugin license management and update system.
- Usage analytics (optional, GDPR compliant).

#### 📥 Advanced Import & Export
- Export/import settings in JSON.
- Export product data with all location info.
- Bulk import product stock and prices by location.

### 💎 WHY CHOOSE THIS PLUGIN?

- **Complete Multi-Location Management** – Create unlimited business locations with hierarchical structure.  
- **Advanced Inventory Control** – Track stock, prices, and backorders per location.  
- **Location-Based Pricing** – Set regional pricing strategies for market flexibility.  
- **Customer-Friendly Shopping** – Frontend selector ensures users only see available products.  
- **Centralized Order Dashboard** – Manage and filter all orders by location easily.  
- **Data Export & Analytics (Pro)** – Track investments, revenue, and performance visually.  
- **High Compatibility** – 100% compatible with WooCommerce HPOS, REST API, and Blocks.

### 🧰 USE CASES
- **Retail Chains & Franchise Stores** – Manage inventory per branch.
- **Multi-Warehouse Businesses** – Track and fulfill stock from optimal warehouse.
- **Regional Stores** – Show prices and products by region or country.
- **Click & Collect / BOPIS** – Allow customers to buy online and pick up in store.
- **Service-Based Businesses** – Offer services by office or branch location.
- **Restaurant Chains** – Manage menus, prices, and inventory across branches.
- **Pharmacies & Healthcare Providers** – Track medicines and orders across facilities.

== Installation ==

### Automatic Installation
1. Go to **Plugins → Add New** in WordPress admin.
2. Search for “Multi Location Product & Inventory Management for WooCommerce”.
3. Click **Install Now** and then **Activate**.
4. Navigate to **Location Manage** in the admin menu to begin setup.

### Manual Installation
1. Download the plugin ZIP file.
2. Upload via **Plugins → Add New → Upload Plugin**.
3. Choose the ZIP and click **Install Now**, then **Activate**.

### FTP Installation
1. Upload the extracted plugin folder to `/wp-content/plugins/`.
2. Go to **Plugins → Installed Plugins** and activate it.

= Configuration =

### Step-by-Step Setup
1. **Create Locations:** Go to *Location Manage → Locations*, add name, address, hours, and contact info.  
2. **Configure Settings:** Adjust preferences in *Location Manage → Settings*.  
3. **Assign Products:** Open any product, assign one or more locations in the “Locations” meta box.  
4. **Manage Stock:** Define stock, price, and backorder per location.  
5. **Add Location Selector:**  
   - Shortcode: `[mulopimfwc_store_location_selector]`  
   - PHP: `<?php echo do_shortcode('[mulopimfwc_store_location_selector]'); ?>`  
6. **Test Frontend:** Visit shop page, select a location, verify product and price updates.

== Screenshots ==

1. Pop-up & Modal
2. Locations in product title on Archive pages with location selector
3. Automatic user location detection & unlimited location store
4. Location wise archive page
5. Location selection in single product (also available button & dropdown style)
6. Store locations information in single product page
7. Store locations in location archive page
8. Store locations
9. Dashboard & report
10. Unlimited locations
11. Location wise inventory management all in one place
12. Location manager & role management
13. Popup & modal management
14. Product filter by location & visibility manage
15. Location wise everything

== Frequently Asked Questions ==

= Can I create unlimited locations? =
Yes! The free version allows unlimited locations with no limits.

= Can I set different prices per location? =
Yes, both free and Pro support location-specific pricing.

= Is this compatible with my existing WooCommerce setup? =
Absolutely. It integrates seamlessly without affecting existing products or orders.

= Can I track inventory separately for each location? =
Yes, each location’s stock is managed independently in the Stock Central dashboard.

= How do I manage multiple locations efficiently? =
Use the centralized **Stock Central Dashboard** to search, filter, and bulk-edit products by location.

= Can I export or import data? =
Yes, Pro users can export/import settings and product inventory data.

= Does it support automatic location detection? =
Yes, Pro version supports IP-based auto-location detection.

= Can I assign staff to specific locations? =
Yes, with the Pro version’s **Team Management** system.

== Changelog ==

= 1.1.0 =
* Added: pro-only Import/Export button UI scaffolding
* Added: pro-only Modern/Classic view switch UI scaffolding
* Added: Pro-only fields for each location:
- Currency
- Currency position
- Exchange rate
- Rate mode: Auto/Fixed
- Sync latest rate button
- Active/Inactive status
* Fixed: product Bulk edit related issues
* Changed: location-specific pricing is moved out of the free flow and marked as Pro-only
* Removed: unnecessary purchase quantity fields
* Changed: dashboard “Total Investment” was converted to a Pro-only blurred stat

= 1.0.9 =
* Fixed: syncSelectorStateFromCookie added for cache issue

= 1.0.8 =
* Fixed: issues with cache plugin
* Fixed: location based product visibility issue
* Improved: speed optimized

= 1.0.7 =
* Fixed: adjusted location manager and customer location insights files to reflect new version
* Fixed: modified settings to change default behavior for location switching
* Fixed: refined CSS styles for better layout and user experience
* Enhanced: location selector functionality with improved loading states and AJAX handling
* Improved: chart rendering logic to prevent overlapping values

= 1.0.6 =
* Added: location require

= 1.0.5 =
* Fixed: media upload related issues

= 1.0.4 =
* Fixed: validation related issues
* Fixed: condition added for relevant settings
* Fixed: style related issues

= 1.0.3 =
* Added: condition for relative settings
* Fixed: style related issues for location selector

= 1.0.2 =
* Added: Unlimited location creation and management
* Added: Location-based inventory tracking with Stock Central dashboard
* Added: Location-specific pricing (regular, sale, and purchase prices)
* Added: Frontend location selector with multiple display styles
* Added: Customer location selection with cookie persistence
* Added: Order location assignment and filtering
* Added: Product filtering and visibility controls by location
* Added: Import/Export settings and product data
* Added: Custom CSS support for styling
* Added: Shortcode support for flexible placement
* Added: WooCommerce HPOS compatibility
* Added: WooCommerce Blocks support
* Added: REST API filtering capabilities
* Added: Gross profit calculation per location
* Added: Hierarchical location support (parent-child relationships)
* Added: Location-wise product archive pages
* Added: Admin dashboard with comprehensive management tools
* Added: Geolocation and auto-detect customer location
* Added: Team management with location manager roles
* Added: Advanced analytics with visual charts
* Added: Export reports to CSV and Excel
* Added: Low stock products reporting
* Added: Revenue and investment tracking
* Added: Popup/modal location selector
* Added: Multi-level location selection
* Added: Product priority sorting
* Added: License management system
* Added: Custom taxonomy for location organization
* Added: Optimized database queries
* Added: Transient-based caching system
* Added: AJAX operations for dynamic features
* Added: Security hardening (nonce verification, sanitization)
* Added: Multilingual ready with text domain

= 1.0.1 =
* Added: location selection in single product
* Added: location cookie expiry management
* Added: location switching behaviour handling
* Update: UI improved
* Improvement: compatible with WordPress 6.8.2

= 1.0.0 =
* Initial release.

== Third-Party Services ==

The Pro version uses **IP geolocation services** for automatic customer location detection.  
- Only IP address is processed (no personal data).  
- Compliant with GDPR and privacy regulations.  
- Can be disabled in plugin settings.

== Support ==

For support, feature requests or bug reports, please visit [Plugincy Support](https://plugincy.com/support).

== Privacy Policy ==

To learn more about the data we collect and how we use it, please see our [Privacy Policy](https://plugincy.com/usage-tracking/).