M.I.A.I

Catalogue operations

How to Automate Supplier Catalogue Onboarding Without Publishing Bad Data

To automate supplier catalogue onboarding safely, treat every file as a proposed change rather than a finished catalogue. Load it into a staging area, map its fields to an approved model, validate every record, preview the exact changes, publish only the records that pass and retain a complete result for review or retry. Automation should remove repetitive work while keeping product identity, ownership and approval rules intact.

Dla powtarzalnej wersji tego procesu, odkryj M.I.A.I Automatyzacja katalogów.

Why catalogue onboarding becomes a recurring bottleneck

A new supplier rarely sends data in the shape an ecommerce system expects. One spreadsheet may contain a product per row, another may repeat the parent product for every variant, and a third may split prices, images and stock into separate files. Column names change, category labels differ and important values arrive inside free-text descriptions.

Teams often solve the first file manually and then repeat the same corrections when the next version arrives. That creates a hidden operating cost: copying values, rebuilding categories, checking duplicates, locating failed rows and deciding whether a blank field means remove the old value or leave it alone. The catalogue grows, but the onboarding process does not become safer or faster.

Useful automation converts those repeated decisions into a governed workflow. It does not assume that every supplied value is trustworthy, and it does not make publication the first step.

Define the publishing contract before accepting a file

Start by documenting what a publishable product must contain. The contract should distinguish product fields, variant fields, commercial fields and channel-specific fields. It should state which identifiers are required, which system owns each value, what formats are accepted and what happens when a source sends a blank, duplicate or invalid value.

For a Shopify destination, the contract might require a stable source identifier, title, product status, option definitions and at least one valid variant. Price and inventory may come from an ERP rather than the supplier file. Images may be optional for a draft but mandatory before activation. Google Merchant Center may require further attributes according to product type, market and destination.

This contract gives automation a clear boundary. A row either satisfies a known rule, can be transformed by an approved mapping or needs review. Without that boundary, a fast import merely moves uncertainty into the live catalogue.

  • Required identity fields and the system that issues each identifier
  • Approved product, variant, price, inventory and media owners
  • Accepted data types, units, controlled values and character limits
  • Rules for blanks, removals, replacements and unchanged values
  • Draft, review and active publication requirements
  • Channel-specific requirements for Shopify and product feeds

Land every source in a staging area

Keep the original upload unchanged and assign it a batch identity. Record the supplier, filename, received time, schema version, row count and file checksum. This creates a reliable starting point when a supplier later asks why a value changed or sends a corrected file with the same name.

Parse the file into staging records without writing to the live store. Preserve the raw row beside any transformed values. If related files arrive separately, link them through explicit source keys rather than row position. A product file, stock file and image file can then be processed independently without pretending they were one perfect export.

Schema drift should be visible. New, renamed or missing columns should pause the affected mapping instead of silently shifting data into the wrong fields. The system can continue processing unaffected records while presenting the change that needs a decision.

Turn approved mappings into reusable rules

Mapping is more than matching column names. A supplier column called Item may be a supplier identifier, while another supplier uses Item for a customer-facing title. Each mapping needs a source field, destination field, transformation, validation and ownership rule.

Automate safe, repeatable transformations such as trimming whitespace, standardising approved category labels, converting known units and separating option values. Keep the original value and the applied rule so the result remains explainable. Values that cannot be interpreted confidently should stay in review rather than being guessed.

Version the mapping. When a category rule or destination field changes, new batches can use the new version while earlier jobs retain the rule set that produced them. This is essential for investigating a catalogue update after the source file has changed.

  1. Profile the source columns and sample values.
  2. Map each column to a product, variant, relationship or commercial field.
  3. Attach an approved transformation and validation rule.
  4. Test the mapping against representative and deliberately difficult rows.
  5. Version and approve the rule set before enabling repeat runs.

Validate the complete proposed catalogue before writing

Validation should run at field, record, relationship and batch level. Field checks catch invalid dates, prices, units and controlled values. Record checks confirm required attributes and valid variant combinations. Relationship checks identify missing parents, duplicate identifiers and images assigned to unknown products. Batch checks expose unusual totals, such as a file that would archive half the catalogue.

Google Merchant Center says accurate and correctly formatted product data is essential and documents required formats and minimum requirements for attributes. The landing page and submitted data also need to agree. Feed errors are therefore useful catalogue-quality signals, but the same checks should happen before data reaches a feed.

Produce a clear result: ready, ready with warnings or blocked. Every blocked record should show the source row, failed rule and corrective action. A percentage score without record-level detail does not help the person who must fix the file.

Calculate a change set instead of replacing blindly

Compare staged records with the current destination and classify each operation as create, update, leave unchanged, archive or review. Show the exact fields that differ. This prevents a full file from becoming a full rewrite and makes the impact understandable before publication.

Use stable source and destination identifiers for matching. Titles, handles and descriptions are allowed to change and should not decide which product receives an update. Variant operations need the variant identity as well as the parent product identity so a price, SKU or barcode cannot move to the wrong option combination.

Be explicit about list replacement. Shopify documents that productSet treats list fields differently from scalar fields: included list values describe the desired complete state, while omitted scalar fields remain unchanged. A workflow must understand that distinction because an incomplete variant or collection list could remove entries that were not supplied.

Match approval effort to the risk of the change

Not every correction needs the same review. Approved whitespace cleanup and an established category synonym can be low risk. New products, identity changes, deleted variants, large price movements, compatibility claims and mass status changes deserve stronger controls.

Build approval rules around the proposed change set. The reviewer should see current and proposed values, source evidence, affected channels and the reason the rule fired. Approval should cover a defined batch and mapping version, not every future file from that supplier.

For high-volume work, allow valid records to progress while blocked records remain in a correction queue. That shortens onboarding time without lowering the standard for publication.

  • Auto-approve transformations already tested and authorised
  • Require review for identity, deletion, compatibility and unusual commercial changes
  • Block batches whose totals fall outside an expected range
  • Keep rejected records with their reasons and source evidence
  • Record who approved the batch, what was approved and when

Publish in controlled batches with observable results

Large catalogues should be divided into deterministic batches. Give each operation an idempotency key so a retry does not create a second product or apply the same change twice. Respect platform limits, track progress and store the destination response for every record.

Shopify provides bulk mutation operations for large imports and returns an operation whose status and result can be checked. Its productSet mutation can also run asynchronously and returns structured user errors. The practical lesson is that submitting a job is not the same as completing it: automation must monitor the operation, collect errors and reconcile the final destination state.

Retries should target transient failures, not invalid data. A timeout or temporary rate limit can be retried with backoff. A rejected field, unknown identifier or invalid variant needs correction. Mixing both categories creates endless queues and makes a failed batch appear busy rather than broken.

A concrete example: onboarding 8,000 supplier parts

Consider a distributor receiving 8,000 parts with product details, variant pack sizes, prices, stock and images. NetSuite owns the item reference and price, Sage 200 owns stock for another division, and Shopify is the selling channel. The supplier file contributes descriptions, category suggestions and technical attributes but must not overwrite operational values.

The batch lands in staging and is profiled before any write. Existing records match through approved identifiers. New records receive proposed Shopify product and variant structures. Category mappings and unit conversions run automatically, while duplicate identifiers, missing parents and unexpected option combinations enter review.

The preview reports 6,920 unchanged records, 640 safe descriptive updates, 280 new drafts, 110 warnings and 50 blocked records. The business can approve the descriptive updates and drafts without waiting for the 50 faulty rows. Price and stock remain connected to their authorised systems.

Publication runs in controlled batches. Each Shopify result is recorded against the source record and destination ID. Failed platform operations are reconciled, successful items are checked in the destination, and the final report shows exactly what changed. The next supplier file reuses the approved mapping instead of restarting the manual exercise.

Keep ERP, supplier and storefront responsibilities separate

Catalogue automation works best when each field has an explicit owner. A supplier can own technical specifications, an ERP can own cost and availability, a product team can own customer-facing copy, and Shopify can remain the publication destination. The workflow combines those responsibilities without allowing the latest file to win every conflict.

This separation also controls direction. A Shopify edit may be allowed to update an approved presentation field but must not flow back over a governed ERP item number. An ERP stock update should not replace product copy. Ownership rules make connected systems useful without turning synchronisation into uncontrolled overwriting.

M.I.A.I Catalogue Automation is designed for workflow-based enrichment, attribute mapping, quality checks and human approval controls. It applies governed workflows to catalogue classification, enrichment and publishing preparation, including supplier onboarding, channel listing preparation and category standardisation.

Measure both speed and correctness

The useful measure is not how many rows the system touched. Track time from receipt to publishable catalogue, percentage of records processed without intervention, first-pass validation rate, blocked records by reason, destination error rate and time to resolve exceptions.

Also measure whether repeated work is disappearing. A good mapping should reduce manual corrections on the next supplier file. If the same exception returns every week, improve the rule, source contract or supplier feedback rather than paying someone to clear it repeatedly.

Review downstream outcomes: active listings with required attributes, products rejected by feeds, missing images, invalid variants, unexpected archives and differences between source-of-truth systems and destinations. Faster onboarding is valuable only when the resulting catalogue stays trustworthy.

Catalogue automation readiness checklist

  • A written publishing contract defines required fields and ownership.
  • Every upload is preserved and identified as an immutable source batch.
  • Mappings are tested, versioned and tied to explicit transformations.
  • Validation covers fields, records, relationships and whole-batch impact.
  • Stable identifiers match products and variants to destination records.
  • The preview distinguishes creates, updates, unchanged records, archives and blocks.
  • Approvals are proportional to risk and apply to a defined batch.
  • Bulk jobs are monitored through completion and their errors are reconciled.
  • Retries are idempotent and limited to genuinely retryable failures.
  • The final audit connects each source row to its destination outcome.

ZASOBY WŁASNE

Wytyczne stosowane w niniejszym artykule

PRZEGLĄD PYTAŃ

Pytania dotyczące integracji ecommerce i zawartości wyszukiwania AI

Should a supplier file publish directly to the store?

No. Load it into staging, validate it and preview the proposed changes first. Direct publication makes schema changes, duplicates and incomplete records much harder to contain.

Can valid products publish when some rows fail?

Yes, if the batch is designed for partial progress and the failed records remain clearly blocked with reasons. High-risk batch-level checks should still stop publication when the overall change is unsafe.

How do repeated imports avoid creating duplicate products?

Match with stable source and destination identifiers, preserve product and variant IDs, and give every write an idempotency key. Do not use a changeable title or handle as the primary match.

What should happen when a supplier removes a value?

Follow an explicit blank-value rule. A blank can mean remove, leave unchanged or block for review depending on the field owner and publishing contract.

Can Catalogue Automation connect Shopify with NetSuite and Sage 200?

Yes. Approved integrations can connect governed catalogue workflows with Shopify, NetSuite and Sage 200 while keeping field ownership, destination identifiers and approval controls explicit.