Pickup availability
If you have a shop, a studio or a warehouse counter, the product page can tell a shopper whether the size they’ve picked is collectable there right now. It’s the Pickup availability block, and it has no settings — everything comes from Shopify.
-
Add the location in admin under Settings → Locations, with its address.
-
Turn on local pickup under Settings → Shipping and delivery → Local pickup, for each location that offers it. Set the expected pickup time there — “Usually ready in 2 hours”, “Usually ready in 1 to 2 days”.
-
Add the block to the product page’s buy column, under the variant picker.
That’s it. There is nothing to configure in the theme, which is the point — the block reads variant.store_availabilities and filters to locations where pickup is enabled.
What it shows
Section titled “What it shows”| State | Output |
|---|---|
| Available at the first pickup location | Pickup available — Shoreditch, usually ready in 2 hours, in the accent colour |
| Not available there | Pickup unavailable at Shoreditch, dimmed |
| More locations exist | A second dim line: +2 more locations |
| No location has pickup enabled | Nothing at all |
A store with no pickup never renders the block, so it’s safe to leave in the default product template.
It follows the variant
Section titled “It follows the variant”Availability is per variant per location, and only Shopify knows it. So rather than guessing, the block re-fetches itself through the Section Rendering API when the shopper changes variant:
/products/tactical-shell?variant=40123456789§ion_id=template--…__productThe fresh markup for the pickup block is lifted out of the response and swapped in. If that request fails the existing text is left alone rather than being blanked — stale is better than empty here, and the next variant change tries again.
What it isn’t
Section titled “What it isn’t”There’s no location picker, no distance sorting, no “check another store” dialog. The block names the first pickup-enabled location and counts the rest.
That’s a deliberate scope limit. A full store locator with per-location stock is an app, and getting it wrong — telling someone a jacket is waiting for them when it isn’t — costs more trust than not offering the information. If you have many locations and pickup is a real part of how you sell, install a locator app and leave this block off.
Locale keys
Section titled “Locale keys”Under products: pickup_available (takes location and time), pickup_unavailable (takes location), pickup_more (takes count).
Related
Section titled “Related”Pickup is also a Shopify Theme Store requirement for product pages, which is part of why it ships as a default block in the product template rather than something you have to find and add.