Kentico Xperience 13 documentation and ASP.NET Core

Most documentation about running Xperience applications under ASP.NET Core can be found in a dedicated section: Developing Xperience applications using ASP.NET Core. The rest of the documentation still applies, but some code samples and scenarios might need slight modifications for Core projects.

All major differences between the MVC 5 and Core platforms are summarized in Migrating to ASP.NET Core.

×

Shipping-related customizing

To customize the shipping functionality of the Xperience E-commerce Solution, use the following approach

  1. Implement a custom shipping carrier provider.
  2. Register the carrier in the administration interface.
  3. Create shipping options that use the services of the custom carrier.

By creating a custom shipping carrier provider, you gain full control over the shipping costs and availability of the related shipping options. For example, you can:

  • Calculate shipping costs based on variables, such as the country in the delivery address, the package weight, etc.
  • Retrieve shipping costs using the external API of a shipping company (FedEx, USPS, Australia Post, etc.).
  • Set conditions that determine exactly when shipping options are available (based on the properties of individual orders or any other variables).

If you wish to define custom discounts that apply to shipping costs, see Customizing discounts.

The E-commerce API uses the following additional interfaces to connect the functionality of shipping carrier providers with the overall shopping cart and order calculation logic (see Customizing the shopping cart calculation to learn more).

  • IDeliveryBuilder – prepares the Delivery objects required by the GetPrice and CanDeliver methods of shipping carrier providers, based on shopping cart calculation data.
  • IShippingPriceService – calculates the final shipping price for shopping carts or orders. The default IShippingPriceService implementation calculates the base shipping price using the IDeliveryBuilder and the shipping carrier provider of the order's shipping option, and then applies shipping discounts provided by the registered IShippingtDiscountSource.

Customization of these interfaces is not required or recommended in typical scenarios.


Was this page helpful?