Delivery Options can return locker collection points via the PUDO optionType parameter.
These points can then be presented on your customer website alongside a map showing their locations, e.g.
This article is aimed at Delivery Manager customers who wish to return nothing else but lockers as PUDOs. These customers fall into two categories:
-
If you are a new Metapack customer, who is only going to be using Delivery Options to return locker collection points, then all setup is carried out by Metapack, and you can move straight to Returning Locker Options.
-
If you are an existing Delivery Options customer who now wants to use PUDO calls to return lockers, then some specific setup is initially required within your existing Delivery Manager configuration before you make any API calls. Refer to Setup for an existing Delivery Options customer.
The following is the recommended setup process:
-
Add a new warehouse specifically to handle deliveries to lockers.
Note
This warehouse can be a 'virtual' as opposed to a physical location.
-
Add the Inpost United Kingdom carrier to the warehouse, and subscribe to both of the available services:
-
Configure these services as required.
In particular:
-
Add the services to the Depots for the warehouse, e.g.
-
Ensure that the costs and charges for the services are up to date:
-
-
Create a user to be responsible for returning locker options from the API calls.
-
Ensure that this user is locked to the warehouse created at step 1, e.g.
-
Proceed from Returning Locker Options below.
The user attached to the warehouse set up for returning locker options, can make a call using the wh_code, PUDO optionType parameter, and an appropriate radius.
Important
Ensure that you have your warehouse code and API key to hand.
For example, the following is a call used to return the next available locker pickup options for each carrier service within 10 kilometres of a particular UK postcode:
GET https://dmo.metapack.com/dmoptions/find?key=<API-Key>&wh_code=BSK123&r_t=lsc&c_pc=WC1X 8XZ&optionType=PUDO&radius=10000
This is an example of the JSON that might be returned from the above call:
{ "header": { "requestId": "de709d94-20ce-4204-a509-0beaef9d19d3", "requestDate": "2020-05-12T09:37:50.478Z", "inputParameters": { "optionType": [ "PUDO" ], "c_pc": [ "WC1X 8XZ" ], "r_t": [ "lsc" ], "radius": [ "10000" ], "wh_code": [ "BSK123" ], "key": [ "<API-Key>" ] }, "responseDate": "2020-05-12T09:37:52.740Z" }, "results": [ { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 1938 }, "description": null, "carrierServiceCode": "IP05HERMESND_UKLON24918_425001", "long": -0.14236, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.52437, "delivery": { "from": "2020-05-13T11:00:00.000Z", "to": "2020-05-13T18:00:59.999Z" }, "address": "350 Euston Road, London/Camden", "carrierServiceName": "Hermes Next Day\nUKLON24918\n350 Euston Road\nLondon/Camden\nNW1 3JN\n", "postcode": "NW1 3JN", "fullName": "Inpost United Kingdom Hermes Next Day\nUKLON24918\n350 Euston Road\nLondon/Camden\nNW1 3JN\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMESND_UKLON24918_425001/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" }, { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 1938 }, "description": null, "carrierServiceCode": "IP05HERMES2D_UKLON24918_425002", "long": -0.14236, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.52437, "delivery": { "from": "2020-05-14T11:00:00.000Z", "to": "2020-05-14T18:00:59.999Z" }, "address": "350 Euston Road, London/Camden", "carrierServiceName": "Hermes Two Days\nUKLON24918\n350 Euston Road\nLondon/Camden\nNW1 3JN\n", "postcode": "NW1 3JN", "fullName": "Inpost United Kingdom Hermes Two Days\nUKLON24918\n350 Euston Road\nLondon/Camden\nNW1 3JN\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMES2D_UKLON24918_425002/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" }, { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 3836 }, "description": null, "carrierServiceCode": "IP05HERMESND_UKLON10965_425001", "long": -0.12275, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.48953, "delivery": { "from": "2020-05-13T11:00:00.000Z", "to": "2020-05-13T18:00:59.999Z" }, "address": "38-48 Albert Embankment, London/Lambeth", "carrierServiceName": "Hermes Next Day\nUKLON10965\n38-48 Albert Embankment\nLondon/Lambeth\nSE1 7TJ\n", "postcode": "SE1 7TJ", "fullName": "Inpost United Kingdom Hermes Next Day\nUKLON10965\n38-48 Albert Embankment\nLondon/Lambeth\nSE1 7TJ\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMESND_UKLON10965_425001/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" }, { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 3836 }, "description": null, "carrierServiceCode": "IP05HERMES2D_UKLON10965_425002", "long": -0.12275, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.48953, "delivery": { "from": "2020-05-14T11:00:00.000Z", "to": "2020-05-14T18:00:59.999Z" }, "address": "38-48 Albert Embankment, London/Lambeth", "carrierServiceName": "Hermes Two Days\nUKLON10965\n38-48 Albert Embankment\nLondon/Lambeth\nSE1 7TJ\n", "postcode": "SE1 7TJ", "fullName": "Inpost United Kingdom Hermes Two Days\nUKLON10965\n38-48 Albert Embankment\nLondon/Lambeth\nSE1 7TJ\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMES2D_UKLON10965_425002/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" }, { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 4138 }, "description": null, "carrierServiceCode": "IP05HERMESND_UKLON17491_425001", "long": -0.14841, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.49304, "delivery": { "from": "2020-05-13T11:00:00.000Z", "to": "2020-05-13T18:00:59.999Z" }, "address": "Eccleston Place, London/Westminster", "carrierServiceName": "Hermes Next Day\nUKLON17491\nEccleston Place\nLondon/Westminster\nSW1W 9NF\n", "postcode": "SW1W 9NF", "fullName": "Inpost United Kingdom Hermes Next Day\nUKLON17491\nEccleston Place\nLondon/Westminster\nSW1W 9NF\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMESND_UKLON17491_425001/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" }, { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 4138 }, "description": null, "carrierServiceCode": "IP05HERMES2D_UKLON17491_425002", "long": -0.14841, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.49304, "delivery": { "from": "2020-05-14T11:00:00.000Z", "to": "2020-05-14T18:00:59.999Z" }, "address": "Eccleston Place, London/Westminster", "carrierServiceName": "Hermes Two Days\nUKLON17491\nEccleston Place\nLondon/Westminster\nSW1W 9NF\n", "postcode": "SW1W 9NF", "fullName": "Inpost United Kingdom Hermes Two Days\nUKLON17491\nEccleston Place\nLondon/Westminster\nSW1W 9NF\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMES2D_UKLON17491_425002/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" }, { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 4787 }, "description": null, "carrierServiceCode": "IP05HERMESND_UKHAM1053_425001", "long": -0.1669, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.55166, "delivery": { "from": "2020-05-13T11:00:00.000Z", "to": "2020-05-13T18:00:59.999Z" }, "address": "215 Haverstock Hill, London/Camden", "carrierServiceName": "Hermes Next Day\nUKHAM1053\n215 Haverstock Hill\nLondon/Camden\nNW3 4QE\n", "postcode": "NW3 4QE", "fullName": "Inpost United Kingdom Hermes Next Day\nUKHAM1053\n215 Haverstock Hill\nLondon/Camden\nNW3 4QE\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMESND_UKHAM1053_425001/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" }, { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 4787 }, "description": null, "carrierServiceCode": "IP05HERMES2D_UKHAM1053_425002", "long": -0.1669, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.55166, "delivery": { "from": "2020-05-14T11:00:00.000Z", "to": "2020-05-14T18:00:59.999Z" }, "address": "215 Haverstock Hill, London/Camden", "carrierServiceName": "Hermes Two Days\nUKHAM1053\n215 Haverstock Hill\nLondon/Camden\nNW3 4QE\n", "postcode": "NW3 4QE", "fullName": "Inpost United Kingdom Hermes Two Days\nUKHAM1053\n215 Haverstock Hill\nLondon/Camden\nNW3 4QE\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMES2D_UKHAM1053_425002/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" }, { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 5482 }, "description": null, "carrierServiceCode": "IP05HERMESND_UKLON10789_425001", "long": -0.11295, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.57291, "delivery": { "from": "2020-05-13T11:00:00.000Z", "to": "2020-05-13T18:00:59.999Z" }, "address": "73 Stapleton Hall Road, London/Haringey", "carrierServiceName": "Hermes Next Day\nUKLON10789\n73 Stapleton Hall Road\nLondon/Haringey\nN4 3QF\n", "postcode": "N4 3QF", "fullName": "Inpost United Kingdom Hermes Next Day\nUKLON10789\n73 Stapleton Hall Road\nLondon/Haringey\nN4 3QF\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMESND_UKLON10789_425001/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" }, { "groupCodes": [ "" ], "photoUrls": [], "telephoneNumber": null, "distance": { "unit": "m", "value": 5482 }, "description": null, "carrierServiceCode": "IP05HERMES2D_UKLON10789_425002", "long": -0.11295, "optionType": "PUDO", "countryCode" : "GBR", "storeName": null, "shippingCharge": 0, "lat": 51.57291, "delivery": { "from": "2020-05-14T11:00:00.000Z", "to": "2020-05-14T18:00:59.999Z" }, "address": "73 Stapleton Hall Road, London/Haringey", "carrierServiceName": "Hermes Two Days\nUKLON10789\n73 Stapleton Hall Road\nLondon/Haringey\nN4 3QF\n", "postcode": "N4 3QF", "fullName": "Inpost United Kingdom Hermes Two Days\nUKLON10789\n73 Stapleton Hall Road\nLondon/Haringey\nN4 3QF\n", "collection": { "from": "2020-05-12T17:30:00.000Z", "to": "2020-05-12T18:30:59.999Z" }, "storeId": null, "logoUrl": null, "storeTimes": { "monday": [ "00:00-23:59" ], "tuesday": [ "00:00-23:59" ], "wednesday": [ "00:00-23:59" ], "thursday": [ "00:00-23:59" ], "friday": [ "00:00-23:59" ], "saturday": [ "00:00-23:59" ], "sunday": [ "00:00-23:59" ] }, "carrierCode": "IP05", "hasDisabledAccess": false, "bookingCode": "IP05HERMES2D_UKLON10789_425002/2020-05-12/*-*/*/*-*", "cutOffDateTime": "2020-05-12T17:00:00.000Z" } ] }