Delivery Options returns personalised delivery choices by taking the parameters that you specify in the API and using them to query your particular setup in Delivery Manager. So, for example, if you specify a particular parcelWeight as an API parameter, then the API call will look at your Delivery Manager setup, and, from those carrier services that are active on your account and can deliver to the particular postcode within the required timeframe, only return those that can deliver that weight of parcel.
This means that you first need to use Delivery Manager to set up the warehouse, carrier configurations and allocation rules that determine how your consignments are shipped. Therefore, once you have your Delivery Manager account, you should work through the following before using the API to return delivery options:
If you look at the JSON examples in this guide, you will see the Web cutoff times, e.g.
cutOffDateTime": "2020-02-17T18:00:00.000Z. Refer also to Using the Web Cutoffs as Order Countdowns.
Delivery Options by default orders the returned options in order of cost, with the cheapest first. It is therefore essential that the costs are set up correctly.
If a carrier service has no costs associated with it, then it will never be returned by Delivery Options.
Setting up the Carrier Charges (Optional).
The shipping charges are returned by the API so that they can be shown to your consumers on your eCommerce website. These are typically based around the 'service groups' explained below. For example, you may opt to offer a flat, fixed rate for economy services, and a higher rate for next day services.
A 'service group' is a collection of services (e.g. 'Next Day'), and a service is an individual carrier service belonging to a group (e.g. 'Royal Mail 1st Class' within 'Next Day'). Refer to Setup for examples of carrier 'service groups'.
Delivery Manager already has a number of built-in allocation rules, but you can set your own rules that prevent options from being returned under different circumstances (refer to Creating your own Allocation Rules).
You should consult Metapack's implementation team before attempting to create your own allocation rules.