# Local Pickup/Click &  Collect

The integration of Shopify Local Pickup and DotApparel enables merchants to offer Click & Collect as a delivery option while seamlessly syncing the orders with their ERP backend.

<figure><img src="/files/XwFPXnoO5lxi8ZxiBolB" alt="" width="563"><figcaption><p>Click &#x26; Collect will appear as a delivery option and the list of "Pickup locations" for the product(s) will be displayed at checkout.</p></figcaption></figure>

With the integration in place, merchants can easily set up multiple pickup locations in Shopify and offer pickup as an option during checkout.

<figure><img src="/files/ugFzgQblw0VEEmyCxuWg" alt=""><figcaption><p><strong>Shopify:</strong> This checkbox is enabled for each individual store in Shopify that allows for Click &#x26; Collect</p></figcaption></figure>

Behind the scenes, DotApparel integrates with Shopify to feed in-store stock into Shopify locations using the location mappings set up in the app. DotApparel also sends the `PickupStoreId` for each mapped location so that the ERP can process the orders as Click and Collect.

<figure><img src="/files/sNdwUERq7sFrXB9HkqvF" alt=""><figcaption><p><strong>DotApparel:</strong> For a &#x26; Collect order, you can Click see the <code>PickupStoreId</code> for the mapped Shopify location and in doing so, the ERP can process the orders as Click and Collect.</p></figcaption></figure>

## Step By Step Guide (High-Level)

<table><thead><tr><th width="462">Steps</th><th>Responsibility</th></tr></thead><tbody><tr><td>Check your current stock formula config for the ERP</td><td>Merchant</td></tr><tr><td>Update the ERP stock formula config (if applicable)</td><td>ERP</td></tr><tr><td><a href="https://help.shopify.com/en/manual/locations/setting-up-your-locations">Set up Shopify locations</a></td><td>Merchant</td></tr><tr><td><a href="https://help.shopify.com/en/manual/shipping/setting-up-and-managing-your-shipping/local-methods/local-pickup">Set up pickup for online orders</a> </td><td>Merchant</td></tr><tr><td><a href="https://help.shopify.com/en/manual/sell-in-person/shopify-pos/order-management/local-pickup-for-online-orders#locations-that-fulfill-pickup-orders-only">Setup locations that fulfill pickup orders only</a><br>(only applicable for the "combined" approach)</td><td>Merchant</td></tr><tr><td>Upgrade to checkout extensibility</td><td>Front-End</td></tr><tr><td>Configure locations and local pickup in DotApparel</td><td>DotApparel</td></tr><tr><td>Front-end implementation (ref: <a href="https://developers.dotapparel.com.au/core/frontend/shopify-local-pick-up">Developer Guide</a>)</td><td>Front-End</td></tr></tbody></table>

## ERP Stock Formula

There are 2 types of configurations:

* **Combined:** The ERP config for "Online Store" combines total available stock from all locations. It includes warehouse and in-store stock.
* **Separate:** The ERP config keep inventory levels for warehouse and in-store stock separate.<br>

  <figure><img src="/files/ry5Q7wCKKSsZL9fuFHOh" alt=""><figcaption><p>Regardless of a "combined" or "separate", every location will need to be set up individually as per screenshot above in DotApparel.</p></figcaption></figure>

## Choosing Your ERP Stock Formula: Combined vs. Separate

The merchant holds the decision to choose the most suitable approach. Upon reaching a decision, ERP will configure the rerouting logic and stock calculation for each specific location in the ERP. Before deciding, it is important to consider the limitations.

* **Limitations of the Combined Approach:**
  * Challenges in Offering Same Day Delivery, International Shipping, and Local Pickup Simultaneously
    * Reduced Control Over Product/Order Locations
  * Same Day Delivery Challenges
    * Unpredictable Bouncing to Different Stores
    * Lack of Control Over Fulfillment Processes
  * Common Issue with Combined Stock Formula
    * Inability to Exclude Ship From Store (SFS) Locations
    * Difficulty in Supporting International Orders

If you are not offering Same Day Delivery, International Shipping, and Local Pickup simultaneously then it is fine to proceed with the **Combined** approach.

## **Do you need to update your** ERP **stock formula from "combined" to "separate"?**

**ERP support will need to action this. Here's a canned template we prepared earlier:**

> Hi ERP Team,
>
> We're requesting an update to our stock formula so that the "Online Store" no longer combines the total stock for warehouse and store locations. This update will support our move towards Native Locations in Shopify.
>
> To clarify, please update the stock formula for "Online Store" so that it only includes warehouse stock.
>
> To ensure smooth implementation, let's coordinate the action on an agreed-upon day and time in collaboration with the DotApparel team. Can you confirm your availability for this task?
>
> Once confirmed, we'll schedule the adjustment, ensuring all parties are ready for the necessary changes.
>
> Regards,
>
> `Merchant Name`

## **Do you need to update your** ERP **stock formula for "combined" location?**

**ERP support will need to action this. A common scenario is when a merchant needs to add or remove a physical store from the "combined" stock pool. Here's a canned template we prepared earlier:**

> Hi ERP Team,
>
> We would like to request an update to our stock formula to remove the Chadstone store from the "Online Store" pool, as this location is no longer in operation.
>
> To clarify, please adjust the formula so that it includes the warehouse and all other retail stores except the Chadstone store.
>
> Kindly let us know once this has been actioned.
>
> Regards,
>
> `Merchant Name`

## Configuring Locations & Local Pickup in Shopify

#### **Here Are The Steps If Your AP21 Inventory Is "Separate"**

Go to Shopify and enter all the shipping origins. It should include the warehouse **and** the stores that are available for local pick-up.

<figure><img src="/files/yXE5rxdZuu1ztHVR02oy" alt=""><figcaption><p><strong>Shopify:</strong> Settings > Shipping and delivery > General shipping rates > Shipping origins</p></figcaption></figure>

For each location that can fulfil online orders, make sure to tick this checkbox.

<figure><img src="/files/qmNn3QQn0RUnTKTpCip6" alt=""><figcaption><p><strong>Shopify:</strong> Settings > Locations > Fulfillment details</p></figcaption></figure>

Ensure that this checkbox is ticked for **only** the individual store(s) that allow for Click & Collect.

<figure><img src="/files/ugFzgQblw0VEEmyCxuWg" alt=""><figcaption><p><strong>Shopify:</strong> Settings > Shipping and delivery > Local pick up for <code>[store name]</code></p></figcaption></figure>

Double-check the local pickup settings in Shopify.

<figure><img src="/files/L7DWTGjavBodoE8O0TBL" alt=""><figcaption><p><strong>Shopify:</strong> Settings > Shipping and delivery > Local pickup > Click "Manage"</p></figcaption></figure>

#### **Here Are The Steps If Your ERP Inventory Is "Combined"**

We recommend using the "Locations that fulfill pickup orders only" option for local pickup orders in Shopify. This option ensures that the inventory at a location is only available for pickup orders, and prevents delivery orders from being allocated to this location. Always check that location is enabled for fulfil online orders from this location.

<figure><img src="/files/JhOWny2EjeznlzewAEiJ" alt=""><figcaption><p><strong>Shopify:</strong> Settings > Shipping and delivyer . Shipping origins</p></figcaption></figure>

## Configuring Locations & Local Pickup in DotApparel

### Setting up location mappings to upload in-store inventory to Shopify locations

Location mappings allow DotApparel to link ERP Stores to the corresponding locations in Shopify. This enables DotApparel to sync inventory levels from AP21 to Shopify locations.

1. Refresh locations to download all locations from Shopify and all stores from the ERP.<br>

   <figure><img src="/files/WqAt7E21Z5RfHYgotPs1" alt=""><figcaption></figcaption></figure>
2. Add the ERP store to a Shopify location.<br>

   <figure><img src="/files/8ZJrZnxb83PshmLYCOtA" alt="" width="375"><figcaption></figcaption></figure>

Once Shopify is set up, the next step is up for the DotApparel team to setup the locations in the *DotApparel Core* app (this involves configuring store mappings one-by-one).

### Configuring Pickup Store mappings to send Click and Collect orders to ERP

`Pickup Store ID` mappings enable DotApparel to pass a `PickupStoreID` to the ERP for Local Pickup orders. We can easily map a Pickup Store ID to a Shopify location like the shipping option patterns for shipping.

1. Click Add new shipping method button in the Settings > Shipping Methods section<br>

   <figure><img src="/files/JyZrt1piniULicv4AqzR" alt=""><figcaption></figcaption></figure>
2. Enter the required fields in the form\
   \
   ![:warning:](https://pf-emoji-service--cdn.us-east-1.prod.public.atl-paas.net/atlassian/warning_32.png) **Delivery method type**: Select "Local Pickup" from the dropdown list.\
   ![:info:](https://pf-emoji-service--cdn.us-east-1.prod.public.atl-paas.net/atlassian/info_32.png) **Pickup Store ID:** Can be found from Retail API /Stores endpoint.\
   ![:info:](https://pf-emoji-service--cdn.us-east-1.prod.public.atl-paas.net/atlassian/info_32.png) **Shopify title pattern:** This should be the location name in Shopify. The preview name can be found in Shopify Settings > Shipping and Delivery> Local Pickup section. \ <br>

   <figure><img src="/files/vhXu3kCu2DEzOLD99vnX" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.dotapparel.com.au/core/modules/local-pickup-click-and-collect.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
