Magento 2 Custom Shipping Rates User Guide

Introduction

Magento 2 Custom Shipping Rates is an implementation of custom carrier functionality with the ability to create unlimited multi-carrier shipping methods and shipping rates with extra-flexible, feature-rich Expression Builder. Restrict custom shipping methods and set shipping rates depending on cart, cart item and product attributes without any coding efforts with a single extension. Another undoubted advantage of the extension which distinguishes it from others is the ability to process a large array of rules / expressions on the database server side. Maximum flexibility at maximum speed.

Configuration

There are 5 custom shipping carriers implemented in the standard extension. On the admin menu, select Stores → Settings → Configuration. Next, in leftside configuration menu select Sales → Shipping Methods. You can see custom carriers settings there: Custom Rates, Custom Rates 2, Custom Rates 3, Custom Rates 4, Custom Rates 5.

All options are exactly same for those custom carriers:

  1. Select Yes for Enabled to enable a carrier.
  2. In the Title field, enter a title that represents the carrier.
  3. If you want to charge a handling fee then select Calculate Handling Fee and enter Handling Fee. Calculate Handling Fee can be Fixed or Percent. Handling Fee is fixed handling fee amount if Fixed for the field Calculate Handling Fee is selected. Otherwise, handling fee is a percentage of shipping price.
  4. In the Displayed Error Message textarea, type a message that is shown on the frontend in case if the shipping carrier is not available.
  5. Set the All Allowed Countries option for the Ship to Applicable Countries select to accept customers from all coutries. If you want to allow specific countries only then set the Specific Countries for the Ship to Applicable Countries select, set countries in the Ship to Specific Countries select.
  6. Set Show Method if Not Applicable to Yes if you want the shipping carrier to be listed on the frontend when it's not available.
  7. In the Sort Order field, enter a shipping carrier sort order number.
  8. Set Yes for the Debug select to write debug information into the var/log/shipping_custom_rate(_n).log log file.

When complete, click the Save Config button.

Shipping Methods

Before setting up custom shipping rates you will need to add a new shipping method.

On the admin menu, select Stores → Shipping → Shipping Methods. You can manage the list of shipping methods here.

To create a new shipping method, click the Add New Shipping Method button.

  1. Select Shipping Carrier.
  2. Enter a unique for the selected carrier Code.
  3. Enter a unique for the selected carrier Title.
  4. Set an expression for the Condition with Expression Builder, which returns the method availability flag.
  5. Enter a Sort Order number in the list of carrier shipping methods.

When complete, click the Save Method button.

Shipping Rates

Now you can set up custom shipping rates for each shipping method that was previousely created.

On the admin menu, select Stores → Shipping → Shipping Rates. The list of shipping rates can be managed here.

To create a new shipping rate, click the Add New Shipping Rate button.

  1. Select Shipping Method.
  2. Enter a unique Name.
  3. Set an expression for the Price with Expression Builder
  4. Set an expression for the Condition, which returns the rate availability flag.
  5. Enter a Sort Order number to define the rate priority. If multiple rates are available for the shipping method then the rate with the highest priority will be applied. The lower sort order means the higher priority.

When complete, click the Save Rate button.