**What** Update the `MedusaService` class, factory and types to remove the concept of main modules. The idea being that all method will be explicitly named and suffixes to represent the object you are trying to manipulate. This pr also includes various fixes in different modules Co-authored-by: Stevche Radevski <4820812+sradevski@users.noreply.github.com> Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
49 lines
2.3 KiB
Plaintext
49 lines
2.3 KiB
Plaintext
export const metadata = {
|
||
title: `Fulfillment Concepts`,
|
||
}
|
||
|
||
# {metadata.title}
|
||
|
||
In this document, you’ll learn about some basic fulfillment concepts.
|
||
|
||
## Fulfillment Set
|
||
|
||
A fulfillment set is a general form or way of fulfillment. For example, shipping is a form of fulfillment, and pick-up is another form of fulfillment. Each of these can be created as fulfillment sets.
|
||
|
||
A fulfillment set is represented by the [FulfillmentSet data model](/references/fulfillment/models/FulfillmentSet). All other configurations, options, and management features are related to a fulfillment set, in one way or another.
|
||
|
||
```ts
|
||
const fulfillmentSets = await fulfillmentModuleService.createFulfillmentSets(
|
||
[
|
||
{
|
||
name: "Shipping",
|
||
type: "shipping",
|
||
},
|
||
{
|
||
name: "Pick-up",
|
||
type: "pick-up",
|
||
},
|
||
]
|
||
)
|
||
```
|
||
|
||
---
|
||
|
||
## Service Zone
|
||
|
||
A service zone is a collection of geographical zones or areas. It’s used to restrict available shipping options to a defined set of locations.
|
||
|
||
A service zone is represented by the [ServiceZone data model](/references/fulfillment/models/ServiceZone). It’s associated with a fulfillment set, as each service zone is specific to a form of fulfillment. For example, if a customer chooses to pick up items, you can restrict the available shipping options based on their location.
|
||
|
||

|
||
|
||
A service zone can have multiple geographical zones, each represented by the [GeoZone data model](/references/fulfillment/models/GeoZone). It holds location-related details to narrow down supported areas, such as country, city, or province code.
|
||
|
||
---
|
||
|
||
## Shipping Profile
|
||
|
||
A shipping profile defines a type of items that are shipped in a similar manner. For example, a `default` shipping profile is used for all item types, but the `digital` shipping profile is used for digital items that aren’t shipped and delivered conventionally.
|
||
|
||
A shipping profile is represented by the [ShippingProfile data model](/references/fulfillment/models/ShippingProfile). It only defines the profile’s details, but it’s associated with the shipping options available for the item type.
|