Files
medusa-store/www/apps/docs/content/modules/multiwarehouse/overview.mdx
Shahed Nasser bb87db8342 docs: prep for v2 documentation (#6710)
This PR includes documentation that preps for v2 docs (but doesn't introduce new docs).

_Note: The number of file changes in the PR is due to find-and-replace within the `references` which is unavoidable. Let me know if I should move it to another PR._

## Changes

- Change Medusa version in base OAS used for v2.
- Fix to docblock generator related to not catching all path parameters.
- Added typedoc plugin that generates ER Diagrams, which will be used specifically for data model references in commerce modules.
- Changed OAS tool to output references in `www/apps/api-reference/specs-v2` directory when the `--v2` option is used.
- Added a version switcher to the API reference to switch between V1 and V2. This switcher is enabled by an environment variable, so it won't be visible/usable at the moment.
- Upgraded docusaurus to v3.0.1
- Added new Vale rules to ensure correct spelling of Medusa Admin and module names.
- Added new components to the `docs-ui` package that will be used in future documentation changes.
2024-03-18 07:47:35 +00:00

188 lines
5.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
description: "Multi-warehouse allows merchants to store a product in multiple locations with accurate and consistent inventory data within the commerce application."
---
import DocCardList from '@theme/DocCardList';
import DocCard from '@theme/DocCard';
import Icons from '@theme/Icon';
# Multi-Warehouse
Multi-warehouse allows merchants to store a product in multiple locations with accurate and consistent inventory data within the commerce application.
Multi-warehouse in Medusa is composed of two modules: an inventory module - which is the NPM package `@medusajs/inventory` - and a stock location module - which is the NPM package `@medusajs/stock-location`.
<DocCard item={{
type: 'link',
href: '/modules/multiwarehouse/install-modules',
label: 'Install Modules',
customProps: {
icon: Icons['academic-cap-solid'],
description: 'Learn how to install the modules related to multi-warehouse',
}
}} />
You can also create your own modules and use them with the Medusa backend.
<DocCardList colSize={6} items={[
{
type: 'link',
href: '/modules/multiwarehouse/backend/create-inventory-service',
label: 'Backend: Create Inventory Service',
customProps: {
icon: Icons['academic-cap-solid'],
description: 'Learn how to create an inventory service to be used in a custom inventory module.'
}
},
{
type: 'link',
href: '/modules/multiwarehouse/backend/create-stock-location-service',
label: 'Backend: Create Stock Location Service',
customProps: {
icon: Icons['academic-cap-solid'],
description: 'Learn how to create a stock location service to be used in a custom stock location module.'
}
},
]} />
---
## Features
### Multiple Stock Locations
Admins can manage the stock locations, which are the places they store their products. Stock locations are associated with different sales channels.
<DocCardList colSize={6} items={[
{
type: 'link',
href: '/user-guide/multiwarehouse/locations',
label: 'User Guide: Manage Stock Locations',
customProps: {
icon: Icons['users-solid'],
description: 'Learn how to manage stock locations in Medusa Admin.'
}
},
{
type: 'link',
href: '/modules/multiwarehouse/admin/manage-stock-locations',
label: 'Admin: Manage Stock Locations',
customProps: {
icon: Icons['academic-cap-solid'],
description: 'Learn how to manage stock locations using admin APIs.',
}
},
]} />
### Inventory Management Across Locations
Admins can manage the inventory of product variants across the different stock locations.
<DocCardList colSize={6} items={[
{
type: 'link',
href: '/user-guide/multiwarehouse/inventory',
label: 'User Guide: Manage Inventory',
customProps: {
icon: Icons['users-solid'],
description: 'Learn how to manage inventory using the Medusa Admin.'
}
},
{
type: 'link',
href: '/modules/multiwarehouse/admin/manage-inventory-items',
label: 'Admin: Manage Inventory',
customProps: {
icon: Icons['academic-cap-solid'],
description: 'Learn how to manage inventory using the admin APIs.',
}
},
]} />
### Manage Item Allocations in Orders
Admins can manage item allocations to choose which stock location to fulfill items from or return items to. Item quantities are reserved in a stock location until the item is fulfilled to ensure data consistency.
<DocCardList colSize={6} items={[
{
type: 'link',
href: '/user-guide/orders/manage#manage-item-allocation',
label: 'User Guide: Manage Allocations in Orders',
customProps: {
icon: Icons['users-solid'],
description: 'Learn how to manage allocations of items in an order using the Medusa Admin.'
}
},
{
type: 'link',
href: '/modules/multiwarehouse/admin/manage-item-allocations-in-orders',
label: 'Admin: Manage Allocations in Orders',
customProps: {
icon: Icons['academic-cap-solid'],
description: 'Learn how to manage allocations of items in an order using the admin APIs.',
}
},
]} />
---
## Understanding the Architecture
The commerce modules automatically detect whether a product variant is in stock, decrement the variants stock on fulfillment, and increment the variants stock on returns.
<DocCardList colSize={6} items={[
{
type: 'link',
href: '/modules/multiwarehouse/inventory-module',
label: 'Architecture: Inventory Module',
customProps: {
icon: Icons['circle-stack-solid'],
description: 'Learn about the Inventory Module and how it works.'
}
},
{
type: 'link',
href: '/modules/multiwarehouse/stock-location-module',
label: 'Architecture: Stock Location Module',
customProps: {
icon: Icons['circle-stack-solid'],
description: 'Learn about the Stock Location Module and how it works.'
}
},
]} />
---
## Related Modules
Discover Multi-warehouses relation to other modules in Medusa.
<DocCardList colSize={4} items={[
{
type: 'link',
href: '/modules/products/overview',
label: 'Products',
customProps: {
icon: Icons['tag-solid'],
description: 'Manage the inventory of product variants across locations.',
}
},
{
type: 'link',
href: '/modules/sales-channels/overview',
label: 'Sales Channels',
customProps: {
icon: Icons['channels-solid'],
description: 'Stock locations are associated with sales channels.',
}
},
{
type: 'link',
href: '/modules/orders/overview',
label: 'Orders',
customProps: {
icon: Icons['check-circle-solid'],
description: 'Change available stock based on returns and fulfillment.',
}
},
]} />