Sync Process for KatanaPIM Connect
Understanding how synchronization works in KatanaPIM Connect. Learn the difference between Full and Incremental sync, and when to use each.
Overview
KatanaPIM Connect synchronizes data in two stages:
- Import from PIM - Fetch data from KatanaPIM API into intermediate tables
- Create in Magento - Process intermediate data to create/update Magento entities
This two-stage approach allows you to review imported data before creating Magento products.
Sync Types
Full Update
A complete synchronization of all entities from KatanaPIM.
What it does:
- Fetches ALL products, categories, attributes, and assets from PIM
- Compares with existing data using hash comparison
- Marks items as "Needs Update" when changes are detected
- Can optionally trigger Magento reindex after completion
When to use:
- Initial setup and first import
- After major changes in PIM
- Weekly/daily scheduled maintenance
- When incremental sync has gaps
Run via CLI:
# Full sync of everything
bin/magento katana:import:full
# Sync specific entity types only
bin/magento katana:import:full --attributes
bin/magento katana:import:full --categories
bin/magento katana:import:full --products
bin/magento katana:import:full --assets
Incremental Update
A delta synchronization that only processes changed items.
What it does:
- Fetches only items modified since last sync
- Much faster than full update
- Lower server load
- Ideal for frequent updates
When to use:
- Regular scheduled updates (every few hours)
- After individual product changes in PIM
- To keep Magento in sync throughout the day
Run via CLI:
bin/magento katana:import:incremental
Sync Order
Entities should be synchronized in this order:
- Attributes - Required first for product data mapping
- Categories - Optional, needed if using PIM categories
- Products - Main product data
- Assets - Product images and videos (requires products)
The Full Update command handles this order automatically.
What Gets Synced
Products
| PIM Data | Magento Field |
|---|---|
| Product name | name (mapped attribute) |
| Description | description (mapped attribute) |
| SKU | sku |
| GTIN | gtin (mapped attribute) |
| Price data | price, special_price, cost |
| Category assignments | category_ids |
| Attribute values | Custom attributes |
Categories
| PIM Data | Magento Field |
|---|---|
| Category name | name |
| URL key | url_key |
| Parent/child hierarchy | path, level |
| Position | position |
Attributes
| PIM Data | Magento Field |
|---|---|
| Attribute code | attribute_code (katanapim_ prefix) |
| Attribute label | frontend_label |
| Attribute type | frontend_input |
| Options | attribute options |
Assets
| PIM Data | Magento Field |
|---|---|
| Image URL | Product gallery |
| Image order | position |
| Video URL | Product video |
| Alt text | label |
Hash Comparison
The module uses hash comparison to detect changes:
- When data is imported from PIM, a hash is calculated
- When Magento entity is created/updated, another hash is calculated
- If hashes differ, the item is marked "Needs Update"
- Matching hashes mean no update is required
This prevents unnecessary Magento saves and improves performance.
The "Needs Update" Flag
In all grids, you'll see a "Needs Update" column:
| Value | Meaning |
|---|---|
| Yes | PIM data differs from Magento - update recommended |
| No | Data is in sync - no action needed |
Items marked "Needs Update" will be processed during the next sync if automation is enabled.
The "Skipped" Flag
Mark items as "Skipped" to exclude them from synchronization:
- Skipped items are ignored during auto-sync
- Useful for products you don't want in Magento
- Can be set/unset via mass action
Automation Flow
When automation is enabled:
- Cron triggers based on configured frequency
- Incremental/Full Update fetches data from PIM
- Auto-create (if enabled) creates new Magento entities
- Existing items with "Needs Update" are updated
- Sync Log records the results
Manual vs Automatic Creation
Automatic (via cron):
- Enable "Auto create new products" in Automation settings
- New products are created automatically during sync
- Less control, more convenience
Manual (via grid):
- Leave auto-create disabled
- Review imported products in grid first
- Select items and use "Update/Create Magento Products" mass action
- More control over what gets created
Performance Tips
- Use Incremental for frequent updates (hourly)
- Use Full for periodic maintenance (daily/weekly)
- Adjust batch sizes if experiencing timeouts
- Disable reindex in production - run manually after sync
- Use CLI for large imports - avoids browser timeouts
Need More Help?
Documentation:
- All Help Articles - Complete documentation overview
Support:
- Contact Support - Get help from our team