Supplier Price List vs Catalog: CSV Comparison avatar

Supplier Price List vs Catalog: CSV Comparison

Pricing

$0.20 / 1,000 supplier row processeds

Go to Apify Store
Supplier Price List vs Catalog: CSV Comparison

Supplier Price List vs Catalog: CSV Comparison

Compare supplier prices with your catalog by SKU before a bulk update. Export proposed price changes and exceptions for conflicting prices, invalid values and unknown SKUs. Preserves leading-zero SKUs and Hebrew text. Includes a synthetic demo; does not update Shopify.

Pricing

$0.20 / 1,000 supplier row processeds

Rating

0.0

(0)

Developer

Shay

Shay

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Catalog CSV Reconcile — Supplier Prices vs Current (Shopify / Matrixify / Google Shopping Prep)

Pay-per-event (PPE) Actor for ecommerce ops: compare a supplier price-update CSV against your current catalog CSV and emit a reviewable change set.

Outputs in one run:

  1. Proposed changes — matched SKUs with a clear old → new price delta
  2. Exceptions — withheld rows (conflicting duplicates, invalid prices, unmapped new SKUs, missing SKUs)
  3. SUMMARY JSON — key-value store record with counts, reason tallies, and disclosures

This is a reviewable change proposal, not an unattended Shopify, Matrixify, or Google Merchant Center import.

Store: https://apify.com/royal_paddle/catalog-reconcile-csv
Try with empty input: schema defaults + bundled samples run the synthetic demo successfully (no files required).

Who this is for

  • Shopify merchants / agencies preparing price updates before admin CSV or Matrixify import
  • Google Shopping / Merchant Center ops reconciling supplier files against an existing product feed (id / price style columns via overrides)
  • Teams that need a safe reconcile: proposals + explicit exceptions — no silent guesses

If you only need a one-off VLOOKUP, a spreadsheet may be enough. Use this Actor when you want repeatable runs, structured exceptions, and leading-zero / UTF-8-safe SKUs.

Honest disclosures (please read)

ClaimReality
Demo dataLogic and samples come from a synthetic pilot pack (invented products). Not prior client results.
Who built itAI coding agent (disclosed). Not billed as human engineering hours.
What it does not doDoes not log into Shopify/GMC, does not push live imports, does not invent product mappings for new SKUs.
CurrencySample assumes ILS, period decimals, comma thousands. Agree currency, tax, and separators with your buyer before production use.

If you need a human-reviewed agency engagement with destination Matrixify / GMC headers, scope that separately.

Features

  • Preserves leading-zero SKUs as strings (e.g. 001)
  • Preserves Hebrew / UTF-8 titles from the catalog
  • Withholds conflicting duplicate supplier prices (does not pick one silently)
  • Withholds invalid / negative prices, empty SKUs, and unmapped new SKUs
  • Accepts common price shapes (₪99.00, 99.00 USD) — strips symbols/codes; no FX conversion
  • Optional currencyNote recorded in SUMMARY
  • One paid event: row_processed; proposed changes and exception records are included

How to reconcile supplier CSV with catalog

  1. Paste or upload your current catalog CSV (sku + title + price / price_ils — or set column overrides).
  2. Paste or upload the supplier update CSV (sku + price / price_ils).
  3. Run the Actor — review proposed changes and exceptions in the dataset; open SUMMARY in the key-value store.
  4. Map accepted proposals into your Matrixify / Shopify / Google Shopping template offline (this Actor does not push live).

Try in one run (synthetic demo)

Leave inputs empty or keep the prefilled defaults. Expected synthetic outcome is under Sample I/O — invented products, not production catalogs.

Input

Provide CSVs as text fields and/or file uploads (file wins if both set). All fields optional — empty runs use bundled demo CSVs.

FieldRequiredDescription
currentCatalogCsv / currentCatalogFileno (demo if empty)Columns: sku, title, price_ils (or price)
supplierUpdateCsv / supplierUpdateFileno (demo if empty)Columns: sku, price_ils (or price); symbols/USD/ILS codes stripped
currencyNotenoFree-text note stored in summary
skuColumn / titleColumn / priceColumnnoOverride defaults — e.g. Shopify Variant SKU / Variant Price, GMC id / price

Sample I/O

Catalog (input)

sku,title,price_ils
001,כוס כחולה,89.00
002,כוס אדומה,99.00
003,מגבת פשתן,129.00

Supplier update (input)

sku,price_ils
001,₪99.00
002,99.00
003,119.00
003,125.00
004,79.00
005,-5.00
,49.00

Expected synthetic outcome (demo)

ResultCountTreatment
Proposed price change1SKU 001: 89.00 → 99.00
Unchanged1SKU 002 stays 99.00
Conflicting duplicates2Both 003 prices withheld
Unmapped new SKU1004 needs mapping
Invalid price1Negative withheld
Missing SKU1Row withheld

Dataset items (shape)

  • proposed_changesku, title, oldPrice, proposedPrice, difference, sourceLine
  • exceptionsku, sourceLine, originalPrice, reason
    Reasons: duplicate_sku_requires_resolution, new_sku_requires_mapping, invalid_price, missing_sku

Key-value store: SUMMARY — counts, exception tallies, full lists, disclosure flags.

Pricing

$0.20 per 1,000 supplier CSV data rows processed ($0.0002 per row). Catalog lookup, proposed changes, exception records and platform usage are included. There is no separate startup or output charge. The live Pricing tab is authoritative.

For example, 1,000 supplier rows cost $0.20 whether they produce 50 changes, 20 exceptions or no price changes. This is the customer price, not the developer profit.

A synthetic test on build 0.2.1 with 1,000 catalog rows and 1,000 supplier rows completed in 52 seconds at 256 MB. Larger files and different data may take longer. Set a run spending limit and review the final status and output counts before using results.

For scheduled workflows, supply both fresh CSV files explicitly. Missing input can fall back to demonstration data. Require a SUCCEEDED run and verify that dataset item count equals SUMMARY.proposedChangeCount + SUMMARY.exceptionCount before producing an import proposal.

FAQ

Empty run / “Just try it” — will it succeed?

Yes. If both catalog and supplier inputs are empty, the Actor loads bundled samples/ (or inline fallbacks) and completes with the synthetic demo outcome above. Useful for Store QA and first-look buyers.

You supply your own CSVs. The Actor only compares files you provide; it does not scrape sites or access Shopify/GMC accounts. Review disclosures: synthetic demo, AI-built, no live push, agree currency/tax with your buyer. Output is a proposal for human review.

How is this different from Excel VLOOKUP / XLOOKUP?

A spreadsheet can perform this comparison with suitable formulas and validation. This Actor provides a repeatable API run with structured proposals, exceptions and SUMMARY JSON.

Shopify / Matrixify / Google Shopping — what does “prep” mean?

Prep only, unofficial. Shopify admin CSV, Matrixify, and Google Merchant Center are separate tools. This Actor does not emit a finished Matrixify template or GMC feed and does not upload anywhere. Typical flow: reconcile here → review → map accepted rows into your destination columns offline → import under your process. Brand names describe common prep destinations only.

Which column names should I use?

Defaults: sku, title, price_ils (fallback price / variant_price). For Shopify Matrixify-style exports, set overrides (e.g. skuColumn = Variant SKU, priceColumn = Variant Price). For Google Shopping–style feeds, try skuColumn = id and priceColumn = price.

Currency, tax, and separators?

No FX conversion and no tax logic. Samples assume ILS-style amounts with period decimals. Confirm currency, VAT/tax, and thousand/decimal separators before production. Optional currencyNote is stored in SUMMARY only.

Will it create new products for unknown SKUs?

No. Unmapped new SKUs → new_sku_requires_mapping. Conflicting duplicates → duplicate_sku_requires_resolution. Invalid/missing → withheld. Nothing is silently guessed.

Limitations

  • No FX conversion; no tax logic
  • New SKUs are never auto-created
  • Duplicate conflicting prices are never auto-resolved
  • Output is not Matrixify/GMC-ready until you map columns with the buyer
  • Sample CSVs are synthetic

Operator

Published by royal_paddle. Use the Actor Issues tab for reproducible problems. Samples are synthetic and the implementation is AI-assisted.