---
title: "Shipments"
slug: "shipments"
abstract: ""
---
# Shipments

<details>
<summary><h2>Configuration</h2></summary>

You can find all configuration for the shipping subsystem in the `Sitecore.Commerce.Shipping.config` file. Here you will find all details for the entities, pipelines, and repositories used by the shipping system.

</details>

<details>
<summary><h2>Entities</h2></summary>

The default shipping entities for Commerce Connect only assume some of the basic shipping information that will be used across all commerce systems; it is expected that you will need to extend these entities.

You can extend the following four entities that are defined in the Connect system for shipping:

- `ShippingOption` - represents detailed information about a shipping option (also known as a shipping category); contains information such as description and ShippingOptionType.
- `ShippingMethod` - represents information about a shipping method, where a shipping method is an implementation of a shipping option, for example, if the shipping option is ShipToAddress then a shipping method for that would be FedEx or UPS.
- `ShippingOptionType` - extensible enum class used to contain the different types of shipping options, the default choices are None, ShipToAddress, PickupFromStore, and ElectronicDelivery.
- `LineShippingOption` - represents the selected shipping option for each line item, this enables the support of split shipments.

To extend any of these default entities, you create a new class that inherits from the appropriate type, and then patch the appropriate entity under <commerce.Entities> in the `Sitecore.Commerce.Shipping.config` file.

</details>

<details>
<summary><h2>Pipelines</h2></summary>

There are two pipelines for shipments that allow most basic functionality.

For example:

- The `getShippingOptions pipeline` - used to retrieve shipping options.
- The `getShippingMethods pipeline` -  used to retrieve shipping methods.
- The `getShippingMethod pipleline` -  used to retrieve shipping method details.
- The `getPricesForShipments pipeline` -  used to get the cost of using a particular shipping option and method.

> [!note]
> For more information, see the [Commerce Connect Developer Reference](https://doc.sitecore.com/xp/en/developers/103/sitecore-experience-commerce/commerce-connect-developer-reference.html "Commerce Connect developer reference").

</details>