For many customers, a parcel shop or a pickup locker is the more convenient delivery address: the parcel waits where they pass by anyway, instead of with a neighbor. For the shop, the option is quick to promise and hard to build cleanly. Between the click on “Deliver to a pickup point” and the label with the correct location ID lie location search, address data, data protection, accessibility and the handover to the shipping integration and the ERP system. This article shows how to offer parcel shops and parcel lockers in checkout so that the choice stays simple and the data reaches the carrier in full.
How dense the network of pickup points is
The infrastructure has long been in place. Germany has 61,407 facilities for posting and collecting parcels, including post offices, parcel shops and parcel lockers (Bundesnetzagentur). The number of lockers is growing particularly fast: around 19,803 parcel lockers of various companies are currently in operation (Bundesnetzagentur), with more than 1.5 million compartments between them (Bundesnetzagentur). The 2024 parcel market report still put the figure at around 17,000 lockers (Bundesnetzagentur) with more than 1.2 million compartments (Bundesnetzagentur).
Legally, the pickup point has had a firm place since the reform of the German Postal Act (PostG). Under section 13 PostG, the provider delivers parcels to the address unless it has been agreed that the provider makes the shipment available for collection at a facility it operates or that is operated on its behalf (gesetze-im-internet.de). On the recipient's instruction, delivery is also made to a provider-neutral automated station, provided that its use causes no additional costs for the provider (gesetze-im-internet.de). For checkout this means: which points are available depends on the carrier the shop ships with. The same kiosk can be listed by two carriers under two different IDs.
This is about a carrier's pickup point, not your own store. Store pickup with reservation, pickup deadline and till integration is covered in the article on click and collect as a considered process. With a pickup point, only the destination of the shipment changes; packing, labeling and handover work as for any other order.
What matters at the pickup point
A dense network does not mean that every point suits every customer. Distance and access are what count. How much distance matters is shown by a survey on returning online orders: for three quarters of online shoppers, 77 percent, a choice of different shipping providers is relevant so that they can avoid long trips to the parcel shop (Bitkom). The survey covered 1,006 people aged 16 and over in Germany, including 978 online shoppers (Bitkom). The question concerned returns, but the same conclusion suggests itself for pickup: a point that is far away or open at the wrong time is not a real option.
Typical hurdles are easy to name: distance, the opening hours of parcel shops, operating a locker and the habit of receiving parcels at the front door. The shop can influence two of them. It shows the distance and opening hours of every point, and it lowers the hurdle at the locker by asking for the required details cleanly in checkout.
Home delivery belongs at the front, with the pickup point next to it as an equal choice. A preselected pickup point that has to be deselected first acts as a hurdle and comes close to manipulative design. What a fair checkout without such patterns looks like is described in our article on dark patterns in checkout.
Three ways to bring the pickup point into checkout
Technically there are three designs. They differ in effort and above all in how cleanly the data reaches the carrier. The simplest needs no code, the most elaborate passes the pickup point as a record of its own with an ID unchanged all the way to the label.
The three designs compared
| Design | What the customer does | What reaches the carrier | Sources of error |
|---|---|---|---|
| Note in the address form | enters locker number and customer number into the address fields | an address following the carrier's scheme, as typed | swapped fields, missing customer number, locker of a different carrier |
| Separate shipping method with location search | picks the pickup point from a list or map | an address assembled by the shop in the standard fields | ID gets lost, switching the shipping method leaves old details behind |
| Location search with structured handover | picks the pickup point, only adds missing details | recipient type, location ID and name as separate fields | site may close before shipping, hence a check before the label |
The first design is common because carriers publish schemes for it. For a Packstation locker in Germany, DHL for example describes entering “Packstation” as the street, the locker number as the house number and the personal PostNumber in the additional field (DHL Developer Portal). That works as long as the customer knows the scheme and enters it correctly. Every deviation lands on the label unchecked. On top of that, the form does not know which carrier is meant: the locker number of a different provider looks just like a valid one.
The third design uses the fact that carriers' shipping interfaces know pickup points as recipient types of their own. In DHL's shipping API for Germany, specific address types are defined for Packstation and Postfiliale; a Packstation is addressed via the lockerID attribute, together with the recipient's PostNumber (DHL Developer Portal). Other carriers work with their own IDs and fields. Anyone connecting several needs a data model that stores the ID together with the carrier, plus a translation per carrier in the shipping integration via logistics APIs.
Presentation in the shipping step
The pickup point is a delivery method and belongs in the shipping step, on equal footing with home delivery. Two clear options, “To my home” and “To a pickup point”, with the location search opening only after the choice, are easy to read. With several carriers, the customer first chooses the type of delivery and then the point instead of seeing six options side by side; the carrier follows from the selected point.
The selected point then appears wherever the delivery address would otherwise be: in the summary before the order button, in the order confirmation and in the customer account, each time with name, address and opening hours. If the customer switches back to “To my home”, the shop discards the pickup point completely. If it stays invisible in the record, labels are later produced for lockers the customer deselected long ago.
For returning customers a memory function pays off: the locker chosen last time appears as a suggestion on the next purchase, not as a silent default, and can be edited or deleted in the customer account like an address. On a smartphone the list needs short lines, large tap areas and a selection that is not covered by a map.
Location search: list first, map as a supplement
The core of the selection is the search for nearby pickup points. DHL's location search, for example, is explicitly described as enabling customers during online checkout to choose nearby pick-up or drop-off points such as parcel lockers, including available services and opening hours (DHL Developer Portal). It searches by address, geo-coordinates or location ID (DHL Developer Portal). For the customer, the postcode or the delivery address they have already entered is enough in most cases. For each result the list shows:
- Type of pickup point: parcel shop or parcel locker, as a word and not only as an icon or color.
- Name and address: as the customer will find the place outside.
- Opening hours: for parcel shops including closing days and holiday closures, where the carrier supplies them.
- Distance to the address entered, rounded and with a unit.
- Requirements, such as an account with the carrier if a locker is only open to registered recipients.
- An unambiguous selection via radio button that can also be operated with the keyboard.
The map is what many people think of first and what often causes problems. For services in electronic commerce provided to consumers after 28 June 2025, the German Accessibility Strengthening Act (BFSG) applies (gesetze-im-internet.de). It only exempts online maps if essential information on maps for navigation purposes is provided in an accessible digital form (gesetze-im-internet.de). So the list with name, address and opening hours carries the selection, and the map supplements it. Whether your shop falls under the act is something we assess in our accessibility consulting.
The map itself must also remain operable. Under WCAG 2.2, all functionality that uses a dragging movement must also be achievable with a single pointer without dragging, unless dragging is essential (W3C); a map that can only be moved by a finger drag therefore needs buttons, or the list. For pointer inputs, WCAG 2.2 also requires a target size of at least 24 by 24 CSS pixels, apart from defined exceptions (W3C). The W3C itself cites densely placed map markers as an example of such an exception, because their position is part of the information (W3C); zoom buttons, radio buttons and the button that confirms the selection do not fall under it. Checking this belongs in the accessibility audit of the shop.
A “Use my location” button is convenient, but it does not replace the input field. The browsers' Geolocation API requires express permission from the user before any location data is shared with a web application (W3C). The specification advises recipients to request position information only when necessary and to use it only for the task for which it was provided (W3C). In checkout this means: no request when the page loads, only at the press of a button, no storage beyond the search, and the postcode remains the standard route.
The search creates load on a third-party service, and that service sets limits. For DHL's location search, for example, initial access comes with a fixed daily quota of calls, with more available on request depending on the use case (DHL Developer Portal). The shop therefore caches results per postcode and carrier for a while and only searches once input is complete, not on every keystroke. If the search fails, home delivery remains selectable, and checkout shows an understandable notice instead of blocking the order.
Address data: what is stored and what is passed on
With delivery to a pickup point, two addresses separate. The billing address remains the customer's address; the delivery address is the carrier's site, supplemented by the recipient's name and, where needed, their customer number with the carrier. A typical design mistake: squeezing these details into the existing address fields and splitting them apart again later. Cleaner is a record of its own that carries ID, type and carrier alongside the readable address. A simplified example:
{
"delivery_type": "pickup_point",
"carrier": "carrier-a",
"location_type": "locker",
"location_id": "<ID from the location search>",
"display": {
"name": "Locker at the station",
"street": "Station Road",
"postal_code": "<postcode>",
"city": "Example Town"
},
"recipient": {
"name": "Jane Example",
"carrier_customer_number": "<only if the locker requires it>"
},
"verified_at": "<time of the last check>"
} Only what the chosen delivery method needs is passed on. Under Art. 5(1)(c) GDPR, personal data must be limited to what is necessary in relation to the purposes of processing (EUR-Lex). Under Art. 6(1)(b) GDPR, processing is lawful among other things if it is necessary for the performance of a contract with the data subject (EUR-Lex). For the shipping label, the recipient's phone number and email address are optional in most cases according to DHL (DHL Developer Portal). For shipments addressed directly to a DHL pickup point, on the other hand, the email address should be provided so that the recipient learns when the shipment is ready for pickup (DHL Developer Portal).
Passing data on therefore depends on the delivery method, not on a blanket setting. Checkout tells the customer which detail goes to the carrier and why; whether contract performance covers this or consent is needed is something to clarify with your data protection adviser. Technically, the shipping integration receives a list of the fields it may pass on for each delivery method.
Parcel shop and parcel locker compared
| Feature | Parcel shop | Parcel locker |
|---|---|---|
| Access | during the shop's opening hours | usually around the clock |
| Requirement for the recipient | usually no registration | depending on the carrier, an account or a customer number |
| ID in the record | the carrier's location ID | locker ID, with some carriers also the customer number |
| Tie to the carrier | multi-carrier parcel shops can serve several carriers | usually tied to one carrier, multi-carrier lockers are less common |
| Shipment limits | size and weight according to the carrier's terms | additionally limited by the compartment size |
Handover to shipping integration and ERP
The selection in checkout is only half the job. Up to the label, the record has to pass shop, ERP system where present, shipping integration and carrier unchanged, and a field can get lost at every handover. Anyone switching or updating their ERP system therefore checks specifically whether the different delivery address arrives in full. That is one of the checkpoints in the article on the upgrade to JTL-Wawi 2.x and part of every JTL-Wawi integration. The path of an order to a pickup point:
- Selection: the shop stores carrier, type and ID of the chosen point.
- Check before completion: is the site still listed, does the shipment fit the type and the carrier?
- Order: the pickup point becomes a structured delivery address, not assembled text.
- ERP: all fields arrive, including the customer number with the carrier where needed.
- Label: the shipping integration sets the recipient type and passes on the ID.
- Status: “ready for pickup” and “collected” flow back into the shop and customer communication.
The label shows why the check pays off: DHL requires applications to be able to cancel incorrect labels and generate them correctly again, and non-codable shipments result in extra charges per shipment (DHL Developer Portal). With parcel lockers the customer number comes on top; if it is missing or does not match the name, delivery to the locker can fail.
Two order channels are easily forgotten. Phone orders need the same selection and check in the back end as checkout; how such orders are entered in the first place is shown in the article on phone and email orders in the Shopware admin. And a gift sent to a parcel locker needs the recipient's customer number, not the buyer's; the other options for gift orders are covered in the article on gift options in checkout.
Edge cases to settle before launch
Not every shipment fits every pickup point. These cases belong in rules before launch:
- Bulky and heavy shipments: lockers limit shipments through their compartments, parcel shops through space and the carrier's terms. Freight items drop out entirely, see bulky goods in the online shop.
- Additional services: cash on delivery, age verification or delivery to the recipient in person are not available at every type of site; if the cart requires them, the shop hides the affected pickup points.
- Several parcels: all parts of an order go to the same pickup point, and the notification states how many are waiting there.
- High-value goods: pickup lockers appear in fraud patterns as a delivery destination. That argues for rules such as a value limit, not for dropping the option; more in the article on fraud detection in the online shop.
- Express and abroad: with DHL, the schemes for addressing sites directly do not apply to DHL Express, and lockers elsewhere in Europe follow a scheme of their own (DHL Developer Portal).
Not collected, collected, withdrawn
Some parcels are not collected. Under section 13 PostG, parcels made available for collection and not collected must be returned to the sender unless otherwise agreed (gesetze-im-internet.de); after an unsuccessful delivery attempt, the provider must keep a deposited parcel available for at least seven working days (gesetze-im-internet.de). For the chosen pickup point, the carrier's storage periods apply. A returned parcel is not a withdrawal in itself: under section 355(1) of the German Civil Code (BGB), the declaration must clearly show the consumer's decision to withdraw from the contract (gesetze-im-internet.de). The shop therefore needs a status of its own, “not collected”, a follow-up with the customer and a rule for refund or reshipment; how such returns fit into the processes is described in the article on returns management in e-commerce.
The withdrawal period also depends on pickup. For a consumer sale of goods, under section 356(2) BGB it begins as soon as the consumer or a third party named by the consumer who is not the carrier has received the goods (gesetze-im-internet.de); the period is 14 days (gesetze-im-internet.de). Parcel shops and parcel lockers are network access points of the carrier. For calculating the period, the pickup date from the tracking status is therefore usually the more reliable anchor than the moment the parcel was dropped there. Clarify the details with legal counsel; technically, the shop needs the pickup status as an event of its own.
Pickup points are often advertised as the more environmentally friendly delivery method. Such a statement is an environmental claim and needs a sound basis; blanket wording such as “green shipping” is risky. Which details on delivery options have to appear in the shop and where the limits for environmental claims lie is shown in the article on the extended information obligations in the shop.
Measure whether the option lands
Whether the effort pays off is shown by your own shop. Industry figures describe the market; how your customers decide depends on product range, region and carrier. Five metrics are enough to start with:
- Share of orders with a pickup point, split by parcel shop and parcel locker
- Abandonment rate in the shipping step before and after introducing the option
- Share of labels canceled or corrected because of faulty pickup point data
- Share of shipments that return uncollected
- Customer service enquiries about the pickup location, such as “Where is my parcel?”
The abandonment rate is ideally measured against the same step that the guide to checkout optimization describes. Anyone differentiating shipping costs by delivery method includes the pickup point in the same calculation as doorstep delivery; the models for this are in the article on shipping costs in the shop. A lower price for the pickup point is a legitimate incentive as long as it follows the actual terms and home delivery stays equally visible.
How we build pickup points into the shop
We build the pickup point selection as part of the integration with shipping carriers, tailored to the carriers you ship with and to the shop system you use. In Shopware projects we combine a separate shipping method with location search and a record of its own for the pickup point. We develop data model, checks and handover individually instead of forcing a standard package onto the shop. Find out more on the page of our Shopware agency.
Location search in checkout
Search by postcode or delivery address, list with opening hours, map as a supplement, operable by keyboard and without dragging.
Structured handover
Carrier, type and location ID as separate fields, from the shop through the ERP to the label.
Check before the label
Matching of site, additional services and shipment size before order completion, status messages back into the shop.
Ideally you launch in a quiet period and test with orders from your team before all customers see the option. If you would like to know what this means for your shop, get in touch with us.
Sources are the 2024/2025 postal activity report and the 2024 parcel market report of the German Federal Network Agency (Bundesnetzagentur); a representative survey by Bitkom Research on behalf of Bitkom on returning online orders; the documentation in the DHL Developer Portal on the shipping API for Germany (Parcel DE Shipping) and the location search (Location Finder – Unified); the German Postal Act (section 13), the German Civil Code (sections 355, 356) and the BFSG (section 1) at gesetze-im-internet.de; the GDPR (Art. 5, Art. 6) at EUR-Lex; and WCAG 2.2 including the explanation of the minimum target size, and the Geolocation specification of the W3C. All information retrieved on 14 October 2026.
Usually yes, if some of your customers ask for it and your carrier offers pickup points. The simplest entry is a separate shipping method with location search for one carrier; usage and abandonment rate in the first months show whether the effort pays off.
If your carrier offers both, both make sense. Parcel lockers are mostly accessible around the clock but, depending on the carrier, require an account; the Federal Network Agency counts around 19,803 lockers in operation (Bundesnetzagentur). Parcel shops have opening hours but can usually be used without registration.
That depends on the carrier. With DHL in Germany, parcel lockers are open for pickup to registered recipients and are addressed with the personal PostNumber (DHL Developer Portal). Checkout states this requirement before the selection and asks for the number in a field of its own.
The German Accessibility Strengthening Act only exempts online maps if essential information on maps for navigation purposes is provided in an accessible digital form (gesetze-im-internet.de). For the pickup point search this usually means: an accessible list with name, address and opening hours carries the selection, and the map is a supplement.
It returns to the shop after the storage period; under section 13 PostG, uncollected parcels must be returned to the sender unless otherwise agreed (gesetze-im-internet.de). That is not a withdrawal in itself, because a withdrawal declaration must clearly show the decision to withdraw (gesetze-im-internet.de). The shop needs a process of its own for this case, including a follow-up with the customer.
With a pickup point, the carrier delivers to a parcel shop or a parcel locker in its network. With click and collect, the customer picks up the goods in your own store, with reservation and pickup deadline; our article on click and collect describes the store process.