Add Delivery or Pickup Options in WooCommerce

By Sahil Multani 7 min Read

Table of Contents

    Quick answer: Offer both by giving customers a delivery method and a pickup method at checkout. On the block checkout, add a delivery method in a shipping zone and enable Local Pickup under Settings > Shipping > Local pickup, and shoppers toggle Shipping or Pickup. On the classic checkout, add Local Pickup plus a delivery method such as Flat Rate to the same zone. Make pickup free by leaving its cost blank. Use a plugin for pickup scheduling or multiple locations.

    Key Takeaways

    • Offering both delivery and pickup lets customers choose, which lifts conversion, saves you postage on local orders, and serves both nearby and distant shoppers.
    • Know the difference: shipping sends by courier, local pickup lets customers collect from you, and local delivery (no longer a dedicated WooCommerce method) is set up as a Flat Rate or Free Shipping method on a local zone.
    • WooCommerce has two pickup systems: block-based Local Pickup under Settings > Shipping > Local pickup for the Checkout block, and legacy per-zone Local Pickup for the classic checkout, so check which your checkout uses first.
    • On the block checkout, add a delivery method to a zone and enable Local Pickup separately, and shoppers toggle between Shipping and Pickup with the address only requested for delivery.
    • On the classic checkout, add both Local Pickup and a delivery method like Flat Rate to the same zone so they appear as selectable choices.
    • Make pickup free by leaving the legacy Cost field blank or 0; the block method is free unless you add a pickup price.
    • Keep both options on the same zone, never run block and legacy pickup at once, and the Local Pickup for WooCommerce plugin adds timeslots, multiple locations, and ready-for-collection notifications when you outgrow the native setup.

    Many stores want to give customers a choice: have it delivered, or collect it in person. WooCommerce supports both at once. The setup depends on which checkout you run, but the principle is the same: present one delivery option and one pickup option, and let the buyer pick.


    Why offer both delivery and pickup

    Giving customers the choice helps in several ways:

    • Higher conversion. Some buyers want it fast and free by collecting; others want it delivered. Offering both removes a reason to abandon.
    • Lower shipping cost. Local customers who pick up save you the postage and packaging.
    • Wider reach. Delivery serves customers outside your area while pickup serves those nearby.
    • Flexibility. Shoppers pick what suits their timing and budget on the day.

    Delivery, pickup, and shipping: what each means

    The three terms get mixed up, so here is what each one does in WooCommerce:

    • Shipping sends the order by courier to the customer’s address (Flat Rate, Free Shipping, or a live carrier).
    • Local pickup lets the customer collect from your location, with no delivery address needed.
    • Local delivery means you deliver nearby yourself. WooCommerce no longer ships a dedicated Local Delivery method, so you implement it as a Flat Rate or Free Shipping method restricted to a local zone, or with a plugin.

    Which pickup system you have

    As with all pickup setups, WooCommerce has two systems. Block-based Local Pickup is set under WooCommerce > Settings > Shipping > Local pickup and works with the Checkout block. Legacy Local Pickup is a zone method for the classic checkout. Check your Checkout page to see which one applies, then follow the matching method below.

    Method 1: Delivery plus pickup on the block checkout

    On the Checkout block, you set up delivery in a zone and pickup in its own tab.

    1. In a shipping zone that covers your customers, add a delivery method such as Flat Rate or Free Shipping and set its cost.
    2. Go to WooCommerce > Settings > Shipping > Local pickup, tick Enable local pickup, and add a location.
    3. Save.

    At checkout, the block shows a Shipping and a Pickup selector. Choosing Shipping offers your delivery method; choosing Pickup offers the location. The shipping address is only requested for delivery.

    WooCommerce block checkout with Shipping and Pickup toggle

    Method 2: Delivery plus pickup on the classic checkout

    On the classic checkout, both options live as methods on the same zone.

    1. Go to WooCommerce > Settings > Shipping > Shipping zones and open your zone.
    2. Click Add shipping method and add Local Pickup. Set its Cost blank or 0 for free pickup.
    3. Add a delivery method to the same zone: Flat Rate for a fixed charge, or Free Shipping over a threshold.
    4. Save.
    WooCommerce zone showing a delivery method and Local Pickup together

    Both options now appear at checkout as selectable choices. If pickup does not show, check zone ordering (smallest area first) and that the zone covers the customer.

    Make pickup free

    Pickup usually carries no charge. In the legacy method, set the Cost field to blank or 0. The block pickup is free unless you tick “Add a price for customers who choose local pickup.”

    Going further with a plugin

    The native setup gives one pickup point and basic delivery, which covers a simple store. When you outgrow it, the Local Pickup for WooCommerce plugin adds the pieces customers expect from modern click and collect: local pickup time slots, multiple pickup locations to choose from, opening hours, and ready-for-collection notifications, so click and collectruns without manual follow-up.

    Local Pickup For WooCommerce

    Let your customers shop online and later pick up their purchased items from your store with Local Pickup Plugin.

    14-day, no-questions-asked money-back guarantee.

    Local Pickup Plugin Main Banner

    Managing pickup and delivery orders

    Once both options are live, you need to tell them apart and keep customers informed:

    • Identify the choice on the order. The selected method shows on the order in WooCommerce > Orders, so staff can see at a glance whether to pack for dispatch or set aside for collection.
    • Tell pickup customers when it is ready. The default order emails confirm the order, but not “ready to collect.” Add a custom status or a notification so buyers know when to come in. A click-and-collect plugin automates this.
    • Set expectations at checkout. Note your pickup address and hours near the pickup option so customers know where and when to collect, which cuts support questions.

    Best practices

    A few things keep both options working smoothly:

    • Keep delivery and pickup on the same zone so both appear together.
    • Do not run block and legacy pickup at the same time.
    • Set pickup cost to free unless you genuinely charge for it.
    • Test checkout to confirm both options show and the address is only asked for delivery.

    Conclusion

    Adding delivery or pickup options in WooCommerce comes down to presenting both at checkout: a delivery method plus Local Pickup, configured in the system your checkout uses. Make pickup free and keep both on one zone. When you need date and time slots, multiple locations, or ready-for-collection notifications, the Local Pickup for WooCommerce plugin adds them on top of the native setup.

    Local Pickup For WooCommerce

    Let your customers shop online and later pick up their purchased items from your store with Local Pickup Plugin.

    14-day, no-questions-asked money-back guarantee.

    Local Pickup Plugin Main Banner

    Frequently asked questions

    Can I offer both delivery and pickup at the same time in WooCommerce?

    Yes. Add a delivery method and a pickup method, and customers choose one at checkout.

    Does WooCommerce have local pickup built in?

    Yes, in two forms: block-based Local Pickup under Settings > Shipping, and the legacy per-zone Local Pickup method.

    How do I make local pickup free?

    Leave the legacy method’s Cost field blank or 0. The block method is free unless you add a pickup price.

    What is the difference between local pickup and local delivery?

    Pickup means the customer collects from you. Local delivery means you deliver nearby, set up as a Flat Rate method on a local zone or via a plugin.

    Why does pickup not appear next to delivery?

    Usually zone ordering or coverage, or that the cart has only virtual products. Order zones smallest area first and confirm the zone covers the customer.

    Author Image

    Sahil Multani

    Sahil is a skilled WordPress Engineer with over 5 years of experience in crafting robust WordPress and WooCommerce solutions, combining development expertise with a focus on seamless user experiences.

    📍Offer Convenient Store Pickup to Increase Sales

    Try the plugin 100% risk free!

    Local Pickup Plugin Main Banner
    Blog Sidebar Free Guide Image
    0 Shares facebook twitter linkedin
    Author Pic

    Written by Sahil Multani

    Sahil is a skilled WordPress Engineer with over 5 years of experience in crafting robust WordPress and WooCommerce solutions, combining development expertise with a focus on seamless user experiences.