The Buy-Online Pickup In-Store app enables your customers to opt for Store Pickup with many features that allow you to personalize the experience. This app utilizes login credentials, locations and inventory settings from iPaaS.com and completed transactions are downloaded and made available for any backend. iPaaS.com is an integration platform providing managed integrations between BigCommerce and all certified applications.
This article describes the user experience for Buy-Online Store Pickup by iPaaS.com In the BigCommerce App Marketplace.
See other documents for BigCommerce Buy-Online Store Pickup App by iPaaS.com
Below is an overview of the features coming in Version 2
Targeted release date: 07/31/2020
Key Feature Added:
- Enable Curbside Pickup
- Modify Checkout to enabled Scheduled Pickups
- Modify Checkout to allow Shipments, Store Pickups from Multiple Locations, Line Item can be InStore or Curbside
- Enable Store Owner to specify individual product settings for Availability. This permits items to be set as Shipment Only, Pickup InStore Only, Curbside Only, availability in combinations.
Developer Details:
The following changes should be made to expand the BOPIS feature set to include support for Curbside Pickup.
Configurations
- Add this description to Configuration “Enable Buy-Online Pickup In-Store”
Description: When this option is enabled, products can be enabled for Available for In-Store Pickup or Curbside Pickup. You may also limit items to pickup only. - Add an application Configuration for “Enable Curbside Pickup”
Description: When this option is enabled, shopping carts with items marked for curbside pickup will prompt users for their Car: Make / Model / Color - Add an application Configuration for “Allow Pickup In-Store and Curbside on the same transaction”
Description: By default, the customer will be prompted to choose to Pickup In-Store or at Curbside at checkout for all line items designated as Pickup. When this option is enabled, the customer will have the option of choosing to pickup In-Store or Curbside when adding a Pickup line item. - Add an application Configuration for “ASAP Pickup timeframe”. This should be 50 characters or fewer.
Description: Please enter the default timeframe text that will be displayed at checkout. This text will be displayed as a comparison when Pickup Scheduler is enabled.
Examples: “Approximately 30 minutes” or “~1 hour (Garden ~2 hours)”. - Add an application Configuration for “Enable Scheduler”.
Description: When this option is enabled, customers will be able to specify date and time for future Pickups.
- Add an application Configuration for “Notify by SMS (Coming Soon)”.
Description: When this option is enabled, notification will be sent to customers by SMS upon opting for this communication method. * Requires iPaaS.com integrated DotDigital Account.
Minor Text changes to all configurations
Change all references to “Pickup In Store” or “Buy-Online Pickup In Store” to “Store Pickup”
Product Custom Fields
Current feature set enables the user to set a custom field value to true representing “Available for Pickup”. This feature needs to be adjusted as follows:
- RR_BOPIS_Shipment: Available for Shipment
- RR_BOPIS_InStorePickup: Available for In-Store Pickup
- RR_BOPIS_CurbsidePickup: Available for Curbside Pickup
In the conditions that all custom fields are either missing or set to false, then the app should treat the product as Available for Shipment = true.
Product Detail Page:
When products are flagged as Available for In-Store Pickup or Available for Curbside Pickup, apply the same BOPIS feature similarly to how we are currently, except track on the line item the type of pickup it is (inside or curbside). See Order Data Formats section below
Rename button “Pickup” to “Store Pickup Inside”. When products are NOT flagged as Available for In-Store Pickup, the Store Pickup Inside button should be disabled with an icon to indicate it is unavailable.
Add a button for “Store Pickup Curbside”. When Curbside Pickup is not enabled, do not display this button. When products are NOT flagged as Available for Curbside Pickup, the Store Pickup Curbside button should be disabled with an icon to indicate it is unavailable.
When products are NOT flagged as Available for Shipment, the Shipment button should be disabled with an icon to indicate it is unavailable.
Location Search
When adding an item from pickup location search, change the heading “Select Store” to “Store Pickup”
When Configuration “Enable Curbside Pickup” is NOT enabled:
Show a single button with display “In Store”
When Configuration “Enable Curbside Pickup” is enabled, display two buttons under this same heading:
Left Column Button Display “Inside”
Right Column Button Display: “Curbside”
Please make this change.
During add to cart, apply these options:
When Configuration “Allow Shipment and Pickup In-Store on the same transaction” is NOT enabled, then the first pickup type added to the cart (Shipment or Pickup) determines future handling.
Options to add item to the cart using the other method should be disabled with hover text “Only {Shipment} or {Pickup} can be selected for all pickup items in cart. Click here to change all items to {Pickup} or {Shipment}”. If Curbside is enabled, then prompt for which location {inside} or {curbside}. Use bulk line item change methods to update accordingly.
When Configuration “Allow Pickup In-Store and Curbside on the same transaction” is NOT enabled, then the first pickup location added to the cart (Inside or Curbside) determines future handling.
Options to add item to the cart using the other method should be disabled with hover text “Only one location can be selected for all pickup items in cart. Click here to change all pickup items to {Inside} or {Curbside}” Use bulk line item change methods to update accordingly.
Use this matrix chart when deciding scenario handlers:
Configuration Options | Exist on Transaction Together | ||
| Shipment | Pickup Inside | Pickup Curbside |
BOPIS [DISABLED] | Any | None | None |
BOPIS [Enabled] |
| ||
Allow Shipment and Pickup on same transaction [DISABLED] |
| ||
Curbside [DISABLED] | Restricted | Restricted | None |
Curbside [Enabled] |
| ||
Allow Inside and Curbside on same transaction [DISABLED] | Restricted | Restricted | Restricted |
Allow Inside and Curbside on same transaction [ENABLED] | Restricted | Any | Any |
|
| ||
Allow Shipment and Pickup on same transaction [ENABLED] |
| ||
Curbside [DISABLED] | Any | Any | None |
Curbside [Enabled] |
| ||
Allow Inside and Curbside on same transaction [DISABLED] | Any | Restricted | Restricted |
Allow Inside and Curbside on same transaction [ENABLED] | Any | Any | Any |
When Configuration Options and Product Settings are in conflict, the greater restriction shall be applied.
For instance, if an item is only available for
Bulk Line Item Change
Add a feature to change items to a specific type:
- All Line Items to Shipment
- All Line Items to Pickup Inside
- All Line Items to Pickup Curbside
- Pickup Inside Line Items to Pickup Curbside
- Pickup Curbside Line items to Pickup Inside
Cart
Customer should be able to change each line items Shipment, Pickup Inside or Pickup Curbside option according to the enabled Configuration Settings and Product Settings.
Checkout
When line items are designated for Pickup, Show options for Pickup Schedule. Display ASAP ({Insert ASAP Configuration Message}). Only show the date-picker setting options when Configuration for this is Enabled.
If curbside items have been added to the cart, prompt for a Single Input: Car Description (Make/Model/Color)
Order Data Output:
Current Example:
<product_options> <option> <id>41</id> <option_id>60</option_id> <order_product_id>67</order_product_id> <product_option_id>28</product_option_id> <display_name>Pickup In Store</display_name> <display_value>MAIN</display_value> <value>MAIN</value> <type>Text field</type> <name>Pickup-In-Store1588353705-107</name> <display_style/> </option> </product_options>
Need to add another to support Curbside:
<product_options> <option> <id>41</id> <option_id>61</option_id> <order_product_id>67</order_product_id> <product_option_id>28</product_option_id> <display_name>Pickup Curbside</display_name> <display_value>MAIN</display_value> <value>MAIN</value> <type>Text field</type> <name>Pickup-In-Storexxxxxxxxxx-XXX</name> <display_style/> </option> </product_options>
Bug to correct:
Some users theme settings may use a dark background. The current CSS applied to the search form does not account for this. The form element background and text CSS should be applied from the theme and not assumed to be white background.
See below:
Text exists, but is not shown above ^^^^^^^^^^^
Below is the CSS from the theme applied to the same site: