Allocation Filter

The allocation filter involves a number of hierarchical stages. The aim is to find a single suitable service for delivering a consignment by the end of stage 4, and to move to stages 5, 6 and then 7 only where necessary:

  1. Carrier service subscription - i.e. the system will only consider carrier services to which you are currently subscribed and which are active (refer to Selecting your Carriers and Services and Activating your Carrier Services).

  2. Carrier service attributes - From the available subscribed, active services, each service will then be considered based on a set of 'hard-coded' attributes, dictated to by the associated carrier, and applied to all sellers using that carrier in . During allocation, the attributes, which can be thought of as restrictions, are matched against your consignment data, and unsuitable services are excluded. The most common restrictions are:

    1. Maximum consignment/parcel weight

    2. Maximum consignment/parcel dimension/volume

    3. Maximum consignment value

    4. Maximum consignment parcel quantity

    5. Geographical (postal code/country/zone)

  3. Booking code - Using a booking code allows you to specify a set of selection criteria up front (refer to Introduction to Booking Codes), so that will only consider carrier services that meet the particular booking code requirements.


    Booking codes are not mandatory, but their use is highly recommended for system ease of use and consistency. If they are not used, then Advanced Allocation options can be used instead.


    A booking code can also be used as an allocation filter in the GUI (refer to Using a Booking Code as an Allocation Filter) and can be passed to at consignment level in an allocation API call (refer to the Shipping API documentation).

  4. Carrier Allocation rules - It is possible to write a set of your own rules that reflect your particular operational constraints. This allows any unsuitable services that may have been selected in the previous stages to be excluded, e.g.

    1. Never use Carrier A for any parcel over 2 kg.

    2. Never use a carrier other than Carrier B if the consignment value is over £100.

    3. Never use a carrier other than Carrier C for consignments destined for Eastern Europe.

    4. Never use Carrier D if the consignment contains a flammable item.


    Carrier allocation rules are not mandatory, but they will always form part of the filtering process where they exist and allow you to 'prioritise' certain carrier services over others. Their use is highly recommended if you have consignments of varying types.

  5. Carrier service costs - Where there is more than one service that can deliver your consignment, even after the previous filters have been applied, will select the cheapest service, based on the carrier costs that you set up.

  6. Earliest collection - Where there is more than one service that can deliver your consignment, but the delivery costs are identical, then the service that leaves the warehouse first is selected.


    You can add /LATEST at the end of a booking code to override this default behaviour and force to prioritise the service with the latest despatch time.

  7. Earliest delivery - Where there is more than one service that can deliver your consignment, but the delivery costs are identical, and both services leave the warehouse at the same time, then the one that can deliver first is selected.


If no carrier service is returned, then you can verify whether any carrier maintenance is required, by either using the GUI Why Not? function or the API Debug Service Methods.