Local Pickup

Local Pickup is a WooCommerce core shipping method that allows the customer to pick up an order themselves. On this page, you’ll learn how to: 

  • Add Local Pickup as a shipping method.
  • Configure Local Pickup.
This document is referring to the legacy WooCommerce local pickup options. If you’re using a WooCommerce Blocks-based checkout, you can find configuration instructions for the local pickup block here.

Local Pickup: Setup and Configuration

↑ Back to top

Setting up Local Pickup starts by adding it as a shipping method to a shipping zone. Follow these steps to add the Local Pickup option:

This shipping method has to be added to a Shipping zone. If you haven’t configured your Shipping zones yet, please check our Setting up Shipping Zones guide before proceeding.
  1. Go to WooCommerce > Settings > Shipping > Shipping zones.

2. Click the Edit button on the shipping zone where you want to offer this method.

3. Inside the shipping zone, click the Add shipping method button.

4. Then, select the shipping method and click the Continue button.

5. Enter a Name that displays to customers in the cart and checkout pages.

6. Select the Tax Status to determine whether tax is applied to the Local Pickup Cost.

  • By default, when selecting local pickup, the store address will be used to calculate taxes regardless of the customer’s address.

8. (Optional) Enter the Cost for this option. This is applied to the entire cart.

9. Click the Create button to finish.

Local Pickup: Customer view

↑ Back to top

Customers can select “local pickup”  as an option in the cart/checkout if they reside in the shipping zone that includes it. This is what customers see in the cart and checkout: 

Cart view:

View of local pickup option in cart

Checkout view

View of local pickup option at checkout

Note: If customers aren’t seeing the local pickup option but they reside in the shipping zone that includes local pickup, it may be an issue with the order of shipping zones. As explained in Setting up Shipping Zones, zones need to be sorted from smallest geographical area to largest. Make sure that the shipping zone that includes local pickup is listed above any other shipping zones that overlap (ex. If you offer shipping to the state of California but offer local pickup specifically to the postal code 90201, then the shipping zone for local pickup needs to be above the one for California state).

Local Pickup: Advanced Settings/Customization

↑ Back to top
Note: We are unable to provide support for customizations under our Support Policy.

Custom emails for local pickup

↑ Back to top
Note: Shipping Address is not displayed on the admin order emails when Local Pickup is used as the shipping method.

Customers receive the same order confirmation email whether they select local pickup or any other shipping option since all core shipping options use the standard order flow. Use this guide to create custom emails for local pickup, if you’d like to send a separate email for local pickup orders: How to Add a Custom WooCommerce Email.

Disable local taxes when using local pickup

Note: Local Pickup calculates taxes based on your store’s location (address) by default, and not the customer’s address. Follow these instructions to use your standard tax configuration instead:

To disable local tax calculations for Local Pickup, add this snippet at the end of your theme functions.php file:

add_filter( 'woocommerce_apply_base_tax_for_local_pickup', '__return_false' );

Regular taxes will be used when local pickup is selected, instead of store-location-based taxes.

Note: We are unable to provide support for customizations under our Support Policy.

Changing the location for local taxes

To charge local taxes based on postcode and city for Local Pickup, you need to define the shop’s base city and post code using this code:

add_filter( 'woocommerce_countries_base_postcode', create_function( '', 'return "80903";' ) );
add_filter( 'woocommerce_countries_base_city', create_function( '', 'return "COLORADO SPRINGS";' ) );
view raw functions.php hosted with ❤ by GitHub

Questions and Support

↑ Back to top

Do you still have questions and need assistance? 

This documentation is about the free, core WooCommerce plugin for which support is provided in our community forums on WordPress.org. Searching there you’ll often find that your question has been asked and answered before.

If you haven’t created a WordPress.org account to use the forums, here’s how.

  • If you’re looking to extend the core functionality shown here, we recommend reviewing available extensions in the Woo Marketplace.
  • Need ongoing advanced support, or a customization built for WooCommerce? Hire a WooExpert agency.
  • Are you a developer building your own WooCommerce integration or extension? Check our Developer Resources.

If you weren’t able to find the information you need, please use the feedback thumbs below to let us know! 🙏