Local Delivery: Overview
Set up local delivery to offer scheduling for deliveries directly to your customers. Configure delivery zones by postal code or radius, availability schedules, preparation times, product restrictions, and all delivery-related features for each location to maximize flexibility.
Table of Contents
- How Delivery Location Configuration Works
- Prerequisites: Before You Begin
- Quick Start: Enable Delivery for Locations
- Delivery Configuration Options
- Testing and Verification
How Delivery Location Configuration Works
Configure Locations (Default)
Most users will see "Configure Locations" in Bird Settings. This is the current default and recommended approach where you:
- Configure each location individually
- Set location-specific schedules, preparation times, and blockout dates
- Customize product availability, order validation, and notifications per location
- Have maximum flexibility to adapt settings to each location's needs
Navigation: Bird Settings > Configure Locations > [Select Location] > [Enable Local Delivery] > Edit Settings (beside "Local Delivery is Enabled" text)
Same Schedule for All Locations (Legacy Mode)
If you don't see "Configure Locations" and instead see "Pickup & Delivery" in Bird Settings, you're using the legacy "I have same schedule for all store locations" mode. This mode:
- Applies the same schedule to all locations
- Is being sunset and is only available to grandfathered users
- We recommend switching to "I have different schedule for different store locations" to use Configure Locations

Navigation: Bird Settings > Pickup & Delivery > [Enable Local Delivery] > Edit Settings (beside "Local Delivery is Enabled" text) (legacy mode only)
Important: Once you switch from legacy mode to location-specific mode, you cannot switch back. The legacy mode is being sunset.
Prerequisites: Before You Begin
Complete these critical steps before configuring delivery locations. Missing any of these will prevent delivery from working correctly.
1. Enable Widget in Your Theme
The widget must be enabled for customers to see delivery options on your cart page. See this article for complete widget placement instructions.
2. Assign Inventory to Locations
Products must have inventory assigned to delivery locations in Shopify.
How it works:
- Bird Pickup & Delivery does not manage inventory
- All inventory is handled through Shopify's native inventory system
- Products without inventory at a location will lead to checkout issues
Steps to assign inventory:
- Go to Shopify Admin > Products and assign inventory to the respective product
- For virtual locations or to map inventory from different warehouses, go to Bird Settings > Inventory
Optional Inventory Settings in Bird Settings > Inventory:
- Show only locations that have available inventory: Hide locations without stock in cart widget
- {{Inventory Mapping}}: Map Bird locations to Shopify locations/warehouses for virtual locations or different inventory sources.

3. Mark Products as Physical
Products must be marked as physical in Shopify for the delivery address form to appear.
Why this is required:
- Virtual/digital products don't require delivery address
- Customers won't see delivery address field if products are marked as digital
- Delivery options will not appear for non-physical products
Steps to mark products as physical:
- Go to Shopify Admin > Products
- Select each product
- Under Inventory section, ensure "This is a physical product" is checked
- Click Save
📖 Detailed Guide: How to Mark Products as Physical Products in Shopify
Quick Start: Enable Delivery for Locations
Get delivery running in 3 steps using Configure Locations (default mode).
Step 1: Access Configure Locations
- Go to Bird Settings
- Look for Configure Locations under General
- If you see "Configure Locations": You're using the default location-specific mode (proceed with steps below)
- If you don't see "Configure Locations" and see "Pickup & Delivery" instead: You're using legacy mode. See Legacy Mode section above.

Step 2: Enable Local Delivery for a Location
- Click Configure Locations
- Review the list of all your store locations
- Click on the location where you want to enable delivery
- In the Basic Settings section, find Enable Local Delivery option
- Toggle Enable Local Delivery checkbox to turn on

Step 3: Configure Basic Settings
- After enabling delivery for a location, scroll down on the same page
- Find the Edit Settings button for Local Delivery (its beside "Local Delivery is Enabled" text)
- Click Edit Settings
- Configure at minimum:
- Availability schedule (when customers can receive deliveries)
- Time slot type (date only, date & time, etc.)
- Local Delivery Pincodes (required - enter postal codes eligible for delivery) OR Local delivery radius (if using radius-based validation)
- Click Save
Note: The Local Delivery Pincodes section appears after you configure blockout dates. You'll see the matching type (e.g., "Partial postal code match") which is configured in Bird Settings > Validations > Delivery Validation Settings.

You've enabled delivery for this location! Repeat these steps for each location, then configure the detailed settings using the guides below.
Delivery Configuration Options
Configure all delivery features per location to match your business needs. Each feature has a detailed guide.
1. Configure Delivery Availability
Control when customers can schedule delivery orders for this location.
What it does:
- Sets operating hours and time slots for delivery at this location
- Defines how customers select dates/times (date only, specific time, time range, no date/time)
- Limits maximum orders per day or per time slot for this location
- Enables/disables specific weekdays for this location
Quick Setup:
- Go to Bird Settings > Configure Locations > [Select Location] > Edit Settings
- Scroll to Configure Delivery Availability
- Choose your schedule type and date/time options
- Add time slots if using "Date & Time" or "Date & Time Range" options
- Set order limits (optional)
- Click Save
📖 Detailed Guide: Local Delivery: Configure Availability - Complete availability configuration tutorial
2. Delivery Preparation Time
Set minimum time required before customers can receive delivery orders from this location.
What it does:
- Prevents customers from selecting delivery slots too soon for this location
- Supports same-day, next-day, or custom lead times per location
- Optional cut-off time for different lead times before/after deadline
Quick Setup:
- Go to Bird Settings > Configure Locations > [Select Location] > Edit Settings
- Scroll to Preparation Time
- Toggle Enable Preparation Time to Enabled
- Choose Same for All Days or Customize by Day
- Enter lead time (e.g., 4 hours, 1 day)
- Optionally set cut-off time and separate lead times
- Click Save
📖 Detailed Guide: Local Delivery: Preparation Time - Complete preparation time and cut-off configuration
3. Delivery Blockout Dates
Block specific dates or time periods from the delivery calendar for this location.
What it does:
- Prevents customers from selecting holidays or closed days for this location
- Blocks entire days or specific time ranges per location
- Sets maximum advance booking window for this location
Quick Setup:
- Go to Bird Settings > Configure Locations > [Select Location] > Edit Settings
- Scroll to Blockout Dates
- Choose Single Date or Date Range tab
- Select date(s) from calendar
- Optionally set start/end times for time-specific blocks
- Click Add to confirm
- Optionally set Maximum Available Days (e.g., 30 days)
- Click Save
📖 Detailed Guide: Local Delivery: Blockout Dates - Complete blockout dates tutorial
4. Local Delivery Pincodes
Restrict delivery to specific postal codes for this location. This section appears after you configure blockout dates.
What it does:
- Restricts delivery to only the postal codes you specify for this location
- Uses the matching type configured in validation settings (exact match, partial match, or advanced match)
- Required: You must enter at least one postal code to enable delivery for this location
- Links to configured delivery rates for the entered postal codes
How it works:
- The matching type (e.g., "Partial postal code match") is configured in Bird Settings > Validations > Delivery Validation Settings
- You enter the actual postal codes in this location's settings
- The system validates customer postal codes against your list using the matching type you selected
Quick Setup:
- Go to Bird Settings > Configure Locations > [Select Location] > Edit Settings
- Scroll to Local Delivery Pincodes (appears after Blockout Dates section)
- Review the matching type shown (e.g., "Partial postal code match") - this reflects your validation settings
- In the Zip / Postal codes input field, enter comma-separated postal codes
- Example:
11001,11002,11003,11004 - You can use wildcards if your validation mode supports it (e.g.,
11*matches all codes starting with 11)
- Click Save
Important Notes:
- This field is required - you must enter at least one postal code to enable delivery
- The matching type can be changed in Bird Settings > Validations > Delivery Validation Settings
- If you see "X rates configured for above postal codes" link, click it to view or edit delivery rates for these postal codes
- For radius-based validation (UAE, Qatar, Hong Kong), use the Local delivery radius field instead of postal codes
📖 Detailed Guides:
5. Order Value Validation
Set minimum order value required for delivery orders at this location.
What it does:
- Requires customers to meet a minimum cart value before checkout for this location
- Applies location-specific minimum order requirements
- Currency is inferred from Shopify's default currency
Quick Setup:
- Go to Bird Settings > Configure Locations > [Select Location] > Edit Settings
- Scroll to Order Value Validation
- Optionally enter Minimum Order Value (e.g., 50 for $50 USD if Shopify currency is USD)
- Click Save

Note: You can set different minimum order values for different locations.
6. Product Availability for Delivery
Control which products are available for delivery at this location using product tags.
What it does:
- Controls whether settings apply to all products or specific products for this location
- Restricts delivery to specific products using Shopify product tags
- Includes only tagged products OR excludes tagged products for this location
- Works alongside Shopify inventory management
Quick Setup:
- Go to Bird Settings > Configure Locations > [Select Location] > Edit Settings
- Scroll to Product Availability
- Choose All Products, Include Products Tagged With, or Exclude Products Tagged With
- If using tags, enter product tags in the search/select field
- Click Save
📖 Detailed Guide: Local Delivery: Product Availability - Product tag configuration for delivery
7. Configure Delivery Rates
Set up pricing for delivery orders at this location.
What it does:
- Allows you to set free or paid delivery rates per location
- Can configure rates based on conditions (price, day, weight, SKU, rush delivery, time, date)
- Supports postal code-based zones with different rates per zone
- Supports radius-based delivery zones with distance-based pricing
Quick Setup:
- Go to Bird App > Rates
- Click Local Delivery
- Choose I have same rates for all my locations or I have different rates for different store locations
- Configure your delivery rates with conditions
- Save rate configuration
📖 Detailed Guides:
- How to Configure Delivery Rates - Complete delivery rate setup with flexible pricing conditions
- Set Up Postal Code-Based Local Delivery Rates - Create multiple delivery zones with different rates
- Configure Local Delivery Rates based on Radius - Address-based delivery zones with Google Maps
Note: After configuring postal codes in the Local Delivery Pincodes section, you can click the "X rates configured for above postal codes" link to view or configure delivery rates for those postal codes.
8. Delivery Validation Settings
Configure validation rules for delivery orders, including postal code matching type.
Available Settings:
- Distance Validation Mode: Choose how postal codes are matched (Exact, Partial, or Advanced) - this determines the matching type shown in Local Delivery Pincodes section
- Revalidate delivery location postal code in checkout: Validates postal code matches between cart and checkout (delivery-specific)
- Validate Selections: Makes date/time selection mandatory before checkout (applies to all fulfillment methods)
- Enable selections expiry: Invalidates selections after specified time (1-24 hours, applies to all fulfillment methods)
Quick Setup:
- Go to Bird Settings > Validations
- Under Delivery Validation Settings, choose Distance Validation Mode:
- Exact: Postal codes must match exactly
- Partial: Supports wildcards (e.g.,
11*matches all codes starting with 11) - Advanced: More flexible matching patterns
- Configure other validation settings as needed
- Click Save
Important: The Distance Validation Mode you select here determines the matching type displayed in the Local Delivery Pincodes section for each location. For example, if you select "Partial" here, locations will show "Partial postal code match" in their pincode configuration section.
Note: "Validate Selections" and "Enable selections expiry" apply to all fulfillment methods (pickup, delivery, shipping). "Revalidate delivery location postal code" and "Distance Validation Mode" are delivery-specific.
📖 Detailed Guides:
- Validate and Expire Stale Delivery/Pickup Time Selections - Selections expiry configuration
- How to Make Date and Time Selection Mandatory - Validate selections setup
Testing and Verification
Verify your delivery configuration is working correctly before going live.
Use Widget Preview
Widget Preview allows you to test your configuration without placing actual orders.
Steps:
- In Bird Settings > Widget Design
- See Widget Preview on the right
- Select Delivery method in the preview
- Simulate any date and time via Change Current Date and Time option
- Verify:
- Postal code validation works (enter valid/invalid codes)
- Time slots show correctly (if configured)
- Blocked dates are grayed out
- Preparation time is respected (earliest available date/time)
Note: Widget Preview simulates the customer experience. Use it to verify your settings before customers place orders.

Place a Test Order
Complete end-to-end verification by placing a test order.
Steps:
- Go to your store's cart page
- Add products that have inventory at your delivery location
- Select Delivery method in the Bird widget
- Enter a valid postal code (if using postal code validation)
- Select date and time (if configured)
- Complete checkout
- Verify order appears in Shopify Admin > Orders with correct delivery details
📖 Detailed Guide: Verify Your Widget Setup: Place a Test Order - Complete test order verification steps
Updated on: 01/18/2026
Thank you!
