From f222b7f1df6c23a24cba37c12ad3b1b2a033ff72 Mon Sep 17 00:00:00 2001
From: Harshavardhan Bajoria <62978274+HVbajoria@users.noreply.github.com>
Date: Tue, 4 Oct 2022 14:40:25 +0530
Subject: [PATCH 1/6] docs: fixed some typos and grammatical errors (#2337)
* Update README.md
* Update usage.md
* Update contribution-guidelines.md
* Update quick-start-docker.md
* Update OrderService.md
* Update CartService.md
* Update README.md
* Update quick-start-docker.md
* Update usage.md
* Update CartService.md
* Update OrderService.md
* Update contribution-guidelines.md
* Update contribution-guidelines.md
* Update contribution-guidelines.md
* Update contribution-guidelines.md
---
README.md | 12 ++++++------
docs/content/contribution-guidelines.md | 14 +++++++-------
docs/content/quickstart/quick-start-docker.md | 8 ++++----
docs/content/usage.md | 4 ++--
4 files changed, 19 insertions(+), 19 deletions(-)
diff --git a/README.md b/README.md
index 856bd19d70..7451a2e714 100644
--- a/README.md
+++ b/README.md
@@ -14,7 +14,7 @@
-An open-source composable commerce engine built for developers.
+An open source composable commerce engine built for developers.
@@ -78,14 +78,14 @@ You can learn more about [Medusa’s architecture in our documentation](https://
- **Products and Collections APIs:** Add products with extensive customization settings and sort them into collections.
- **Region API:** Configure and manage multiple regions and currencies all from one platform.
- **Plugin API:** Easily integrate fulfillment providers, payment providers, notification services, and many other custom tools and third-party services.
-- ****PriceList and Promotions APIs:**** Advanced pricing for products with conditions based on its amount in the cart or promotions and discounts.
-- **Tax API:** Advanced tax configurations specific to multiple regions, with capability of specifying taxes for specific products.
+- ****PriceList and Promotions APIs:**** Advanced pricing for products with conditions based on the amount in the cart or promotions and discounts.
+- **Tax API:** Advanced tax configurations specific to multiple regions, with the capability of specifying taxes for specific products.
See more of the [ecommerce features on our documentation](https://docs.medusajs.com/#features).
## Roadmap
-Write-ups for all features will be made available in [Github discussions](https://github.com/medusajs/medusa/discussions) prior to starting the implementation process.
+Write-ups for all features will be made available in [Github discussions](https://github.com/medusajs/medusa/discussions) before starting the implementation process.
### **2022**
@@ -106,7 +106,7 @@ Write-ups for all features will be made available in [Github discussions](https
## Plugins
-As a headless and extendible solution, Medusa allows you to integrate third-party services or add custom features into Medusa by installing Plugins.
+As a headless and extendible solution, Medusa allows you to integrate third-party services or add custom features to Medusa by installing Plugins.
Check out [our available plugins](https://github.com/medusajs/medusa/tree/master/packages) that you can install and use instantly on your Medusa server.
@@ -114,7 +114,7 @@ Check out [our available plugins](https://github.com/medusajs/medusa/tree/master
Medusa is all about the community. Therefore, we would love for you to help us build the most robust and powerful commerce engine on the market.
-Whether it is fixing bugs, improving our documentation or simply spreading the word, please feel free to join in. Please check [our contribution guide](https://github.com/medusajs/medusa/blob/master/CONTRIBUTING.md) for further details about how to contribute.
+Whether it is fixing bugs, improving our documentation, or simply spreading the word, please feel free to join in. Please check [our contribution guide](https://github.com/medusajs/medusa/blob/master/CONTRIBUTING.md) for further details about how to contribute.
## Community & Support
diff --git a/docs/content/contribution-guidelines.md b/docs/content/contribution-guidelines.md
index ae473a997c..40653c7105 100644
--- a/docs/content/contribution-guidelines.md
+++ b/docs/content/contribution-guidelines.md
@@ -23,7 +23,7 @@ You’ll also find MDX files. MDX files combine the power of Markdown with React
## What You Can Contribute To
- You can contribute to the Docusaurus codebase to add a new feature or fix a bug in the documentation website.
-- You can contribute to the documentation content either by fixing errors you find or adding documentation pages.
+- You can contribute to the documentation content either by fixing errors you find or by adding documentation pages.
## What You Can’t Contribute To
@@ -45,7 +45,7 @@ For more details on how to contribute, check out [the contribution guidelines in
### Base Branch
-When you make edit to an existing documentation page or fork the repository to make changes to the documentation, you have to create a new branch.
+When you make an edit to an existing documentation page or fork the repository to make changes to the documentation, you have to create a new branch.
Documentation contributions always use `master` as the base branch.
@@ -69,17 +69,17 @@ When you add a new page to the documentation, you must add the new page in `www/
### Terminology
-When the documentation page is a conceptual or overview documentation, the label in the sidebar should start with a noun.
+When the documentation page is a conceptual or an overview documentation, the label in the sidebar should start with a noun.
-When the documentation page is a tutorial documentation, the label in the sidebar should start with a verb. An exception of this rule are integration documentations and upgrade guides.
+When the documentation page is tutorial documentation, the label in the sidebar should start with a verb. Exceptions to this rule are integration documentation and upgrade guides.
### Character Count
-The character count of the sidebar item's label must be at most twenty seven characters. For the API Reference, the sidebar item's label must be at most twenty five characters.
+The character count of the sidebar item's label must be at most twenty-seven characters. For the API Reference, the sidebar item's label must be at most twenty-five characters.
## Notes and Additional Information
-When displaying notes and additional information in a documentation page, use [Admonitions](https://docusaurus.io/docs/markdown-features/admonitions). Make sure the type of admonition used matches the note’s importance to the current document.
+When displaying notes and additional information on a documentation page, use [Admonitions](https://docusaurus.io/docs/markdown-features/admonitions). Make sure the type of admonition used matches the note’s importance to the current document.
If the note is something developers have to be careful of doing or not doing, use the `caution` or `danger` admonitions based on how critical it is.
@@ -111,7 +111,7 @@ The code snippet must be written using NPM, and the `npm2yarn` plugin will autom
-Don't use commands in their abbrivated terms. For example, instead of `npm i` use `npm install`.
+Don't use commands in their abbreviated terms. For example, instead of `npm i` use `npm install`.
diff --git a/docs/content/quickstart/quick-start-docker.md b/docs/content/quickstart/quick-start-docker.md
index 7ad6264ef8..93f54ed8c3 100644
--- a/docs/content/quickstart/quick-start-docker.md
+++ b/docs/content/quickstart/quick-start-docker.md
@@ -1,6 +1,6 @@
# Quickstart using Docker
-In this document you will learn how to make a container of Medusa's app on Docker. Docker is an open source platform for building, deploying, and managing containerized applications.
+In this document, you will learn how to make a container of Medusa's app on Docker. Docker is an open source platform for building, deploying, and managing containerized applications.
## Prerequisites
@@ -19,7 +19,7 @@ It is assumed that you have Docker installed on your system. You can install it
## Create Medusa Server with Docker
-### 1. Clone Medusa's starter project from Github
+### 1. Clone Medusa's starter project from GitHub
```bash
git clone https://github.com/medusajs/medusa-starter-default.git my-medusa-starter
@@ -58,7 +58,7 @@ If you get the error `ERROR: for postgres Cannot start service postgres: Ports
Running the above command does the following:
-1. Build images for your Medusa project, a PostgreSQL database and a Redis server
+1. Build images for your Medusa project, a PostgreSQL database, and a Redis server
2. Run migrations for your newly created database
@@ -103,4 +103,4 @@ You can learn more about configuring your server and loading environment variabl
- Install the [Next.js](../starters/nextjs-medusa-starter.md) or [Gatsby](../starters/gatsby-medusa-starter.md) storefronts to set up your ecommerce storefront quickly.
- Install the [Medusa Admin](../admin/quickstart.md) to supercharge your ecommerce experience with easy access to configurations and features.
- Check out the [API reference](https://docs.medusajs.com/api/store) to learn more about available endpoints available on your Medusa server.
-- Install [plugins](https://github.com/medusajs/medusa/tree/master/packages) for features like Payment, CMS, Notifications, among other features.
+- Install [plugins](https://github.com/medusajs/medusa/tree/master/packages) for features like Payment, CMS, and Notifications, among other features.
diff --git a/docs/content/usage.md b/docs/content/usage.md
index 7dbcf2a2ba..5daf0d8b90 100644
--- a/docs/content/usage.md
+++ b/docs/content/usage.md
@@ -2,7 +2,7 @@
-This document gives an overview of Medusa’s optional collected usage information, how it helps Medusa become a better platform, and how developers can opt out of this feature.
+This document gives an overview of Medusa’s optional collected usage information, how it helps Medusa become a better platform, and how developers can opt-out of this feature.
## Overview
@@ -51,4 +51,4 @@ Or, you can run the following command in the root of your Medusa server project
medusa telemetry --disable
```
-
\ No newline at end of file
+
From 88c86614a401ab55f42fabf06bfabc30c2b4e3f7 Mon Sep 17 00:00:00 2001
From: Shahed Nasser
Date: Tue, 4 Oct 2022 15:48:44 +0300
Subject: [PATCH 2/6] docs: changed medusa's readme (#2334)
---
packages/medusa/README.md | 146 +++++++++++++++++++++++++++++++-------
1 file changed, 120 insertions(+), 26 deletions(-)
diff --git a/packages/medusa/README.md b/packages/medusa/README.md
index 8909fbdb71..c5fae0f6f5 100644
--- a/packages/medusa/README.md
+++ b/packages/medusa/README.md
@@ -1,42 +1,136 @@
-# Structure
+
+
+
+
+
+
+ Medusa
+
-- Models (`/models`)
-This is where the data layer lives. Define data models here no logic only schema and data access layer. (Default is MongoDB so we have data access layer defined for us already)
+
-- Services (`/services`)
-This is where our business logic lives. Define services that perform calculations, update the data layer, synchronize services, etc.
+
+An open-source composable commerce engine built for developers.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-- Controllers (`/api`)
-This is the interface lives. Define how the user interacts with the service layer. Ensure that the user has permission to do what they intend to, authenticate requests, call service layer.
+## Getting Started
-- Jobs (`/jobs`)
-This is where background and recurring tasks live. Want to send some data somewhere every night, this would be where to do it. Calls service layer methods and should, like controllers, not contain business logic.
+You can install Medusa by either following our [Quickstart guide](https://docs.medusajs.com/quickstart/quick-start) or the following steps:
-- Subscribers (`/subscribers`)
-This is where events live. Want to perform a certain task whenever something else happens, this is where to do it.
+1. **Install Medusa CLI**
-# Extending the core
+ ```bash
+ npm install @medusajs/medusa-cli -g
+ ```
-The core will look for files in the folders listed above, and inject the custom code.
+2. **Create a new Medusa project**
+ ```bash
+ medusa new my-medusa-store --seed
+ ```
-# Checkout flow
+3. **Start your Medusa engine**
-To create an order from a cart the customer must have filled in:
-- their details (shipping/billing address, email)
-- shipping method
-- payment method
+ ```bash
+ cd my-medusa-store
+ medusa develop
+ ```
-The steps can be done in any order. The standard path would probably be:
+### Requirements
-1. submit details (PUT /cart/shipping-address, PUT /cart/email)
-2. select shipping method (PUT /cart/shipping-method)
-3. enter payment details (PUT /cart/payment-method)
-4. complete order (POST /order)
+- Node v14.0 or higher.
+- SQLite or PostgreSQL (SQLite is only for getting started; PostgreSQL is recommended)
+- Redis
-Assuming that shipping methods are static within each region we can display all shipping methods at checkout time. If shipping is dynamically calculated the price of the shipping method may change, we will ask the fulfillment provider for new rates.
+You can check out [this documentation for more details about setting up your environment](https://docs.medusajs.com/tutorial/set-up-your-development-environment).
-Payment details can be entered at any point as long as the final amount is known. If the final amount changes after the payment details are entered the payment method may therefore be invalidated.
+## What is Medusa
-Within the store UI you could imagine each step being taken care of by a single button click, which calls all endpoints.
+Medusa is an open source composable commerce engine built with Node.js. Medusa enables developers to build scalable and sophisticated commerce setups with low effort and great developer experience.
+You can learn more about [Medusa’s architecture in our documentation](https://docs.medusajs.com/introduction).
+
+### Features
+
+- **Orders, Exchanges, and Returns APIs:** Aside from the standard order management that comes with ecommerce platforms, Medusa also provides an easy and automated way to manage swaps, returns, and claims.
+- **Products and Collections APIs:** Add products with extensive customization settings and sort them into collections.
+- **Region API:** Configure and manage multiple regions and currencies all from one platform.
+- **Plugin API:** Easily integrate fulfillment providers, payment providers, notification services, and many other custom tools and third-party services.
+- ****PriceList and Promotions APIs:**** Advanced pricing for products with conditions based on its amount in the cart or promotions and discounts.
+- **Tax API:** Advanced tax configurations specific to multiple regions, with capability of specifying taxes for specific products.
+
+See more of the [ecommerce features on our documentation](https://docs.medusajs.com/#features).
+
+## Roadmap
+
+Write-ups for all features will be made available in [Github discussions](https://github.com/medusajs/medusa/discussions) prior to starting the implementation process.
+
+### **2022**
+
+- [x] Admin revamp
+- [x] Tax API
+- [x] Tax Calculation Strategy
+- [x] Cart Calculation Strategy
+- [x] Customer Groups API
+- [x] Promotions API
+- [x] Price Lists API
+- [x] Price Selection Strategy
+- [ ] Import / Export API
+- [ ] Sales Channel API
+- [ ] Extended Product API (custom fields, publishing control, and more)
+- [ ] Extended Order API (managing placed orders, improved inventory control, and more)
+- [ ] Multi-warehouse support
+- [ ] GraphQL API
+
+## Plugins
+
+As a headless and extendible solution, Medusa allows you to integrate third-party services or add custom features into Medusa by installing Plugins.
+
+Check out [our available plugins](https://github.com/medusajs/medusa/tree/master/packages) that you can install and use instantly on your Medusa server.
+
+## Contributions
+
+Medusa is all about the community. Therefore, we would love for you to help us build the most robust and powerful commerce engine on the market.
+
+Whether it is fixing bugs, improving our documentation or simply spreading the word, please feel free to join in. Please check [our contribution guide](https://github.com/medusajs/medusa/blob/master/CONTRIBUTING.md) for further details about how to contribute.
+
+## Community & Support
+
+Use these channels to be part of the community, ask for help while using Medusa, or just learn more about Medusa:
+
+- [Discord](https://discord.gg/medusajs): This is the main channel to join the community. You can ask for help, showcase your work with Medusa, and stay up to date with everything Medusa.
+- [GitHub Issues](https://github.com/medusajs/medusa/issues): for sending in any issues you face or bugs you find while using Medusa.
+- [GitHub Discussions](https://github.com/medusajs/medusa/discussions): for joining discussions and submitting your ideas.
+- [Medusa Blog](https://medusajs.com/blog/): find diverse tutorials and company news.
+- [Twitter](https://twitter.com/medusajs)
+- [LinkedIn](https://www.linkedin.com/company/medusajs)
+
+## Upgrade Guides
+
+Follow our [upgrade guides](https://docs.medusajs.com/advanced/backend/upgrade-guides/) on the documentation to keep your Medusa project up-to-date.
+
+## License
+
+Licensed under the [MIT License](https://github.com/medusajs/medusa/blob/master/LICENSE)
From d516e046996e63272bc1cac55d4671a3baffd8a3 Mon Sep 17 00:00:00 2001
From: Shahed Nasser
Date: Tue, 4 Oct 2022 15:49:53 +0300
Subject: [PATCH 3/6] docs: Added pattern usage sections in the API Reference
(#2332)
* docs: added usage patterns in API Reference
* docs: added pattern usage to storefront api ref
---
docs/api/admin-spec3-base.yaml | 41 ++++++++++++++++++++++++++++++++++
docs/api/store-spec3-base.yaml | 41 ++++++++++++++++++++++++++++++++++
2 files changed, 82 insertions(+)
diff --git a/docs/api/admin-spec3-base.yaml b/docs/api/admin-spec3-base.yaml
index 1c7dabb2b2..d96907f12a 100644
--- a/docs/api/admin-spec3-base.yaml
+++ b/docs/api/admin-spec3-base.yaml
@@ -10,6 +10,47 @@ info:
There are two ways to send authenticated requests to the Medusa server: Using a user's API token, or using a Cookie Session ID.
+
+ ## Expanding Fields
+
+ In many endpoints you'll find an `expand` query parameter that can be passed to the endpoint. You can use the `expand` query parameter to unpack an entity's relations and return them in the response.
+
+ For example, when you list customers you can also retrieve their groups by passing to the `expand` query parameter the value `groups`.
+
+ You can expand more than one relation by separating the relations in the `expand` query parameter with a comma. For example, to retrieve both the orders and the groups of a customer, pass to the `expand` query parameter the value `groups,orders`.
+
+ Please note that the parameters you pass to `expand` replace any relations that are expanded by default.
+
+ ## Selecting Fields
+
+ In many endpoints you'll find a `fields` query parameter that can be passed to the endpoint. You can use the `fields` query parameter to specify which fields in the entity should be returned in the response.
+
+ You can pass more than one field by seperating the field names in the `fields` query parameter with a comma.
+
+ Only the fields you pass to `field` will be retrieved and returned in the response. Any fields that are returned by default will not be returned in this case. This does not affect relations.
+
+ For example, to only select the `title` and `description` fields of a product, pass to the `fields` query parameter the value `title,description`.
+
+ ## Pagination
+
+ ### Query Parameters
+
+ In listing endpoints, such as list customers or list products, you can control the pagination using the query parameters `limit` and `offset`.
+
+ `limit` is used to specify the maximum number of items that can be return in the response. `offset` is used to specify how many items to skip before returning the resulting entities.
+
+ You can use the `offset` query parameter to change between pages. For example, if the limit is 50, at page 1 the offset should be 0; at page 2 the offset should be 50, and so on.
+
+ ### Response Fields
+
+ In listing fields, aside from the entities retrieved, there are three pagination-related fields returned: `count`, `limit`, and `offset`.
+
+ Similarly to the query parameters, `limit` is the maximum number of items that can be returned in the response, and `field` is the number of items that were skipped before the entities in the result.
+
+ `count` is the total number of available items of this entity. It can be used to determine how many pages are there.
+
+ For example, if the `count` is 100 and the `limit` is 50, you can divide the `count` by the `limit` to get the number of pages: `100/50 = 2 pages`.
+
license:
name: MIT
url: https://github.com/medusajs/medusa/blob/master/LICENSE
diff --git a/docs/api/store-spec3-base.yaml b/docs/api/store-spec3-base.yaml
index c7b0babcc8..c21ebfacdd 100644
--- a/docs/api/store-spec3-base.yaml
+++ b/docs/api/store-spec3-base.yaml
@@ -10,6 +10,47 @@ info:
To send requests as an authenticated customer, you must use the Cookie Session ID.
+
+ ## Expanding Fields
+
+ In many endpoints you'll find an `expand` query parameter that can be passed to the endpoint. You can use the `expand` query parameter to unpack an entity's relations and return them in the response.
+
+ For example, when you list customers you can also retrieve their groups by passing to the `expand` query parameter the value `groups`.
+
+ You can expand more than one relation by separating the relations in the `expand` query parameter with a comma. For example, to retrieve both the orders and the groups of a customer, pass to the `expand` query parameter the value `groups,orders`.
+
+ Please note that the parameters you pass to `expand` replace any relations that are expanded by default.
+
+ ## Selecting Fields
+
+ In many endpoints you'll find a `fields` query parameter that can be passed to the endpoint. You can use the `fields` query parameter to specify which fields in the entity should be returned in the response.
+
+ You can pass more than one field by seperating the field names in the `fields` query parameter with a comma.
+
+ Only the fields you pass to `field` will be retrieved and returned in the response. Any fields that are returned by default will not be returned in this case. This does not affect relations.
+
+ For example, to only select the `title` and `description` fields of a product, pass to the `fields` query parameter the value `title,description`.
+
+ ## Pagination
+
+ ### Query Parameters
+
+ In listing endpoints, such as list customers or list products, you can control the pagination using the query parameters `limit` and `offset`.
+
+ `limit` is used to specify the maximum number of items that can be return in the response. `offset` is used to specify how many items to skip before returning the resulting entities.
+
+ You can use the `offset` query parameter to change between pages. For example, if the limit is 50, at page 1 the offset should be 0; at page 2 the offset should be 50, and so on.
+
+ ### Response Fields
+
+ In listing fields, aside from the entities retrieved, there are three pagination-related fields returned: `count`, `limit`, and `offset`.
+
+ Similarly to the query parameters, `limit` is the maximum number of items that can be returned in the response, and `field` is the number of items that were skipped before the entities in the result.
+
+ `count` is the total number of available items of this entity. It can be used to determine how many pages are there.
+
+ For example, if the `count` is 100 and the `limit` is 50, you can divide the `count` by the `limit` to get the number of pages: `100/50 = 2 pages`.
+
license:
name: MIT
url: https://github.com/medusajs/medusa/blob/master/LICENSE
From 4836127e9e97cc4347b5a7ffb6573529b53b1016 Mon Sep 17 00:00:00 2001
From: Shahed Nasser
Date: Tue, 4 Oct 2022 17:24:15 +0300
Subject: [PATCH 4/6] docs: added sales channel conceptual guide (#2342)
* docs: added sales channel conceptual guide
* fixed file path
* added dividers
---
.../advanced/backend/sales-channels/index.md | 73 +++++++++++++++++++
www/docs/sidebars.js | 4 +
2 files changed, 77 insertions(+)
create mode 100644 docs/content/advanced/backend/sales-channels/index.md
diff --git a/docs/content/advanced/backend/sales-channels/index.md b/docs/content/advanced/backend/sales-channels/index.md
new file mode 100644
index 0000000000..c4f57715ed
--- /dev/null
+++ b/docs/content/advanced/backend/sales-channels/index.md
@@ -0,0 +1,73 @@
+# Sales Channels
+
+In this document, you’ll learn about Sales Channels and how they can be used in Medusa.
+
+:::note
+
+The Sales Channels feature is currently in beta mode and guarded by a feature flag. To use Sales Channels either:
+
+1. Enable the `MEDUSA_FF_SALES_CHANNELS` environment variable;
+2. Or enable the `sales_channels` key in the Medusa server's settings.
+
+You can learn more about enabling it in the [feature flags](../feature-flags/toggle.md) documentation.
+
+:::
+
+## Introduction
+
+Sales Channels allow you to separate between the different channels you sell products in. For example, you can have a sales channel for your website and another for your mobile apps.
+
+Sales Channels are associated with stores, products, carts, and orders: A store has a default sales channel; you can define which products are available in a sales channel; you can specify the sales channel of a cart; you can filter orders by sales channel.
+
+### Example Use Cases
+
+The sales channel feature can be used in a variety of use cases including:
+
+- Implement a B2B Ecommerce Store.
+- Specifying different products for each channel you sell in.
+- Support Omnichannel in your ecommerce store.
+
+---
+
+## SalesChannel Entity Overview
+
+A sales channel is stored in the database as a [SalesChannel](../../../references/entities/classes/SalesChannel.md) entity. Some of its important attributes are:
+
+- `name`: The name of the sales channel.
+- `is_disabled`: A boolean value indicating of the Sales Channel is disabled or not.
+
+---
+
+## Relations to Other Entities
+
+### Store
+
+A store has a default sales channel. When you first run your Medusa server or seed your database, a default sales channel is created, if it doesn’t exist, and associated with the store.
+
+The relation is implemented in the [Store](../../../references/entities/classes/Store.md) entity. You can access the default sales channel of a store by expanding the `default_sales_channel` relation and using `store.default_sales_channel`. You can also access the ID of the default sales channel using `store.default_sales_channel_id`.
+
+### Product
+
+Products can be available in more than one sales channel. You can then filter products by a sales channel using the Storefront and Admin APIs.
+
+The relation is implemented in the [Product](../../../references/entities/classes/Product.md) entity. You can access the sales channels a product is available in by expanding the `sales_channels` relation and using `product.sales_channels`.
+
+### Cart
+
+When you create a cart, you can optionally specify the sales channel it belongs to. If you don’t set the sales channel, the store’s default sales channel will be associated with it.
+
+A cart can belong to only one sales channel. Only products that belong to the same sales channel as the cart can be added to it.
+
+The relation is implemented in the [Cart](../../../references/entities/classes/Cart.md) entity. You can access the sales channel a cart is associated with by expanding the `sales_channel` relation and using `cart.sales_channel`. You can also access the ID of the sales channel using `cart.sales_channel_id`.
+
+### Order
+
+Orders can optionally be associated with a sales channel. You can filter orders by a sales channel using the Storefront and Admin APIs.
+
+The relation is implemented in the [Order](../../../references/entities/classes/Order.md) entity. You can access the sales channel an order is associated with by expanding the `sales_channel` relation and using `order.sales_channel`. You can also access the ID of the sales channel using `order.sales_channel_id`.
+
+---
+
+## What’s Next 🚀
+
+- Check out the [Sales Channel’s Admin APIs](https://docs.medusajs.com/api/admin/#tag/Sales-Channel).
diff --git a/www/docs/sidebars.js b/www/docs/sidebars.js
index d3b6a2d132..924f0354e9 100644
--- a/www/docs/sidebars.js
+++ b/www/docs/sidebars.js
@@ -364,6 +364,10 @@ module.exports = {
type: "doc",
id: "advanced/backend/price-selection-strategy/index"
},
+ {
+ type: "doc",
+ id: "advanced/backend/sales-channels/index"
+ },
]
},
{
From 34331708da6eaac78daf489813766cd2d20e53bd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marcos=20Rodr=C3=ADguez?=
Date: Tue, 4 Oct 2022 16:28:04 +0200
Subject: [PATCH 5/6] docs: replaced admin features overview with the required
linking section (#2338)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* docs: Replaced admin features overview with the corresponding link section
* Update docs/content/admin/quickstart.md
Co-authored-by: Shahed Nasser
* Update docs/content/admin/quickstart.md
Co-authored-by: Shahed Nasser
* docs: Removed empty line.
Co-authored-by: Marcos Rodríguez
Co-authored-by: Shahed Nasser
---
docs/content/admin/quickstart.md | 44 +++-----------------------------
1 file changed, 3 insertions(+), 41 deletions(-)
diff --git a/docs/content/admin/quickstart.md b/docs/content/admin/quickstart.md
index 8f9c6f7cd5..b4b4a7ec5d 100644
--- a/docs/content/admin/quickstart.md
+++ b/docs/content/admin/quickstart.md
@@ -107,49 +107,11 @@ For more details about the Admin CORS configuration, check out the [Configure yo
:::
-## Admin Features Overview
+## Admin User Guide
-### Order Management
+Medusa admin provides a lot of ecommerce features including managing Return Merchandise Authorization (RMA) flows, store settings, products, orders, and much more.
-In the Medusa admin, you can view all orders in your store and their details. You can fulfill orders, capture payments, and track order history. You can also create and manage return requests, swaps, and claims.
-
-
-
-### Product Management
-
-In the Medusa admin, you can manage your store’s products. You can create products, add their description and images, create variants with multiple options, set different prices for different currencies, and manage inventory.
-
-:::note
-
-To upload images and save products, you need to integrate a file storage plugin. You can use [DigitalOcean Spaces](../add-plugins/spaces), [S3](../add-plugins/s3), or [MinIO](../add-plugins/minio).
-
-:::
-
-
-
-### Customer Management
-
-In the Medusa admin, you can manage your store’s customers. You can manage their information and get a close-up on their orders.
-
-
-
-### Discounts Management
-
-In the Medusa admin, you can manage your store’s discounts. You can create and manage discounts created for all products or specific products. Discounts can also be of a fixed amount or free shipping. You can also customize the discount code, its expiry date, its description, and more.
-
-
-
-### Gift Cards Management
-
-In the Medusa admin, you can manage your store’s gift card products. You can create a gift card product with images and descriptions. You can specify unlimited denominations as well.
-
-
-
-### Settings Management
-
-In the Medusa admin, you can manage your store’s overall settings. These include your store’s regions, fulfillment providers, payment providers, your store’s users, and more.
-
-
+You can learn more about Medusa admin and its features in the [User Guide](../user-guide/index.mdx).
## What’s Next 🚀
From bd941309161bcee4fbfc7918d310c426ba8d8f15 Mon Sep 17 00:00:00 2001
From: Shahed Nasser
Date: Tue, 4 Oct 2022 19:48:08 +0300
Subject: [PATCH 6/6] docs: fix note in quickstart (#2347)
---
docs/content/quickstart/quick-start.md | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/docs/content/quickstart/quick-start.md b/docs/content/quickstart/quick-start.md
index e62c5949b9..e5f090c382 100644
--- a/docs/content/quickstart/quick-start.md
+++ b/docs/content/quickstart/quick-start.md
@@ -20,11 +20,11 @@ You can install Node from the [official website](https://nodejs.org/en/).
npm install @medusajs/medusa-cli -g
```
- :::note
+:::note
- If you get a permission error when using NPM, check out [NPM's documentation for a solution](https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally).
+If you get a permission error when using NPM, check out [NPM's documentation for a solution](https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally).
- :::
+:::
### 2. Create a new Medusa project