# Marketplace Integrations

# Add a Marketplace Integration

**Ensure you have account details, and/or any API keys, tokens, login details before adding an integration**

**Anything greyed out in this document is either for internal usage (by OFC), or no-longer required but retained for legacy.** I recommend reading the document in full before progressing. The original steps are for a Shopify site, but I have added additional information for other marketplaces below. The main thing for now is to ensure what is enabled and disabled. Further details on integrations will be provided at a later date.

1. **Go to** [**Settings** &gt; **Sales Channels**](https://onlinefulfilmentcentre.myhelm.app/settings/sales_channels)
2. **Add New Channel**
3. Select the marketplace **(Shopify, etc)** from the list and click **install**
    - If it doesn't show, there is potentially another integration already using it, in this case  
        
        - **Exit**
        - Select the channel from the page
        - Add New Channel
4. Setup. Tab by tab match the below settings  
    The following are the options for a Shopify integration, some names may differ, and some additional API keys/secrets may be needed if using an alternate marketplace. If you require assistance, or are unsure as to what to set please get in touch. \* 
    - **Credentials**
        - **Active** \# Off (We will double check then enable this)
        - **Name** # A unique name for the channel (&lt;clientname&gt;\_&lt;channel&gt;)
        - **Hostname** # Either first part of subdoamin, or clientref between slashes /&lt;here&gt;/
        - **Use Dc Credentials** # Checked
        - **Use Access Token** \# Unchecked
        - **API Key** # Add anything, I recommend a hyphen (-) this will be pulled by Helm
        - **Password** \# Add anything, I recommend a hyphen (-) this will be pulled by Helm
        - **Notify Customer** \# Unchecked
        - **Use Restricted Location Orders** # Unchecked
        - **Get Orders** \# Unchecked
        - **Download Product** \# Checked
        - **Deduct Stock Via Orders** # Checked
        - **Auto Hold Orders** # Unchecked
        - **Manage Stock** # Checked
    - **Settings**
        - <span style="color: rgb(126, 140, 141);">**Fulfilment Client** # Client name (from dropdown)</span>
        - **Warehouse** \# Warehouse
        - **Import Products** \# Unchecked
        - **Insufficient Stock Levels** # Back Order (from dropdown)
        - **Order Received Timeout Status** # On Hold
        - <span style="color: rgb(126, 140, 141);">**Inventory Names** # Use internal names</span>
    - **Stock Control**
        - **Auto Sync Stock # Unchecked**
    - **Brand**
        - <span style="color: rgb(126, 140, 141);">**Inventory Names** # Use internal names</span>
        - **Return Address** # Select the correct warehouse/client address (From dropdown)
    - **Commercial Invoice**
        - **Sender Address** # Select the correct warehouse/client address (From dropdown)
5. Ensure that in the first tab '**Credentials**' that **Active** is not checked/on/coloured  
    As we are currently in the process of moving from Mintsoft we need to verify the integration first, to ensure that it does not overwrite any stock, orders, etc. This is something you can enable in the future, but for now make sure it it **Not Active**
6. **Save Changes**
7. Click the Link button at the bottom of the integration in Helm  
    This will load Shopify, etc. and request access
8. Accept the access request

**\* Woocommerce**

Some fields from the above are not there, so ignore if a CTRL+F doesn't find them.

It requires and uses Store URL, Consumer Key, Consumer Secret in place of DC credentials

This is your full woocommerce site domain, and keys related from the following.  
**<span class="svelte-x57wqa">WooCommerce &gt; Settings &gt; Advanced &gt; REST API</span>**  
Add key, select user and permissions (Read/Write).  
Generate API Key (Either add them straight into Helm, or copy to a notepad file temporarily, as they are not persistent!)

**\* Ebay**

One of the simpler integrations, no API-keys, or specific URLs.

Once the integration is create in Helm click the link icon. This will redirect you to ebay, and request verification.

An issue we have found with clients with multiple ebay accounts, etc. When linking to Helm/Neuro, an alternate marketplace gets added US rather than UK for instance. To force a specific marketplace to get linked, this needs adding to the eBay login page you get redirected to. **&amp;GLOBAL-ID=EBAY-GB** for the GB marketplace for instance.

**\* B&amp;Q**

Like Woocommerce, this uses secret keys and an API endpoint URL.

**Needs** automatically confirm orders checked as well, since B&amp;Q doesn't do this, we need it to be done via Helm

**\* Amazon**

Set the marketplace ID from the dropdown (The location your amazon marketplace is associated with, likely **UK**)

Select the types of orders Helm should recieve from Amazon

- **MFN (Merchant Fulfilment Network)**
    
    
    - You fulfil orders manually using your own warehouse and couriers

Order Statuses

- **Unshipped**
- **Shipping**

**<span style="color: rgb(224, 62, 45);">DO NOT enable DESPATCH OR FEEDBACK EMAILS for an Amazon sales channel.</span>**

Once the channel is setup in Helm, press the Connect Channel.

Login and/or Authorise

Select account and marketplace

Tick the checkbox to authorise Helm, and **Confirm**

<span style="color: rgb(224, 62, 45);">**Sometimes the feeds being set as UK 'cause issues, so the feed may need changing to US-eng. This should be attempted only if the product report response is coming in, but in an alternative language.** </span>

**\* Etsy**

Name is the name in Helm

Account Nominal Code is the exact name of your etsy shop

When the popup is saved it will redirect you.

Click on the 'Connect Channel' button underneath the etsy integration

**\* TikTok Shop**

Marketplace ID: UK

Fulfilment Channel: Seller

When linking you will need to select Europe-&gt;UK, and potentially add your email address before authorising the integration.

If you don't (and it's expecting it), it will error, but you can just press the link again within Helm to start the connection again.

**\* Wix**

The site ID will be a UUID from the dashboard such as https://manage.wix.com/dashboard/&lt;site-id&gt;/general

For API keys

Go to Account settings, then select API Keys at the bottom left, 'Generate new API key' name it OFC\_Helm or something similar, grant/check 'All Permissions' so we can get and update orders.

Generate Key, and at the end press the 'Copy Token' button, add the contents that was copied into the API Key field within Helm.

**Where to get API keys, etc.**

**OnBuy**: Listing-&gt;Imports and Integrations-&gt;Despatch Cloud

**B&amp;Q/Tesco/anything Mirakl**: Top right icon, users/api keys somewhere there I can't 100% recall.

**Woocommerce**: Woocommerce-&gt;Rest API Keys-&gt;Create-&gt;Give Read/Write Permissions

**Wix**: Account Settings-&gt;API Keys

Along with our information in this document Helm offs guides for specific marketplaces [https://documentation.myhelm.app/en/help/collections/1084337-sales-channels](https://documentation.myhelm.app/en/help/collections/1084337-sales-channels)  
So if you find yourself lost, you can always check this, or contact Nathan or Paul at OFC.

**Product Mapping**

If you'd like to check how the products map (once the channel has been activated)

1. [https://onlinefulfilmentcentre.myhelm.app/inventory/link](https://onlinefulfilmentcentre.myhelm.app/inventory/link)
2. View Linking

Anything that hasn't automatically linked can be linked via the dropdown, this could be SKUs, missing inventory items, malformed SKUs, etc.

Here is for OFC information, you do not need to worry about anything from this point

**Neuro**

Ensure that Auto Hold Aged Orders (Auto Hold Orders in Helm) are disabled, otherwise orders can get 'stuck' On Hold within Neuro 'causing confusion and requiring manual intervention to get the orders into Helm.

# Inventory Linking and Alternate SKUs

With marketplace integrations now in place (**and active**), we can match the inventory items from those integrations to the inventory we stock in the warehouse/have within Helm. A large amount of these will be 1:1 as the SKU on the marketplace will represent the SKU in Helm/Warehouse.

Many clients have alternative SKUs however, SKUs that are unique, but represent the same parent inventory item.

For these we need to match the alternate SKUs to the relevant SKUs within Helm.

**One off SKUs (In Helm)**

1. [Settings-&gt;Link Inventory](https://onlinefulfilmentcentre.myhelm.app/inventory/link)
2. The channel will tell you if there are unlinked SKUs, but you still may want to manual change linking even if all are 'matched'
3. Select the Client/Integration and View Linking
4. Scroll to a dropdown that's missing content (the DC SKU)
5. Match the Channel SKU (SKU within the integration), to whichever item it is within Helm from the dropdown

**Bulk SKUs (Requires Neuro)**

To do this we will be using **Neuro**. It should be a one-off when migrating/on-boarding a new client.

1. In Neuro select [Channels](https://app.heyneuro.io/channels)
2. Find the client integration and click into **Actions**
3. Click **Products**
4. Press **Actions-&gt;Export All To CSV**  
    This will generate the inventory list, and email the CSV to you
5. Update the content (as below)
6. Upload the new CSV in **Actions-&gt;Import**

Within the CSV generated the only things we will be looking at and changing are the:

**sku** and more importantly the **matched\_sku  
sku** is the SKU from the Integration, Shopify, etc  
**matched\_sku** is the SKU within helm

While updating the file we will only need to edit the matched\_sku for those lines that it is missing from.  
The CSV needs to have the same lines as when it was exported, so **do not delete or add any lines**.

This is done in a specific way  
**&lt;client\_id&gt;~&lt;helm\_sku&gt;**

The client\_id is the non-numeric id we have set for the Fulfilment Client within helm

Follow this with a tilde ~ (with no space) and follow the tilde with the SKU of the item within Helm  
e.g. **onlinefulfil~ofctest**

Hopefully we can match these with the export from mintsoft.

So the alt sku is what's from integration and the original sku should hopefully be on the export too, and we can just append &lt;client\_id&gt;~ to it

[Export From Mintsoft](https://om.mintsoft.co.uk/Reports/ProductAltCodes)

**Script**

Will be working on a script that will take **neuroExport.csv** and **AltCodesReports.csv** loop through altCodes, store them, loop through neuro export, find any missing data and fill from altCodes if possible. If not possible will save a file called 'empty/missing' or the like with the SKUs that couldn't be matched.

**Manual Linking in Helm**

[Settings-&gt;Link Inventory](https://onlinefulfilmentcentre.myhelm.app/inventory/link)

# Set Marketplace Integration to get Orders

In [**Settings** &gt; **Sales Channels**](https://onlinefulfilmentcentre.myhelm.app/settings/sales_channels), after selecting the channel type (Amazon, etc.) then selecting the channel by clicking the first mini button to Edit.

**Credentials**

1. Check **active** so that is turns green
2. Check **Get Orders**

**Stock Control**

1. Check **auto sync stock** (if you want Helm to manage stock for the integration) so that it is also green

**Shopify Specific**

To get shopify to send emails to customers when order is despatched the

**Notify Customer** setting needs to be checked within **Credentials** tab