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

Configuration

Customer Experience

Help


iPaaS.com mapping changes to support Buy-online Store Pickup are as follows:


1) Register 2 custom fields in your iPaaS.com catalog


Field 1: Add the first field to the Transaction Line CollectionType named "Pickup Store".  This will hold the location entered by the user during item selection and checkout.  This field will also need to be mapped in any dependent systems.



Optional Field 2: Optionally add the second field to the Customer CollectionType named "Pickup Store".  This will store the default pickup store chosen by the customer and saved in the BigCommerce customer profile.  This field will also need to be mapped in any dependent systems.



2) Register 2 custom fields on your iPaaS.com BigCommerce subscription.



Field 1: Add the first field to the Product CollectionType named pickup_enabled


Field 2: Add the second field to the Transaction Line CollectionType named PickupLocationId


3) Create the following Mapping changes in your iPaaS.com BigCommerce subscription.

MappingCollection: BC Products 

Direction: From iPaaS

System: BigCommerce


Add a Mapping to tell BigCommerce whether items are enabled for Pickup InStore. 


Source: Use a field, formula or static value using your iPaaS.com and origin systems data and map normally.

Destination:  The Custom Product Field named pickup_enabled.  Possible values are: true, false



MappingCollection: BC Customer 

Direction: To iPaaS

System: BigCommerce

Add a Mapping for the preferred Pickup Location chosen by the Customer during signup.


Source: Configure as a dynamic mapping using the following formula:

FieldFromFirstMatch(FormFields, "Name=\"Pickup Store\"", "Value")


Destination: Choose the iPaaS.com custom field named "Pickup Store"


MappingCollection: BC Transaction Lines 

Direction: To iPaaS

System: BigCommerce

Add a Mapping for the selected Pickup Location and translate normally to your chosen iPaaS.com destination.


Source: Configure as a dynamic mapping using the following formula:

FieldFromFirstMatch(ProductOptions, "Name = \"Pickup In Store\"", "Value")


Destination: Choose the iPaaS.com custom field named "Pickup Store"


NOTES: The OptionId is the BigCommerce OptionId.  This will be static for each install.


Below is a sample output from a BigCommerce Transaction Line having a product_option for the pickup location. The below shows the information returned by /stores/{{STORE_HASH}}/orders/{{ORDERID}}/products

        <product_options>
            <option>
                <id>39</id>
                <option_id>60</option_id>
                <order_product_id>65</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/>
                <name/>
                <display_style/>
            </option>
        </product_options>


4) Remember to add mappings for any any dependent systems with your new iPaaS.com custom fields.


This is an example mapping for iPaaS.com to NCR Counterpoint on MappingCollectionType: Transaction Line using the custom iPaaS.com field Pickup Store.



In NCR Counterpoint, these settings are passed through as configured.


Example: Multiple Pickup Locations