Skip to main content

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:

To retrieve custom shipping options:

  1. 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.

  2. 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​

note

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:

sequenceDiagram participant NewStore participant CA as Custom Shipping Adapter participant SA as Shipping Provider Adapter participant SP as Shipping Provider NewStore->>CA: Gets customized provider rates activate NewStore Note left of NewStore: Ship to PO Box 12345 CA->>NewStore: Returns USPS_POBox Note left of NewStore: Address not a PO Box CA->>NewStore: Excludes USPS_POBox 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 from the provider activate SA SP->>SA: Sends shipping options SA->>NewStore: Shipping options for the PO Box address deactivate NewStore

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 and FedExNextDayAir. Your business offers FedExNextDayAir only if the product price is more than 100USD. When NewStore calls your adapter, include only FedExNextDayAir as the provider rate in the response.

:::

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: Order with a 100USD product CA->>NewStore: Returns FedExNextDayAir as the provider rate 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 deactivate NewStore

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.

note

Ensure that products are imported with weight, dimensions, and price information.

Important

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.

note

If the order is split into multiple shipments, NewStore uses a customized shipping price .

Related topics