Skip to main content

Sherpaan - Data mapping & Syncronisation

Learn how Optiply synchronizes data with Sherpaan. This guide details sync frequencies, customizable warehouse filters, SOAP endpoints, and field mappings for products and orders.

Carla Domingos avatar
Written by Carla Domingos
Updated over a week ago

🔗 Sherpaan: Data Mapping & Synchronisation

This guide details the data flow between Sherpaan and Optiply. It outlines the synchronisation frequency, available configuration options, and specific field mappings for each entity.

⏱️ Synchronisation General Board

The following table outlines the data entities and their update frequency.

Entity

Direction

Frequency

Products

Sherpaan → Optiply

Every 60 min

Suppliers

Sherpaan → Optiply

Every 60 min

Supplier Products

Sherpaan → Optiply

Every 60 min

Sell Orders

Sherpaan → Optiply

Every 60 min *

Buy Orders

Sherpaan → Optiply

Every 60 min

Receipt Lines

Sherpaan → Optiply

Every 60 min

* Deletions: We handle Sell Order deletions (including status="Cancelled"). However, we do not process deletions of individual lines within an order.


⚙️ Options and Features

The following settings can be customised for your integration.

1. Products - Get stock from specific WarehouseCodes (1*)

An option that allows a customer set a list of WarehouseCodes from where we should sync the stocks. By default, we sync stocks from all warehouses (stockLevel will be the sum of all warehouses).

(stock_warehouse_codes default all)

2. Products - Get stock from one specific WarehouseGroupCode (1*)

An option that allows a customer set one WarehouseGroupCode from where we should sync the stocks.

(warehouse_group_code default None)

3. Suppliers - Enable/Disable sync specific attributes for Suppliers (1*)

If the customer doesn’t want us to sync attributes for Suppliers, we can add them into the variable as a list.

Example:

  • Customer doesn’t want us to sync deliveryTime nor ReorderPeriod so the variable will be set as “not_sync_suppliers_attributes":"deliveryTime,userReplenishmentPeriod"

(not_sync_suppliers_attributes default None)

4. SupplierProducts - Enable/Disable sync specific attributes for SupplierProducts (1*)

If the customer doesn’t want us to sync attributes for SupplierProducts, we can add them into the variable as a list.

Example:

  • Customer doesn’t want us to sync lotSize nor minimumPurchaseQuantity so the variable will be set as “not_sync_supProds_attributes":"lotSize,minimumPurchaseQuantity"

(not_sync_supProds_attributes default None)

5. SellOrders - Sync only Completed Orders (1*)

An option that allows a customer to decide if we should sync all order statuses to Optiply or only “Completed” (Status Processed in Sherpaan). By default, we pull all orders.

(pullAllOrders default true)

6. SellOrders - Get sellOrders from specific WarehouseCodes (1*)

An option that allows a customer set a list of WarehouseCodes from where we should sync the sellOrders. By default, we sync data from all warehouses.

(sellOrders_warehouse_codes default all)

7. BuyOrders - Get buyOrders from specific WarehouseCodes (1*)

An option that allows a customer set a list of WarehouseCodes from where we should sync the buyOrders. By default, we sync data from all warehouses.

(buyOrders_warehouse_codes default all)

(1*) Note: These options cannot be changed in the front-end. Please contact Customer Support to adjust these variables.


🗺️ Data Mapping Details

1. Products

Endpoints: ChangedItemsInformation, ChangedStock, ChangedStockByWarehousegroupCode

Optiply

Sherpaan

Logic / Notes

Name

Description

-

SKU Code

ItemCode

-

EAN Code

EanCode.EanCodes

-

Price

Price

-

Stock Level

AvailableStock

Or Warehouses>ItemWarehouse>Stock depending on config.

Status

ItemStatus

If "Active" → Enabled. Else → Disabled.

Remote ID

ItemCode

-

createdAtRemote

DateAdded

-

Filter: We only sync products where ItemType is Stock or Assembly.

2. Suppliers

Endpoints: ChangedSuppliers, SupplierInfo

Optiply Field

Sherpaan Field

Notes

Name

Company + Name

Concatenated.

Remote ID

SupplierCode

-

Replenishment Period

OrderPeriod

-

Delivery Time

DeliveryPeriod

-

Emails

Email

-

3. Supplier Products

Endpoint: ChangedItemSuppliersWithDefaults

Optiply Field

Sherpaan Field

Logic / Notes

Name

SupplierDescription

-

SKU Code

SupplierItemCode

-

Delivery Time

DeliveryPeriod

Optional (Default: Not mapped).

Price

SupplierPrice

-

Min. Purchase Qty

MinPurchaseQty

-

Product ID

ItemCode

-

Supplier ID

SupplierCode

-

Free Stock

SupplierStock

-

Status

SupplierItemStatus

If "Active" → Enabled. Else → Disabled.

Preferred

Preferred

-

Lot Size

SupplierPurchaseQty

-

remoteId

SupplierItemCode

4. Sell Orders

Endpoint: ChangedOrdersInformation

Optiply Field

Sherpaan Field

Notes

Total Value

OrderAmountInclVAT

-

Remote ID

OrderNumber

-

Placed Date

OrderDate

-

Lines: QuantityOrdered, ItemCode, and Amount are mapped to line items.

⚠️ Limitation: We do not sync order changes (line deletions/additions) after the initial sync.

5. Sell Order Lines

Optiply

Sherpaan

quantity

QuantityOrdered

productId

ItemCode

subTotalValue

Amount

6. Buy Orders (Import: Sherpaan Optiply)

Endpoints: ChangedPurchases, PurchaseInfo

Optiply

Sherpaan

Logic

Supplier ID

SupplierCode

-

Placed Date

PurchaseDate

-

Total Value

Calculated

Sum of lines Amount.

Remote ID

PurchaseOrderNumber

-

Completed Date

Calculated

Max(PurchaseOrderLines.ReceivedDate). Set when QuantityOrdered = QuantityReceived for all lines.

7. Buy Order Lines - Sherpaan to Optiply

Optiply

Sherpaan

quantity

QuantityOrdered

subTotalValue

Amount

productId

ItemCode

expectedDeliveryDate

DateExpected

remoteId

CONCAT(PurchaseOrderNumber_ItemCode)

8. Buy Orders (Export: Optiply Sherpaan)

Endpoints: AddOrderedPurchase, ChangePurchase2

Optiply Field

Sherpaan Parameter

Notes

ID

reference

-

Supplier ID

supplierCode

-

Warehouse

warehouseCode

Required: Must be configured during setup.

Placed Date

-

Set by Sherpaan upon creation.

Expected Date

ExpectedDate

Sent on the line level.

9. Receipt Lines (Derived)

Endpoint: PurchaseInfo

Since Sherpaan does not have a native "Receipt" entity, Optiply derives this data from the Purchase Order Lines.

Optiply

Sherpaan

Logic

Quantity

QuantityReceived

Updates as the received count increases.

Occurred

ReceivedDate

-

Remote ID

Calculated

Concatenation: PurchaseOrderNumber + ItemCode.


❓ Frequently Asked Questions (FAQs)

Why is the "Placed Date" on my exported Buy Order different?

When exporting to Sherpaan, we cannot dictate the "Placed" date. Sherpaan automatically sets this to the date/time the order was created in their system.

Can I sync stock from just one warehouse?

Yes. You can request to filter stock (and orders) by specific WarehouseCodes. This configuration must be done by Optiply Support.

How are receipts handled if Sherpaan has no receipt lines?

Optiply creates a single "virtual" receipt line for each item on a Buy Order. As you receive more items in Sherpaan (QuantityReceived increases), we update the quantity of that virtual receipt line in Optiply.

Why are my cancelled orders being deleted?

Optiply is configured to delete Sell Orders if their status changes to "Cancelled" in Sherpaan. This ensures your sales history in Optiply reflects only valid demand.

Did this answer your question?