# Set up Cin7 Core with Starshipit WMS
URL: https://support.starshipit.com/articles/14700000000035-set-up-cin7-core-with-starshipit-wms
Canonical: https://support.starshipit.com/articles/14700000000035-set-up-cin7-core-with-starshipit-wms
Markdown: https://support.starshipit.com/articles/14700000000035-set-up-cin7-core-with-starshipit-wms.md
Updated: 2026-10-01

> For the complete documentation index, see [llms.txt](https://support.starshipit.com/llms.txt).

> Set up Cin7 Core in WMS using your saved Starshipit connection, map a warehouse, and manage products, purchase orders and stock syncs.

Set up Cin7 Core in Starshipit WMS using the connection saved in Starshipit to keep products, purchase orders and bin-level inventory aligned. Your team manages day-to-day warehouse locations and movements in WMS. Cin7 Core was previously known as DEAR Inventory.

## Before you begin

You need:

* A Cin7 Core account with API access and webhooks available.
* An enabled Cin7 Core connection in the Starshipit account connected to WMS, saved with **API Version 2** selected.
* Access to manage that Starshipit connection if it needs setting up or updating.
* Permission to manage settings and products, and view and import locations in Starshipit WMS.
* Access to **Operations** and **Process Logs** if you will monitor the rollout yourself.
* One active, top-level Cin7 Core warehouse for this WMS account.
* Active Cin7 Core bins for the WMS locations used in receiving, storage, staging, equipment and packing.
* If Cin7 Core has stock without a bin, a visible WMS **Staging dock**, **Quarantine** or **Overflow** location that is not linked to a Core bin.
* Account-wide inventory adjustment permission if you will repeat opening stock or use a directional inventory sync.

WMS uses the credentials saved in the standard [Cin7 Core integration](/articles/211651203-cin7-core-integration). Its warehouse mapping, product and purchase imports, inventory sync and writeback settings are configured separately in WMS. You do not enter a Cin7 Core application key or webhook secret in WMS.

## Decide which system owns each type of data

:::important
Manage the product catalogue, suppliers and Advanced Purchase orders in Cin7 Core. Link Core bins to WMS locations so stock changes can stay aligned in both systems. Enable inventory writeback before starting WMS warehouse movements.
:::

| Data | Source of truth | How the integration handles it |
| --- | --- | --- |
| Product catalogue | Cin7 Core | WMS imports supported products and updates the Core-managed product fields. |
| Suppliers and Advanced Purchase orders | Cin7 Core | WMS imports eligible purchase orders and matches or creates suppliers by name. |
| Bin stock | Cin7 Core and WMS | WMS reconciles Core stock by linked bin, preserving batch, serial and expiry details. Enabled writeback sends supported WMS changes to Core. |
| Bins and WMS locations | Cin7 Core for bin identity; WMS for operational settings | Location import creates stable Core bin links. Later Core location changes are not imported automatically. |
| Putaway, replenishment and internal movements | WMS | Enabled writeback sends supported movements between linked bins to Core. |
| Sales and shipping | Your existing Starshipit and Cin7 Core workflow | This direct integration does not replace the sales-order and shipment integration. |

The diagram below shows the sales, shipping, WMS import, webhook and writeback flows between the three systems. Starshipit handles the Cin7 Core connection and forwards warehouse notifications to WMS.

```mermaid
sequenceDiagram
    accTitle: Cin7 Core, Starshipit and Starshipit WMS data flows
    accDescr: Swimlane diagram showing sales, shipping, product, purchasing, inventory, webhook and writeback flows between the three systems

    participant C as Cin7 Core
    participant S as Starshipit
    participant W as Starshipit WMS

    rect rgb(240, 247, 255)
        Note over C,S: Sales and shipping

        S->>C: Request eligible sales orders or fulfilments
        C-->>S: Return sales order or fulfilment data
        S->>C: Write back carrier and tracking details

        C->>S: Request available shipping rates
        S-->>C: Return carriers, services and rates
        C->>S: Request shipment and label
        S-->>C: Return label and tracking details
    end

    rect rgb(243, 250, 246)
        Note over C,W: WMS imports and webhooks

        W->>S: Request products or opening stock
        S->>C: Fetch using the saved Core connection
        C-->>S: Return catalogue or warehouse stock
        S-->>W: Return data for import

        C-->>S: Product, stock or Advanced Purchase webhook
        S-->>W: Forward queued change notification
        W->>S: Request the latest record
        S->>C: Fetch current Core data
        C-->>S: Return product, stock or purchase data
        S-->>W: Return data for processing
        Note over W: Update products and purchases and reconcile linked bins
    end

    rect rgb(255, 248, 235)
        Note over C,W: WMS writeback

        W->>S: Send receipt, adjustment or bin transfer
        S->>C: Write back using the saved Core connection
        opt Outbound Pick/Pack enabled
            W->>S: Request Pick and Pack writeback
            S->>C: Authorise and verify Pick and Pack
            W->>S: Request shipping label
            S->>C: Write back Ship and tracking
        end
    end
```

## Start with a fresh WMS instance

Set up Cin7 Core before starting warehouse operations. Use a fresh WMS instance, or review **System > Settings > Data Management** if you are deliberately starting over with an existing instance.

:::warning
A transactional data reset permanently deletes inventory, orders, jobs and stock movements. It preserves products, locations and configuration. Only reset an existing instance when you intend to remove its operational data.
:::

Arrange a setup window in which users and connected systems pause product, stock and purchase changes in Cin7 Core. Keep those changes paused from before the first import until webhooks are registered and the final comparison below is complete. Changes made before registration are not captured by these webhooks.

## Connect Cin7 Core while the integration is disabled

Keep **Enable Cin7 Core sync**, **Enable Cin7 Core writeback** and **Enable outbound Pick/Pack writeback** off while you configure and test the connection.

### Check the connection saved in Starshipit

1. In Starshipit, go to **Settings > Integrations > Cin7 Core**. If there is no connection, follow the [Cin7 Core integration guide](/articles/211651203-cin7-core-integration) to add one.
2. Confirm that **Enable Cin7 Core** is selected.
3. Select **Version 2** for the API version.
4. Confirm that the saved **Account ID** and **Key** belong to the Cin7 Core company you want WMS to use.
5. Select **Save**.

Maintain the Cin7 Core credentials in Starshipit. WMS discovers the connected Core account and keeps it as the source for this warehouse. Changing Starshipit to a different Core company blocks WMS requests; restore the original connection before continuing.

### Test the saved connection in WMS

1. In WMS, go to **System > Settings**.
2. Under **Connections & Integrations**, select **Direct Integrations**.
3. Find **Cin7 Core**.
4. Select **Refresh** if you have just configured the Starshipit connection.
5. Check that **Connected Core account** shows the expected account ID.
6. Leave all three sync and writeback settings off.
7. Select **Test connection** under **Step 1: Connection**.

WMS settings save automatically when you change a selection or switch. Wait for **Saved** before continuing. If **Not saved** appears, correct the reported problem and select **Retry**. Complete any required fields if **Unsaved changes** appears. **Test connection** also saves changed WMS settings before testing.

When the test succeeds, WMS displays the number of active Cin7 Core warehouse locations it found and loads the warehouse dropdown. If no Core account appears, check that the Starshipit connection is enabled, saved and using API v2, then select **Refresh**.

### Map the warehouse and import locations

1. Select the matching **Cin7 Core warehouse**.
2. Wait for **Saved**.
3. Select **Import locations from Cin7 Core** to open the import flow in **Setup > Locations**.
4. Review the import summary, then select **Import locations**.
5. Wait for the import to finish and review any failed rows.
6. Confirm that every location used for bin-based movements has a Core link, including receiving, staging, equipment and packing locations.

One WMS account maps to one active, top-level Cin7 Core warehouse. The import copies active descendants and links them to their Core IDs. WMS reuses existing Core ID links first, then matches unlinked locations by name without regard to letter case. Existing same-name locations keep their type and settings; new locations are created as **Pick Face** locations. Duplicate names or conflicting mappings require correction before the affected rows can import.

Later Core additions, renames, hierarchy changes and deactivations are not imported automatically. Run the import again when needed and review the links. Continue managing WMS location types, barcodes, capacity, sequence, zones and restrictions in WMS.

### Choose a location for stock without a Core bin

If Cin7 Core holds stock at warehouse level without a bin, return to the Cin7 Core settings card and select a **WMS reconciliation location**, then wait for **Saved**. Choose a visible **Staging dock**, **Quarantine** or **Overflow** location that is not already linked to a Core bin.

This location receives stock that has no Core bin. It does not replace a missing mapping for stock that already belongs to a Core bin. Assign unbinned stock to a Core bin before using bin-based outbound movements.

## Enable inbound sync

1. Confirm that the location import has finished and the warehouse mapping is correct.
2. Turn on **Enable Cin7 Core sync**.
3. Keep both writeback settings off during the initial import.
4. Wait for **Saved** to unlock the import and webhook actions under **Step 3: Complete setup**.

## Import products and opening stock

### Import the product catalogue

1. Under **Step 3: Complete setup**, select **Import products** on the **Products** card.
2. Go to **Operations > Background work**.
3. Find **Cin7 Core product import** under **Tracked jobs**.
4. Wait for the job to complete before importing opening stock.

WMS imports active Cin7 Core products that have the **Stock** type and a non-empty SKU. A product import or webhook updates these Core-managed fields:

* **Product details:** Name, barcode, brand, description and tags.
* **Pricing:** Price Tier 1 and average cost.
* **Physical and customs details:** Dimensions, weight and country of origin.
* **Tracking:** Batch or serial tracking based on the Cin7 Core costing method.

WMS hides a linked Stock product when it is deprecated in Cin7 Core. Edit these managed fields in Cin7 Core because a future import or product webhook can replace the WMS values.

### Import Assembly bills of materials

The product import also converts supported Cin7 Core Assembly bills of materials (BOMs) into WMS **exploding bundles**. Orders for these bundles use the component SKUs rather than picking a stocked bundle SKU.

To import a BOM, it must have:

* The **Assembly** BOM type and **Quantity to produce** set to `1`.
* At least one stock component, with a product ID, SKU and positive whole-unit quantity.
* No service components, wastage, duplicate components or nested bundles.
* Component products that can be imported and pass WMS bundle validation.

After the import completes, open a sample bundle in **Products** and check its bundle mode, component SKUs and quantities. Review **System > Process Logs** for any skipped BOMs before using them on orders.

Manage the BOM in Cin7 Core. A later product import or product-update webhook can replace the WMS component configuration and set its mode to **Explode**. This import does not create pre-kitted stock or write assemblies back to Cin7 Core. See [Configure WMS products and inventory](/articles/14700000000006-starshipit-wms-products-and-inventory-configuration) for the difference between exploding and require-stock bundles.

### Apply opening stock

Apply opening stock after both the location and product imports have finished. The first import applies stock only to products with no existing WMS stock; products with existing stock are sent for review.

1. Under **Step 3: Complete setup**, select **Apply opening stock** on the **Opening stock** card.
2. Go to **Operations > Background work**.
3. Find **Cin7 Core opening stock** under **Tracked jobs** and wait for completion.
4. Review warnings in **System > Process Logs**.
5. Compare representative SKUs in both systems by bin, quantity and any batch, serial or expiry details.

WMS supports whole-unit untracked, batch-tracked and serial-tracked opening stock. Stock goes to its linked WMS bin, or to the reconciliation location when the Core row has no bin. WMS captures a complete warehouse stock snapshot before applying it. Keep stock changes paused until the run and comparison finish; the run applies that captured balance rather than continuously refreshing it.

After the run completes, **Apply opening stock again** reconciles existing WMS inventory to a fresh Core snapshot across linked products. It requires account-wide inventory adjustment permission and can set a product's WMS stock to zero if it is absent from that complete snapshot.

:::warning
Repeating opening stock makes the captured Core balances authoritative. It can replace existing WMS quantities and remove or relocate allocated or container-held stock. Run it outside warehouse hours with stock changes paused, and confirm Core has the correct balances first. Missing mappings and unsupported stock still require review.
:::

## Register webhooks after the imports

1. Return to the Cin7 Core settings card.
2. Under **Step 3: Complete setup**, select **Register webhooks** on the **Webhooks** card when you are ready for ongoing changes. Select **Update webhooks** if the subscriptions are already configured.
3. Confirm that all four events under **Webhooks** show **Active**. **Not configured** means the subscription needs registration or reactivation; **Not checked** means WMS has not confirmed its state.
4. While Core changes remain paused, compare the imported product data and stock by bin and tracking identity against Core. Review any eligible purchase orders that need to reach WMS.
5. Resolve missing or mismatched records before resuming changes. If Core changed during setup, do not assume registration replays those changes: refresh products with **Import products again**, use a directional inventory sync for a reviewed product difference, or **Apply opening stock again** when Core is correct across the warehouse. Contact Starshipit support for missing purchases.
6. Resume Core changes only after this comparison is complete and all discrepancies are resolved.

WMS asks Starshipit to create or reactivate these subscriptions. Starshipit manages webhook authentication and forwards the notifications to WMS. You do not need to create a webhook secret or copy URLs into Cin7 Core manually. For an existing WMS setup, select **Register webhooks** or **Update webhooks** to move its warehouse notifications through Starshipit; this does not replace sales-order or third-party subscriptions.

| Cin7 Core event | What WMS does |
| --- | --- |
| `Product/Updated` | Fetches the latest product record. |
| `Stock/AvailableStockLevelChanged` | Reconciles stock by linked bin and tracking identity. |
| `Purchase/OrderAuthorised` | Imports an eligible authorised Advanced Purchase order. |
| `Purchase/Updated` | Fetches the latest eligible Advanced Purchase order. |

## Understand ongoing sync flows

Cin7 Core webhooks reach Starshipit, which queues and forwards the change notifications to WMS. WMS then retrieves the latest record through the saved Starshipit connection before processing it.

### Product updates

Cin7 Core remains the product catalogue master. When an imported product changes, WMS refreshes the Core-managed product fields. Only active Stock products with a non-empty SKU are imported. Linked Stock products marked as deprecated in Cin7 Core are hidden in WMS.

You can refresh the catalogue from the Products page using **Sync from Cin7 Core**. This requires the direct integration to be enabled and the relevant settings and product permissions. Follow the import in **Operations > Background work**.

### Purchase orders

WMS imports a purchase order when all of these conditions are met:

* It is an **Advanced Purchase** in Cin7 Core.
* Its order stage is **Authorised**.
* It belongs to the mapped Cin7 Core warehouse.
* It is not service-only.
* It contains at least one stock line, and every line has a product and SKU, a positive whole-unit quantity and a valid non-negative price.

The purchase order appears in WMS with its Cin7 Core order number, supplier, dates, products, quantities and prices. If a product on the order is not yet linked, WMS imports the product before creating the purchase order.

Make purchase-order changes in Cin7 Core before receiving begins. Once the WMS purchase order has receiving activity, later Cin7 Core updates do not replace its lines.

### Inventory changes

For a stock-change event, WMS fetches the current Core stock and compares it with WMS stock by linked bin, batch or serial number and expiry. Unbinned Core stock uses the selected reconciliation location.

WMS moves existing stock between locations before applying any remaining quantity adjustment. It preserves tracking and receipt details. A missing mapping, fractional quantity, required removal from allocated or container-held stock, or unresolved outbound write sends the product for review instead of applying a partial reconciliation.

Changes imported from Core do not generate another writeback to Core. Review **Background work** and **Process Logs** when a difference remains.

## Reconcile an inventory difference

Use a directional sync for an existing product when you have confirmed which system has the correct stock. This requires account-wide inventory adjustment permission and an enabled Cin7 Core integration. Syncing to Core also requires inventory writeback to be enabled.

1. Go to **Inventory** and open the linked product's actions.
2. Select **Sync from Cin7 Core** to replace WMS quantities with Core quantities, or **Sync to Cin7 Core** to replace Core quantities with WMS quantities.
3. Wait for the background preview to appear.
4. Compare the quantities by bin and any batch, serial and expiry details, including the destination quantity after sync. Check the blocked-writeback count in the preview, and review any failed or uncertain receipts, sales or writebacks for this product in **Background work** before confirming.
5. Select the matching **Sync from Cin7 Core** or **Sync to Cin7 Core** button to queue the change.
6. Check **Operations > Background work** for the result, then compare the product in both systems.

**Sync from Cin7 Core** explicitly makes Core stock authoritative for that product. Unlike an automatic stock webhook, it can remove or relocate allocated or container-held WMS stock. Opening or closing the preview does not apply a change; confirmation queues it for processing.

If inventory, mappings or queued work changes after the preview, refresh it and confirm the revised quantities. Resolve missing links or running and multi-product operations separately. A successful sync resolves matching earlier inventory reviews and updates opening-stock warning counts. It records the chosen direction without replaying the older operations it resolves. For **Sync to Cin7 Core**, check the final writeback result as well as the preparation step.

## Enable inventory writeback after testing

**Enable Cin7 Core writeback** adds these outbound flows:

| WMS action | Cin7 Core result |
| --- | --- |
| Receive stock against a Cin7 Core-sourced Advanced Purchase order | WMS sends the completed receipt to the matching Cin7 Core purchase using the actual receiving bin. |
| Adjust or write off stock, or complete a stocktake or cycle-count correction | WMS sends the resulting quantity for each affected linked bin and tracking identity. |
| Move stock between linked WMS locations, including putaway and replenishment | WMS sends a Core stock transfer between the linked bins. |
| Restock a customer return to a linked bin | WMS sends a stock adjustment for the returned quantity. This does not create a Core credit note or return document. |
| Ship a linked product on an order with a known source other than Cin7 Core | WMS sends a stock deduction. Core-sourced sales retain their existing Core sale deduction. |

Writebacks run in the background. A Cin7 Core error does not undo the completed WMS receipt or inventory adjustment.

For purchase receipts, WMS handles Cin7 Core's **Use put away** setting automatically.

To test and enable writeback:

1. Confirm that the connection, warehouse mapping and webhooks are working.
2. Complete the product import and review any opening-stock warnings.
3. Authorise a small test Advanced Purchase order in Cin7 Core for the mapped warehouse.
4. Confirm that the order and its products appear correctly in WMS.
5. Confirm that receiving and movement locations are linked to active Core bins.
6. Turn on **Enable Cin7 Core writeback** and wait for **Saved** before receiving or moving stock in WMS.
7. Receive the controlled purchase, then test a bin movement and an adjustment. Confirm quantities and tracking details in both systems.
8. Review **Operations > Background work** and **System > Process Logs** before starting normal warehouse operations.

Writeback is not retroactive. Receipts, adjustments and movements completed while writeback is off are not sent later when you enable it.

## Optionally enable outbound Pick/Pack writeback

**Enable outbound Pick/Pack writeback** is separate from inventory writeback and is off by default. For supported sales imported at **Ordered**, WMS authorises and verifies Cin7 Core Pick and Pack before requesting a shipping label. Starshipit continues to handle Ship and tracking updates.

Use this only when all these conditions apply:

* The Starshipit Cin7 Core connection uses API v2 sale import for the same Core account, without enhanced fulfilment import.
* The order is a full **Simple Sale** in the mapped warehouse with one existing sale-level fulfilment.
* The full sale is packed into one Starshipit package, with at most 20 distinct products.
* All packed stock has exact bin and batch or serial attribution where required.
* The sale has no previous shipment or return.

Partial quantities, Advanced Sales, multiple fulfilments and multiple packages are not supported by this setting. Existing authorised Pick/Pack records must match exactly; WMS does not overwrite existing work.

1. Prepare an eligible Ordered sale in a non-production Cin7 Core and Starshipit account.
2. Turn on **Enable outbound Pick/Pack writeback** and wait for **Saved**.
3. Pack the full sale in WMS and request its label.
4. Confirm Pick and Pack in Core, the label in Starshipit, and the subsequent Ship and tracking update before enabling this workflow for live orders.

If Pick/Pack validation or writeback fails, printing is blocked. Review the Core sale and process status before continuing. Do not delete or requeue an uncertain operation to bypass the error. Successful Pick/Pack alone does not confirm shipping succeeded.

## Monitor background work and process logs

Check **Step 3: Complete setup** in the Cin7 Core settings for the latest product import, opening-stock run and webhook status. Completed import cards offer **Import products again** and **Apply opening stock again**. The latter makes a fresh Core snapshot authoritative for existing WMS stock; review the opening-stock guidance before using it.

Use **Operations > Background work** for a quick operational view:

* **Tracked jobs** shows product imports and opening-stock imports, including progress and warning counts.
* **Queue activity** shows recent product updates, stock updates, purchase-order updates and writebacks.
* **Retryable** means WMS plans another attempt after a temporary response such as rate limiting.
* **Needs review**, **Failed** or **Dead letter** means you should inspect the error before changing data in either system.

Use **System > Process Logs** for detailed warnings and audit information. Look for entries related to Cin7 Core, inventory sync, purchase orders or stock movements.

If a writeback outcome is uncertain, check Cin7 Core before repeating the WMS action. WMS avoids automatically repeating an operation when doing so could create a duplicate receipt or adjustment.

## Understand the limitations

The direct integration does not:

* Automatically import later changes to the Cin7 Core location catalogue.
* Send bin-based movements from locations without valid Core bin links.
* Replace the existing Starshipit and Cin7 Core sales-order and shipment flow.
* Write back cross-warehouse transfers, assemblies or kitting, or create customer return and credit documents in Core.
* Apply fractional stock quantities automatically.
* Cancel or delete an imported WMS purchase order if the Cin7 Core purchase later becomes unauthorised or moves outside the mapped warehouse.
* Map more than one Cin7 Core warehouse to one WMS account.

## Troubleshooting

| Problem | What to check |
| --- | --- |
| No connected Core account appears, or Test connection is disabled | Configure an enabled Cin7 Core connection in the Starshipit account connected to WMS, select API Version 2 and save. Return to WMS and select **Refresh**. |
| The connection test fails | Check the saved account ID and key in Starshipit, and confirm the Cin7 Core API application is active. If the error says the connection differs from the saved warehouse source, restore the original Core company connection. |
| The expected warehouse is missing | WMS lists active, top-level Cin7 Core locations only. Check the location in Cin7 Core, then test the connection again. |
| A Cin7 Core location import cannot start | Check the saved Starshipit connection and mapped warehouse, then wait for **Saved**. Resolve duplicate location names beneath the warehouse or ambiguous same-name WMS locations, then wait for any other location import to finish. |
| A product, opening-stock or webhook action is disabled | Turn on **Enable Cin7 Core sync** and wait for **Saved**. Complete any required fields or resolve a **Not saved** error. Wait for an active import to finish. Repeating opening stock also requires account-wide inventory adjustment permission. Writeback can remain off. |
| A product is missing | Confirm it is an active Cin7 Core **Stock** product with a non-empty SKU, then check Background work. |
| A purchase order is missing | Confirm it is an authorised, non-service Advanced Purchase for the mapped warehouse and every stock line has a product, SKU, positive whole-unit quantity and valid non-negative price. |
| Opening stock has warnings | Check for existing WMS stock, fractional quantities, missing bin links or unbinned Core stock without a reconciliation location. |
| Inventory differs after a webhook | Check bin links, tracking details, fractional quantities, allocated or container-held stock, and unresolved outbound writes. Review Process Logs. |
| Webhooks are not active or changes stop arriving | Check the saved Starshipit API v2 connection, then select **Register webhooks** or **Update webhooks** in WMS. Confirm all four events show **Active** and check Background work and Process Logs. Contact support if notifications still do not arrive. |
| A receipt or adjustment did not write back | Confirm both sync and writeback are enabled, the record is linked to Cin7 Core, and the operation was completed after writeback was enabled. Check Background work and Process Logs. |

If the problem continues, contact [Starshipit support](https://help.starshipit.com) with the affected WMS account, SKU or purchase-order number, the time of the event and the Background work or Process Logs status. Do not include API keys or webhook secrets.

## Related articles

* [Cin7 Core integration for sales orders and shipping](/articles/211651203-cin7-core-integration)
* [Set up WMS locations and your warehouse](/articles/14700000000033-starshipit-wms-locations-and-warehouse-setup)
* [Configure WMS products and inventory](/articles/14700000000006-starshipit-wms-products-and-inventory-configuration)
* [Manage suppliers and purchase orders](/articles/14700000000007-suppliers-and-purchase-orders)
* [Receive stock in WMS](/articles/14700000000008-receiving-stock)
