A customer wants to collect an online order, but your checkout only offers delivery. Another sees two collection choices. Someone else selects pickup and still finds an unexpected charge in the total.
Start by identifying which pickup system your shop uses. WooCommerce has a legacy shipping-zone method and a separate pickup experience for its Checkout block. Their settings and location rules differ. Changing the wrong one can leave the problem untouched.
The aim is a clear route from choosing collection to receiving the right order at the right place. Here is how to investigate it without turning a checkout repair into an unnecessary rebuild.
First, identify the checkout customers actually use
Ask your developer to identify the checkout on the live customer journey: the WooCommerce Checkout block, the classic checkout shortcode, or a checkout supplied by a page builder or extension. Record any plugin controlling collection.
Check the assigned checkout page under WooCommerce > Settings > Advanced. WooCommerce’s Checkout block documentation confirms that adding the block to a page is not enough: that page must also be designated as the checkout.
Then locate the pickup configuration:
- Block pickup: look under WooCommerce > Settings > Shipping > Local Pickup.
- Legacy pickup: look inside the shipping methods attached to individual shipping zones.
- An extension: identify its own settings and check support for the checkout your shop uses.
A checkout that looks customised does not tell you which system sits underneath it. Establish that before copying instructions from a tutorial or installing another plugin.
Record one failing customer journey
Choose a real symptom you can reproduce. Note the product and variation, quantity, test address, device, whether the customer is signed in, and the collection option you expect.
Take screenshots before changing anything. Does collection never appear, disappear after adding another item, appear twice, or show the wrong charge? Those are different investigations.
Repeat the journey in a fresh browser session so you can compare it with the original. Keep the same basket while checking one setting at a time. Otherwise, an apparent improvement may simply be a different product or address triggering different rules.
If local pickup is missing, follow the correct branch
For Checkout block pickup, check the location and page
Under Shipping > Local Pickup, confirm that pickup is enabled and at least one location is configured. WooCommerce’s block pickup guide makes that location a requirement. Its address and pickup details are visible to customers, so review those too.
Next, inspect the actual checkout page. The Checkout block reference says its Delivery block requires a shippable basket and calculated shipping options. Confirm that the relevant delivery and pickup controls remain in your customised checkout.
Use an ordinary physical product for the first test. After the simple basket passes, return to the affected customer’s exact combination. That gives you a baseline to compare with any product-specific collection rules.
For legacy pickup, check the matched shipping zone
The legacy Local Pickup documentation explains that pickup must be added as a shipping method to a zone. Customers see it when their address matches that zone. Check that the method exists and is enabled in the zone you intend them to use.
Zone order matters. According to WooCommerce’s shipping-zone guide, a customer matches only the first qualifying zone, working down the list. The shop does not combine methods from every overlapping zone.
For example, a broad UK zone above a narrower collection zone can match first and prevent the customer reaching the collection method below it. Put the more specific zone first, then check that it contains every delivery option those customers should retain.
Review postcode patterns as well as zone names. The same guide shows that a wildcard such as CB2* also matches a postcode beginning CB23. A label saying “local collection” does not make an overbroad pattern accurate. Test addresses inside and outside your intended boundary.
If pickup appears twice, check for two active systems
WooCommerce’s core shipping troubleshooting guide identifies a common cause: legacy pickup remains in a shipping zone after block pickup has been enabled. Its recommended fix for a block-based setup is to remove the legacy method from the zones.
Before removing it, record what each option does and confirm the intended replacement works. Check any collection-specific email or fulfilment rules with your developer. Renaming both options to look identical would make it harder to tell which route the customer selected.
If pickup appears outside your local area, check the intended rule
The block pickup guide confirms that this method is offered regardless of customer location. Shipping zones do not restrict it. WooCommerce points to legacy pickup when zone-based restrictions are required.
Decide whether distance should actually prevent collection. Someone ordering from elsewhere may be travelling to your shop or arranging for another person to collect. If your business accepts that, clear location details may be more useful than a postcode restriction.
If collection must be restricted, give your developer the precise rule and ask for a compatible implementation. Avoid switching checkout systems solely to hide an option before checking the effect on payments and the rest of the buying journey.
If collection has a charge, inspect the actual total
Both pickup systems can have a cost. The block settings include an optional pickup price; the legacy method has an optional cost applied to the cart.
Check the selected method and each line in the order total. Is the amount a configured collection fee, a separate handling fee, or delivery that remains selected? If you promise free collection, test the final payable amount against that promise.
Switch from delivery to pickup and back again. The location, method and total should agree at each step. Repeat the check after changing quantity, rather than judging success from the collection label alone.
If pickup disappears with a mixed basket, test the combinations
WooCommerce’s block pickup limitations state that pickup is disabled when a multi-package basket includes a package that does not support collection.
Test each item separately, then together. Record which combination causes the change and ask your developer to trace any extension splitting the basket or controlling eligibility. Agree whether the whole order should be collectible before changing the rule.
If changes do not appear, check caching and custom checkout code
The shipping troubleshooting guidance notes that caching can prevent updated rates appearing and recommends excluding Cart, Checkout and My Account from caching. It also recommends comparing custom checkout pages with standard WooCommerce pages on a staging store.
Give your developer the reproducible basket and screenshots. Make that comparison on staging, with test payments and customer messages controlled. Establish whether the custom checkout changes the result before replacing components on the live shop. Our web development and integrations service covers this kind of work across the website and its connected systems.
Check what happens after the customer pays
A collection choice does not prove that the parcel is ready. WooCommerce’s legacy pickup email guidance explains that core shipping methods use the standard order flow and order confirmation email.
Review your actual messages. Tell customers where to collect, when collection is possible and whether they should wait for a separate ready notification. Have someone own that notification and the handover record.
Ask the team to process a test order. Can they identify it as collection, find the chosen location and avoid sending it into the courier workflow? Customer-facing checkout and staff handling need to tell the same story.
Verify the complete repair
Before signing off, run these checks on mobile and desktop:
- A simple physical-product basket offers the intended collection option once.
- The original failing basket now behaves as agreed.
- Addresses inside and outside any intended boundary receive the correct choices.
- Switching between delivery and collection updates the location and total correctly.
- A completed test order records the selected method and location.
- The confirmation and ready-to-collect process give customers usable instructions.
- Staff can hand over the test order without treating it as a delivery.
Keep the expected results and screenshots for future checkout updates. A working collection journey should be easy to repeat, from the first choice to the final handover.
If your WooCommerce collection journey is losing orders or creating avoidable calls, talk to BuzzBoost. Bring the failing basket, checkout type and screenshots so we can identify the fault and scope a focused repair.
Featured image: AI-generated editorial artwork, not a photograph of a real BuzzBoost office, client or result.


