---
displayed_sidebar: entitiesSidebar
slug: /references/entities/classes/ShippingOption
---

import TypeList from "@site/src/components/TypeList"

# ShippingOption

A Shipping Option represents a way in which an Order or Return can be shipped. Shipping Options have an associated Fulfillment Provider that will be used when the fulfillment of an Order is initiated. Shipping Options themselves cannot be added to Carts, but serve as a template for Shipping Methods. This distinction makes it possible to customize individual Shipping Methods with additional information.

## Properties

<TypeList types={[{"name":"id","type":"`string`","description":"The shipping option's ID","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"created_at","type":"`Date`","description":"The date with timezone at which the resource was created.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"updated_at","type":"`Date`","description":"The date with timezone at which the resource was updated.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"deleted_at","type":"`null` \\| `Date`","description":"The date with timezone at which the resource was deleted.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"name","type":"`string`","description":"The name given to the Shipping Option - this may be displayed to the Customer.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"region_id","type":"`string`","description":"The ID of the region this shipping option can be used in.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"region","type":"[Region](entities.Region.mdx)","description":"The details of the region this shipping option can be used in.","optional":false,"defaultValue":"","expandable":true,"children":[{"name":"id","type":"`string`","description":"The region's ID","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"created_at","type":"`Date`","description":"The date with timezone at which the resource was created.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"updated_at","type":"`Date`","description":"The date with timezone at which the resource was updated.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"deleted_at","type":"`null` \\| `Date`","description":"The date with timezone at which the resource was deleted.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"name","type":"`string`","description":"The name of the region as displayed to the customer. If the Region only has one country it is recommended to write the country name.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"currency_code","type":"`string`","description":"The three character currency code used in the region.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"currency","type":"[Currency](entities.Currency.mdx)","description":"The details of the currency used in the region.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"tax_rate","type":"`number`","description":"The tax rate that should be charged on purchases in the Region.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"tax_rates","type":"`null` \\| [TaxRate](entities.TaxRate.mdx)[]","description":"The details of the tax rates used in the region, aside from the default rate.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"tax_code","type":"`string`","description":"The tax code used on purchases in the Region. This may be used by other systems for accounting purposes.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"gift_cards_taxable","type":"`boolean`","description":"Whether the gift cards are taxable or not in this region.","optional":false,"defaultValue":"true","expandable":false,"children":[]},{"name":"automatic_taxes","type":"`boolean`","description":"Whether taxes should be automated in this region.","optional":false,"defaultValue":"true","expandable":false,"children":[]},{"name":"countries","type":"[Country](entities.Country.mdx)[]","description":"The details of the countries included in this region.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"tax_provider_id","type":"`null` \\| `string`","description":"The ID of the tax provider used in this region","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"tax_provider","type":"[TaxProvider](entities.TaxProvider.mdx)","description":"The details of the tax provider used in the region.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"payment_providers","type":"[PaymentProvider](entities.PaymentProvider.mdx)[]","description":"The details of the payment providers that can be used to process payments in the region.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"fulfillment_providers","type":"[FulfillmentProvider](entities.FulfillmentProvider.mdx)[]","description":"The details of the fulfillment providers that can be used to fulfill items of orders and similar resources in the region.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"metadata","type":"`Record<string, unknown>`","description":"An optional key-value map with additional details","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"includes_tax","type":"`boolean`","description":"Whether the prices for the region include tax","optional":false,"defaultValue":"false","expandable":false,"featureFlag":"tax_inclusive_pricing","children":[]}]},{"name":"profile_id","type":"`string`","description":"The ID of the Shipping Profile that the shipping option belongs to.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"profile","type":"[ShippingProfile](entities.ShippingProfile.mdx)","description":"The details of the shipping profile that the shipping option belongs to.","optional":false,"defaultValue":"","expandable":true,"children":[{"name":"id","type":"`string`","description":"The shipping profile's ID","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"created_at","type":"`Date`","description":"The date with timezone at which the resource was created.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"updated_at","type":"`Date`","description":"The date with timezone at which the resource was updated.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"deleted_at","type":"`null` \\| `Date`","description":"The date with timezone at which the resource was deleted.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"name","type":"`string`","description":"The name given to the Shipping profile - this may be displayed to the Customer.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"type","type":"[ShippingProfileType](../enums/entities.ShippingProfileType.mdx)","description":"The type of the Shipping Profile, may be `default`, `gift\\_card` or `custom`.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"products","type":"[Product](entities.Product.mdx)[]","description":"The details of the products that the Shipping Profile defines Shipping Options for. Available if the relation `products` is expanded.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"shipping_options","type":"[ShippingOption](entities.ShippingOption.mdx)[]","description":"The details of the shipping options that can be used to create shipping methods for the Products in the Shipping Profile.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"metadata","type":"`Record<string, unknown>`","description":"An optional key-value map with additional details","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"provider_id","type":"`string`","description":"The ID of the fulfillment provider that will be used to later to process the shipping method created from this shipping option and its fulfillments.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"provider","type":"[FulfillmentProvider](entities.FulfillmentProvider.mdx)","description":"The details of the fulfillment provider that will be used to later to process the shipping method created from this shipping option and its fulfillments.","optional":false,"defaultValue":"","expandable":true,"children":[{"name":"id","type":"`string`","description":"The ID of the fulfillment provider as given by the fulfillment service.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_installed","type":"`boolean`","description":"Whether the fulfillment service is installed in the current version. If a fulfillment service is no longer installed, the `is\\_installed` attribute is set to `false`.","optional":false,"defaultValue":"true","expandable":false,"children":[]}]},{"name":"price_type","type":"[ShippingOptionPriceType](../enums/entities.ShippingOptionPriceType.mdx)","description":"The type of pricing calculation that is used when creatin Shipping Methods from the Shipping Option. Can be `flat\\_rate` for fixed prices or `calculated` if the Fulfillment Provider can provide price calulations.","optional":false,"defaultValue":"","expandable":false,"children":[{"name":"FLAT_RATE","type":"`\"flat_rate\"`","description":"The shipping option's price is a flat rate.","optional":true,"defaultValue":"","expandable":false,"children":[]},{"name":"CALCULATED","type":"`\"calculated\"`","description":"The shipping option's price is calculated. In this case, the `amount` field is typically `null`.","optional":true,"defaultValue":"","expandable":false,"children":[]}]},{"name":"amount","type":"`null` \\| `number`","description":"The amount to charge for shipping when the Shipping Option price type is `flat\\_rate`.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"is_return","type":"`boolean`","description":"Flag to indicate if the Shipping Option can be used for Return shipments.","optional":false,"defaultValue":"false","expandable":false,"children":[]},{"name":"admin_only","type":"`boolean`","description":"Flag to indicate if the Shipping Option usage is restricted to admin users.","optional":false,"defaultValue":"false","expandable":false,"children":[]},{"name":"requirements","type":"[ShippingOptionRequirement](entities.ShippingOptionRequirement.mdx)[]","description":"The details of the requirements that must be satisfied for the Shipping Option to be available for usage in a Cart.","optional":false,"defaultValue":"","expandable":true,"children":[{"name":"id","type":"`string`","description":"The shipping option requirement's ID","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"shipping_option_id","type":"`string`","description":"The ID of the shipping option that the requirements belong to.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"shipping_option","type":"[ShippingOption](entities.ShippingOption.mdx)","description":"The details of the shipping option that the requirements belong to.","optional":false,"defaultValue":"","expandable":true,"children":[]},{"name":"type","type":"[RequirementType](../enums/entities.RequirementType.mdx)","description":"The type of the requirement, this defines how the value will be compared to the Cart's total. `min\\_subtotal` requirements define the minimum subtotal that is needed for the Shipping Option to be available, while the `max\\_subtotal` defines the maximum subtotal that the Cart can have for the Shipping Option to be available.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"amount","type":"`number`","description":"The amount to compare the Cart subtotal to.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"deleted_at","type":"`Date`","description":"The date with timezone at which the resource was deleted.","optional":false,"defaultValue":"","expandable":false,"children":[]}]},{"name":"data","type":"`Record<string, unknown>`","description":"The data needed for the Fulfillment Provider to identify the Shipping Option.","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"metadata","type":"`Record<string, unknown>`","description":"An optional key-value map with additional details","optional":false,"defaultValue":"","expandable":false,"children":[]},{"name":"includes_tax","type":"`boolean`","description":"Whether the shipping option price include tax","optional":false,"defaultValue":"false","expandable":false,"featureFlag":"tax_inclusive_pricing","children":[]}]} expandUrl="https://docs.medusajs.com/development/entities/repositories#retrieving-a-list-of-records" sectionTitle="ShippingOption"/>
