Retrieving custom shipping options
If configured for your business, you can create a custom shipping solution for orders that need custom shipping options. For example, products that need custom shipping based on their weight dimensions, and price, or orders shipped to a PO Box address. For help with enabling custom shipping options, contact the support team.
Before you begin, ensure that:
- Your shipping providers and provider rates are configured in NewStore Omnichannel Cloud. For help with this, contact the support team.
- All provider rates are added to your fulfillment configuration. For more information on how to define them, see Provider rates .
- Your shipping providers are integrated. See Integrating a shipping provider .
To retrieve custom shipping options:
To retrieve custom shipping options for orders, develop an adapter that implements the Shipping Options webhooks. To request custom shipping options for an order, NewStore Omnichannel Cloud must call the Get customized provider rates method on your adapter. In the response, send only those provider rates that can be offered for the cart.
To request shipping options for the returned provider rate, NewStore Omnichannel Cloud must call the Request shipping offers on your shipping provider adapter. For example, if you work with multiple providers with EasyPost, NewStore Omnichannel Cloud calls your EasyPost adapter for shipping options. See Integrating a shipping provider .
Retrieving shipping options for PO Boxes​
Ensure that your adapter returns only those provider rates that can
deliver to PO Boxes. For example, if you use USPS_POBox
to deliver
only to a PO Box in the US, when NewStore Omnichannel Cloud calls your
adapter with a PO BOX in the address, return only USPS_POBox
. If the
address does not contain a PO Box, exclude USPS
in your response.
Here's how the integration works:
Retrieving custom shipping options for products​
Ensure that products are imported with weight, dimensions, and price information.
Ensure that your adapter defines specific provider rates for products that need custom shipping options. For example, if your integrated shipping provider supports provider rates
FedExGround
andFedExNextDayAir
. Your business offersFedExNextDayAir
only if the product price is more than100USD
. When NewStore calls your adapter, include onlyFedExNextDayAir
as the provider rate in the response.
:::
Retrieving custom shipping prices for orders​
For non-standard orders that need you to offer customized shipping prices, you can set up a custom shipping adapter. NewStore calls the custom shipping adapter using the Get customized provider rates method to retrieve the shipping price to use.
Ensure that products are imported with weight, dimensions, and price information.
NewStore uses a shipping offer price based on the value of the
use_as_customer_facing_cost
flag in the fulfillment configuration
only if:
- You have not set up a custom shipping adapter.
- The price
source
is not configured in your custom shipping adapter.
The price source
property in your custom shipping adapter tells
NewStore which shipping price needs to be used for these custom orders.
You can use one of these values for the price source
property:
customization_provider
: Use this value when you want to use a shipping price that overrides:
- The price configured for the service level in the fulfillment configuration.
- The price returned by the shipping provider.
See the response schema for the Get customized provider rates method.
For example, you can use a specific price of 50 USD for the provider rate in the custom shipping adapter. NewStore uses this price and ignores any other prices configured in your fulfillment configuration or returned by your shipping provider.
sequenceDiagram participant NewStore participant CA as Custom Shipping Adapter participant SA as Shipping Adapter participant SP as Shipping Provider NewStore->>CA: Gets customized provider rates activate NewStore Note left of NewStore: Custom shipping adapter price is 50 USD CA->>NewStore: Returns the provider rates with the custom shipping adapter price deactivate NewStore NewStore->>SA: Requests shipping options activate NewStore Note left of NewStore: Requests shipping options for the returned provider rates. SA->>SP: Fetches shipping options activate SA SP->>SA: Shipping options SA->>NewStore: Shipping options to display to the customer Note left of NewStore: Displays 50 USD as the shipping price. deactivate NewStore
service_level
: Use this value if you want NewStore to:
- Use the price configured for the service level in your fulfillment configuration.
- Ignore the price returned by the shipping provider.
In this example, the shipping offer price for the service level configured in your fulfillment configuration is 100 USD. NewStore displays this price to the customer, and ignores the prices returned by the shipping provider. See Tutorial: Setting up a fulfillment configuration (Legacy method) .
sequenceDiagram participant NewStore participant CA as Custom Shipping Adapter participant SA as Shipping Adapter participant SP as Shipping Provider NewStore->>CA: Gets customized provider rates activate NewStore Note left of NewStore: Shipping offer price in fulfillment config is 100 USD CA->>NewStore: Returns the provider rates with the shipping provider price deactivate NewStore NewStore->>SA: Requests shipping options activate NewStore Note left of NewStore: Requests shipping options for the returned provider rates. SA->>SP: Fetches shipping options activate SA SP->>SA: Shipping options SA->>NewStore: Shipping options to display to the customer Note left of NewStore: Displays 100 USD as the shipping price. deactivate NewStore
shipping_provider
: Use this value if you want NewStore to:
- Use the shipping offer price returned by the shipping provider configured for your business.
- Ignore the price configured for the service level in your fulfillment configuration.
In this example, the price returned by the shipping provider is 70 USD. NewStore displays this price to the customer, and ignores the price configured for the service level in your fulfillment configuration. See Integrating a shipping provider .
sequenceDiagram participant NewStore participant CA as Custom Shipping Adapter participant SA as Shipping Adapter participant SP as Shipping Provider NewStore->>CA: Gets customized provider rates activate NewStore Note left of NewStore: Shipping offer price from the shipping provider is 70 USD CA->>NewStore: Returns the provider rates with the shipping provider price deactivate NewStore NewStore->>SA: Requests shipping options activate NewStore Note left of NewStore: Requests shipping options for the returned provider rates. SA->>SP: Fetches shipping options activate SA SP->>SA: Shipping options SA->>NewStore: Shipping options to display to the customer Note left of NewStore: Displays 70 USD as the shipping price. deactivate NewStore
For NewStore to use the correct custom shipping price, ensure that your
custom shipping adapter defines the price source
for products that
need custom shipping options. When NewStore calls the adapter, it should
return the specific shipping offer prices for provider rates.
For example, if your integrated shipping provider supports a specific
price for provider rate FedExGround
, ensure that this price is
configured in the custom shipping adapter. If your business uses the
price configured in your fulfillment configuration for provider rate
FedExNextDayAir
, set the price source
property to use that price.
If the order is split into multiple shipments, NewStore uses a customized shipping price .
Related topics