How to configure Shopify product sync
Once your Shopify store is connected, the next step is to tell the Shopify Connector which products to synchronize and how your Bizzkit PIM data should appear in Shopify. This guide walks through the three parts of that setup — sync rules, field mappings, and activation — so your catalogue flows from Bizzkit PIM to Shopify exactly the way you want.
Before you begin
This guide assumes your Shopify store connection is already in place and validated. If it is not, set it up first. You also need a Bizzkit PIM with the products and attributes you intend to publish.
Everything below is configured per store, and your settings apply only to your own store.
How configuration fits together
Configuration moves your store through three states:
stateDiagram-v2
[*] --> Connected : Shopify credentials saved
Connected --> Configured : Sync rules + field mappings saved
Configured --> Active : Synchronization activated
Active --> Configured : Synchronization deactivated
Active --> Active : PIM change received → synced to Shopify
| State | Meaning |
|---|---|
| Connected | Your Shopify credentials are stored and validated. |
| Configured | Sync rules and field mappings are in place — ready to activate. |
| Active | The connector is live, syncing PIM changes to Shopify as they happen. |
You can set up your sync rules and field mappings in either order. Activation comes last, and only becomes available once the connection and rules are in place. Activating explicitly means you can set up and review your whole configuration before any products reach your store.
Configure sync rules
Sync rules control which products are eligible to sync, how removals are handled, and which languages are published.
Sync activation attribute
The sync activation attribute is an opt-in gate: only products where this attribute is on are synced to Shopify. This keeps you in control of what reaches your store and prevents accidentally publishing your entire catalogue.
- Choose a single-valued boolean (
PBoolean) PIM attribute as the gate (for example, one named "Sync to Shopify"). A product syncs when that attribute is present and set to true. - The gate is optional. Leave it unset and every mapped product becomes eligible.
- When a product that was previously syncing becomes ineligible (the attribute turns false or is removed), the connector applies your configured action on delete to it in Shopify.
Action on delete
The action on delete decides what happens to a product in Shopify when it is deleted, unpublished, or made ineligible in PIM. Choose the level of caution that suits your store:
| Action | Effect in Shopify | Reversible? |
|---|---|---|
| Set as draft | Product is hidden from the storefront but kept | Yes |
| Archive | Product is archived and not visible | Yes |
| Delete | Product is permanently removed | No |
Set as draft is the recommended default. Deleting is irreversible and can break existing orders or links, so use it only when you are sure removed products should disappear entirely.
Language mappings
Language mappings connect a PIM segmentation to a Shopify locale, which is how the connector publishes multilingual content across your Shopify Markets:
- Each mapping pairs a PIM segmentation with a Shopify locale (for example, Danish or English).
- Exactly one mapping is your primary locale. The primary locale's values populate the base Shopify fields; the remaining locales are published as Shopify translations.
- Each Shopify locale can be used in only one mapping, and at least one mapping is required.
Translations are only published for attributes the connector determines to be translatable — see Map PIM data to Shopify below.
Map PIM data to Shopify
Field mappings define how your PIM data appears on Shopify products. Each mapping reads one PIM value source and writes it to exactly one Shopify destination. Mappings are managed one at a time, so you can start with the essentials and add more as you go — a product picks up a new mapping the next time it changes in PIM.
For each mapping you choose a source and a destination in Shopify, which is either a standard field or a metafield. The source is one of:
- A PIM attribute field — a specific field within one of your PIM attributes, named by attribute and
field system name (for example
COLOR.VALUE). The attribute must exist in PIM; the connector verifies it when you save the mapping. - A PIM master data field — a built-in product property: the product's unique name, its external string id, or its external integer id. Master data always holds a single, language-independent value per product, and each product or variant supplies its own value (master data is never inherited from a parent).
Map to a standard field
Standard fields are Shopify's built-in product and variant properties. Each field's level (product or variant) is fixed, so you do not choose it.
| Shopify field | Level | Value type | Notes |
|---|---|---|---|
| Title | Product | Text | Translatable; defaults to the product's PIM unique name when not mapped |
| Description | Product | Text | Translatable |
| Handle | Product | Text | The product's URL handle |
| Product type | Product | Text | |
| Tags | Product | Text (list) | Multivalued; syncing replaces all existing tags |
| Price | Variant | Number (decimal) | |
| Barcode | Variant | Text | For example, EAN or UPC |
Title always has a value
A product title is required in Shopify. If you do not map the Title field — or its PIM source is empty — the connector uses the product's PIM unique name as the title, so products still sync. Add a Title mapping whenever you want a merchant-friendly name; existing products pick it up the next time they change in PIM.
Note
Some Shopify fields are set for you and are not mapped here:
- A product's status (active, draft, or archived) is managed automatically — a product is active while it is eligible to sync, and follows your action on delete once it leaves sync.
- A variant's SKU and its option values come from the product structure in PIM.
Map to a metafield
Metafields hold custom data that has no built-in Shopify field. They exist at both product and variant level. For a metafield mapping you provide:
- Namespace — optional, and defaults to
custom. Thebizzkit_pimnamespace is reserved for the connector and cannot be used. - Key — the metafield key.
- Type — the Shopify metafield type, for example single line text, integer, or a list of integers.
- Level — whether the metafield is attached to the product or to the variant.
Multiple values and translations
You do not set "multivalued" or "translatable" options yourself — the connector derives them from the source when you save the mapping and shows them on the saved mapping:
- Multivalued reflects whether the PIM attribute can hold more than one value.
- Translatable is on only when the PIM field is localizable and the Shopify destination can carry per-language values (the Title and Description standard fields, and any metafield). For translatable mappings, the connector publishes the primary locale on the base field and the other locales from your language mappings as Shopify translations.
Master data sources are always single-valued and language-independent, so both options are off for them.
What gets validated
Each mapping is checked the moment you save it, so mistakes surface immediately rather than as a failed sync later. The connector checks that the value types are compatible, that translations only go to destinations that can hold them, and that the destination is not already in use.
Value type compatibility. The matrix shows which PIM attribute types can map to which Shopify value types. Standard fields have a fixed value type (see the table above); for a metafield, the value type is the metafield type you choose. PIM types are grouped into families by their PIM type name.
| PIM attribute type | Text | Number (integer) | Number (decimal) | True/false | Date | Date & time |
|---|---|---|---|---|---|---|
PString, PStringV, PChar |
✓ | ✗ | ✗ | ✗ | ✗ | ✗ |
PInt16, PInt32, PInt64 |
⚠ | ✓ | ⚠ | ✗ | ✗ | ✗ |
PDecimal1–PDecimal9 |
⚠ | ✗ | ✓ | ✗ | ✗ | ✗ |
PBoolean |
⚠ | ✗ | ✗ | ✓ | ✗ | ✗ |
PDateTime, PDateTimeOffset |
⚠ | ✗ | ✗ | ✗ | ⚠ | ✓ |
| Global-list reference | ⚠ | ✗ | ✗ | ✗ | ✗ | ✗ |
✓ supported · ⚠ supported, but the value is converted and the mapping is saved with a warning · ✗ not allowed, so the mapping is rejected.
Localizable PIM types (whose type name carries Translated, such as
PTranslatedString) share the value
type of their non-localizable counterpart and add translation support — see Translations below.
Master data sources follow the same matrix: the unique name and external string id behave as text, and the external integer id behaves as an integer.
Multiple values. A destination that holds a list — the Tags standard field and any list metafield
type — keeps every value of a multivalued PIM attribute. Mapping a multivalued attribute to a
single-value destination is allowed but saved with a warning, since only its primary value is sent and
the rest are dropped.
Translations. Only the Title and Description standard fields and metafields can hold
translations. A localizable PIM attribute can map to any of these; pointing one at any other standard
field is rejected.
To point a PIM attribute at a different Shopify destination, remove the mapping and create a new one — editing a mapping changes only its PIM source, not its destination.
Activate synchronization
With your connection, sync rules, and field mappings in place, activate synchronization. Activation subscribes the connector to PIM change notifications for your store and begins syncing; from this point, product changes in PIM flow to Shopify automatically.
| Action | Purpose |
|---|---|
| Activate | Start syncing and subscribe to PIM changes |
| Deactivate | Pause syncing; your configuration is kept |
| Status | Check whether syncing is active and when it was last activated |
Deactivating pauses synchronization without losing any configuration, which is useful during maintenance or store migrations. Reactivate at any time to resume.
Learn more
- Shopify Connector — what the connector does and how it fits into your Bizzkit solution.
- Data types — the full reference for the PIM attribute types you map from.
- Segmentations — how PIM models translation cultures and other dimensions used by your language mappings.