How to combine 10 price lists from different suppliers into one consolidated catalog?
-
Zinaida Rumyantseva
Copywriter Elbuz
You work with 10 suppliers. Each one sends their own price list: some in Excel with Cyrillic column names, some in CSV with semicolons, and still others in PDF format that still needs to be parsed. One lists the product as "Samsung Galaxy S24 128GB Smartphone," another as "Samsung S24 128GB Black," and a third as "Samsung Galaxy S24 Phone (Black) 128GB." Are these three different products or one? We'll figure out how to transform the chaos of dozens of price lists into a single, structured catalog.
Problems of combining multiple price lists
When working with multiple suppliers, consolidating their data becomes a significant challenge. Let's look at the main issues every online store faces.
1. Different file formats
- Excel (.xls,.xlsx) — 40% of suppliers use older versions with Cyrillic
- CSV with different delimiters — comma, semicolon, tab
- XML/JSON — modern APIs, but each has its own structure
- Online tables — Google Sheets that update in real time
- PDF — the most problematic format, requiring OCR and parsing
2. Differences in data structure
Example: Different column names
Supplier A: Item | Name | Price | Availability
Supplier B: SKU | Product | Price (EUR) | Stock | Brand | Category
Supplier B: Code | Name | Wholesale Price | Retail Price | Moscow Warehouse | St. Petersburg Warehouse
3. Identical products with different names
This is the most critical issue. The same product from different suppliers may look like this:
- Smartphone Apple iPhone 15 Pro 256GB Blue Titanium
- iPhone 15 Pro 256GB Titanium Blue
- Apple iPhone 15 Pro 256GB Blue
- iPhone 15 Pro (A2848) 256GB Blue
Without the correct matching algorithm, the system will create 4 different product cards instead of one.
4. Data conflicts
Typical conflicts:
- Prices: The same product costs €499 from supplier A and €520 from supplier B.
- Remaining: One says "15 in stock," the other says "to order in 3-5 days."
- Specifications: The weight is indicated as "1.2 kg", "1200 g", "1200"
- Categories: One classifies the product as "Smartphones", the other as "Mobile phones"
5. Regional and currency differences
If you work with international suppliers:
- Prices in different currencies (EUR, USD, GBP, PLN)
- Different number formats: 1,234.56 (US) vs 1,234.56 (EU)
- Units of measurement: inches/cm, pounds/kg, gallons/liters
- Different languages for product descriptions
Price List Consolidation Steps: A Step-by-Step Process
Step 1: Inventorying Data Sources
Create a register of all suppliers and their prices:
- Identification: Assign a unique ID to each supplier
- Formats: Document the file format, encoding, and delimiters.
- Refresh rate: How often does the supplier update the price list?
- Method of obtaining: Email, FTP, API, download from website
- Priority: Rank suppliers by importance (primary/backup)
Example of a supplier register
| ID | Name | Format | Update | Priority |
| SUP001 | TechDistrib EU | CSV (UTF-8,;) | Every day at 6:00 AM | 1 (main) |
| SUP002 | Global Electronics | XML (API) | Real-time mode | 2 |
| SUP003 | LocalWholesale | Excel 2007 | On Mondays | 3 (backup) |
Step 2: Standardize the data structure
Create a single data schema (master template) to which all price lists will be converted:
Required fields:
- supplier_id — supplier identifier
- supplier_sku — the supplier's product code
- master_sku — your internal article number (filled in after matching)
- product_name — name of the product
- price — price in single currency (EUR)
- stock_status — availability status (in_stock / out_of_stock / preorder)
- stock_quantity — quantity in stock
Additional fields:
- brand - manufacturer
- category — product category
- ean — barcode (EAN-13/UPC)
- mpn — manufacturer's number
- attributes — characteristics (JSON)
- images — links to images
- description — product description
- updated_at — date of last update
Step 3: Parsing and Normalization
For each price list, create a parser that converts the data into a uniform format:
Normalization of names:
- Removing extra spaces and special characters
- Unification of Title Case
- Standardization of units of measurement (GB → GB → 128GB)
- Removing information garbage ("!!!", "BESTSELLER", "PROMOTION")
Price normalization:
- Convert to a single currency (use current rates)
- Removing currency symbols and formatting
- Convert to a single format (float, 2 decimal places)
Normalization of residuals:
- "In stock" → in_stock (quantity > 0)
- "On order", "3-5 days" → preorder
- "Out of stock", "0" → out_of_stock
Step 4: Matching
The most difficult step is to determine that goods from different suppliers are identical.
Levels of comparison (from exact to approximate):
- By EAN/UPC: Barcode - 100% accurate (if suppliers provide it)
- According to MPN: Manufacturer's number - 95% accuracy
- By supplier article number: If you have already matched this SKU before
- By brand + model: Apple + iPhone 15 Pro 256GB Blue
- By a fuzzy comparison of names: Levenshtein algorithm with a threshold of 85%+
Example of matching algorithm
Step 1: Looking for an exact match by EAN
Product A (EAN: 1234567890123) = Product B (EAN: 1234567890123) → Match found
Step 2: If EAN is missing, check MPN
Product A (MPN: A2848) = Product B (MPN: A2848) → Match found
Step 3: Extracting brand and key attributes
"Samsung Galaxy S24 Ultra 512GB Titanium Gray"
→ Brand: Samsung | Model: Galaxy S24 Ultra | Memory: 512GB | Color: Titanium Gray
Step 4: Compare by key attributes
If the brand, model, and memory match (80%+ of the fields) → Probable match (requires verification)
Data Unification: Resolving Inconsistencies
Problem 1: Different units of measurement
Examples of conflicts:
- Weight: "1.5 kg" vs "1500 g" vs "3.3 lbs"
- Screen size: 6.7 inches vs 6.7 inches vs 17 cm
- Capacity: "128GB" vs "128GB" vs "128GB"
Solution: Create a unit reference book and converters
Problem 2: Different Currencies
Prices are available in USD, EUR, GBP, and PLN. Required:
- Get up-to-date exchange rates (Central Bank API or services like Fixer.io)
- Convert all prices to your store's base currency
- Maintain the original currency and exchange rate for transparency
- Update rates at least once a day
Example of price conversion
Supplier A (UK): £449 → €529 (rate 1 GBP = 1.178 EUR)
Supplier B (US): $499 → €465 (rate 1 USD = 0.932 EUR)
Supplier B (EU): €510 → €510 (no conversion)
Result: The best price from supplier B is €465
Problem 3: Different date and time formats
- US: MM/DD/YYYY (12/25/2024)
- EU: DD.MM.YYYY (25.12.2024)
- ISO: YYYY-MM-DD (2024-12-25)
- Timestamp: 1735084800
Solution: Convert all dates to ISO 8601 format (YYYY-MM-DD HH:MM:SS)
Problem 4: Product categorization
Each supplier has its own category system. Create a mapping:
- Supplier A: "Mobile Phones" → Your category: "Smartphones"
- Supplier B: "Smartphones & Tablets" → "Smartphones"
- Supplier B: "GSM Phones" → "Smartphones"
Conflict Resolution: Rules of Priority
When a single product is available from multiple suppliers, it is necessary to decide whose data to use.
Strategy 1: Price Priority
Rule: Always choose the lowest price
- Pros: Maximum competitiveness
- Cons: There may be low margins and quality issues.
- Application: Locomotive goods, mass retail
Strategy 2: Prioritize Reliability
Rule: Prefer trusted suppliers
- Reliability criteria: Work history, % defects, delivery speed
- Pros: Fewer returns, stable supplies
- Cons: It may be more expensive
- Application: Premium segment, technology, electronics
Strategy 3: Prioritize Availability
Rule: Select a supplier with the product in stock
- In stock → higher priority than preorder
- Large balance (50+ pcs) → higher priority than small (1-5 pcs)
- Warehouse in your region → higher priority than remote
Strategy 4: Weighted Priority (Recommended)
Calculate the final score for each sentence:
Priority formula
Score = (Price Weight × Price Score) + (Reliability Weight × Reliability Score) + (Stock Weight × Stock Score)
Example calculation for the iPhone 15 Pro 256GB:
Supplier A:
- Price: €1099 (Score: 90/100, because it's €50 cheaper than average)
- Reliability: 95/100 (top supplier)
- Availability: 80/100 (15 units in stock)
- Total: 0.4×90 + 0.3×95 + 0.3×80 = 88.5
Supplier B:
- Price: €1049 (Score: 100/100, lowest)
- Reliability: 70/100 (average supplier)
- Availability: 50/100 (2 pcs, made to order in 3 days)
- Total: 0.4×100 + 0.3×70 + 0.3×50 = 76
Choice: Supplier A (88.5 > 76), despite the higher price
Setting up priority weights
Weights should depend on the product category:
- Mass-produced goods: Price 60% | Reliability 20% | Availability 20%
- Premium segment: Price 25% | Reliability 50% | Availability 25%
- Perishable: Price 30% | Reliability 30% | Availability 40%
Resolving Conflicts in Characteristics
If product descriptions differ:
- Brand, model, article number: We trust the official distributor
- Technical specifications: We take it from the official source (manufacturer's website)
- Descriptions: Combine the best parts or generate your own
- Images: Priority is given to high-quality photos (resolution, background)
Automation of the merging process
Automation tools
1. ETL systems (Extract, Transform, Load)
- Apache NiFi — a visual data pipeline designer (open-source)
- Talend — data integration platform (free/paid)
- Pentaho Data Integration — ETL for business (open-source)
2. Specialized e-commerce platforms
- Elbuz — automatic processing of supplier price lists → more details
- Channable — Feed management for marketplaces
- DataFeedWatch — optimization of product feeds
3. Own development
For complex cases (10+ suppliers, specific formats), consider creating your own solution:
- Python + pandas — CSV/Excel processing
- Python + Beautiful Soup — HTML parsing
- Python + pdfplumber — extracting data from PDF
- PostgreSQL + stored procedures — logic of comparison
- Redis/RabbitMQ — queues for processing large volumes
Architecture of the automated system
- Data Collector: Obtaining price lists from various sources
- Parser: Extracting data from files of different formats
- Normalizer: Reduction to a unified scheme
- Matching Engine: Product comparison
- Conflict Resolver: Conflict resolution according to the rules
- Master Data Storage: Storing a Union Catalog
- Export Engine: Upload to your store/CMS
Refresh rate
Select the optimal synchronization mode:
- Real-time (API): For products with rapidly changing stock levels
- Every 1-4 hours: For popular categories (electronics)
- Daily (night): For standard assortment
- Weekly: For low-turnover products
Important to consider when automating
- Logging: Keep a history of all changes for auditing
- Validation: Check the data for correctness before importing
- Notifications: Alerts for critical errors or anomalies
- Rollback: Ability to revert to a previous version of data
- Monitoring: Dashboards with import metrics and errors
Real Case: Online Electronics Store
Initial data
Company: Online store of household appliances and electronics (Poland)
Problem: 12 suppliers, 45,000 products, manual price updates 3 times a week (16 hours of manager work)
Data sources
- 4 providers - CSV (different encodings and separators)
- 3 providers - Excel (different versions)
- 2 providers - XML via FTP
- 2 providers - API (JSON)
- 1 provider - Google Sheets (updated hourly)
Solution
Step 1: We created a unified data schema with 25 required fields.
Step 2: We wrote 12 parsers for each provider (Python + pandas)
Step 3: Implemented a matching algorithm:
- By EAN - 78% of goods (35,100 pcs)
- By MPN - 12% of goods (5,400 pcs)
- By fuzzy comparison of names - 8% of goods (3,600 pcs)
- Manual inspection - 2% of goods (900 pcs)
Step 4: Set up priority rules:
- Locomotive products (100 SKUs) - minimum price
- Premium brands are a reliable supplier, even if they are 3-5% more expensive
- The rest are a weighted priority (price 40%, reliability 30%, availability 30%)
Results after 6 months
- Time saving: From 16 to 2 hours per week (-87%)
- Data relevance: Updates twice a day instead of three times a week
- Revenue growth: +€180,000 due to more accurate balances (+12%)
- Reducing returns: -€24,000 thanks to correct descriptions (-18%)
- Procurement optimization: Save €45,000 by choosing the best supplier prices
- Project ROI: 620% (paid back in 2 months)
Key insights
- 80/20 Rule: 78% of products are automatically matched by EAN
- Data validation is critical: 5% of price lists contain errors
- Monitoring anomalies is important: the system should alert you to sharp price fluctuations.
- Human intervention is impossible: 2% of products require manual inspection
International Adaptation: Multiregionality
Working with international data formats
When working with suppliers from different countries:
Number formats:
- US/UK: 1,234.56 (comma is the thousands separator, period is the decimal point)
- EU: 1.234.56 (the period is the thousands separator, the comma is the decimal point)
- Solution: Detect format automatically or set it for each supplier
Text encodings:
- UTF-8 (universal, recommended)
- Windows-1251 (Cyrillic, obsolete)
- ISO-8859-1 (Western Europe)
- Solution: Autodetection of encoding (chardet library for Python)
Multicurrency: Price Management
Strategy 1: Single Base Currency
Convert all prices to one currency (e.g. EUR):
- Use APIs with up-to-date rates (ECB, Fixer.io, CurrencyLayer)
- Update your rates at least once a day
- For B2B, you can fix the rate for a period (week/month)
- Keep the original currency and conversion rate for auditing
Strategy 2: Multi-currency Catalog
Store prices in their original currencies and convert them when displaying to clients:
- Allows you to avoid the accumulation of rounding errors
- Current prices in real time
- It is more difficult to compare offers from different suppliers
An example of a multi-currency scenario
Product: Sony PlayStation 5
Supplier A (UK): £479.99
Supplier B (US): $549.99
Supplier B (EU): €549.99
Conversion to EUR (rates as of 15.01.2025):
- Supplier A: £479.99 × 1.178 = €565.43
- Supplier B: $549.99 × 0.932 = €512.59
- Supplier B: €549.99
Choice: Supplier B (US) - €512.59 (best price after conversion)
Taxes and customs duties
If you work with external suppliers:
- VAT: Consider whether VAT is included in the supplier's price
- Customs duties: Add to the cost of goods from outside the EU
- Delivery: International deliveries are more expensive than local ones
Conclusion
Consolidating price lists from multiple suppliers is a complex, but solvable, task. Key findings:
- Standardization is the basis: Create a single data schema to which all sources are converted
- Automation is critical: Manual processing of 10+ price lists takes 15-20 hours per week
- Comparing products is the most difficult stage: Use EAN/MPN where possible, for the rest - fuzzy search algorithms
- Priority rules should be flexible: Different strategies for different product categories
- Monitoring and validation are mandatory: 5-10% of data may arrive with errors
- ROI is high: The systems pay for themselves in 2-4 months due to time savings and procurement optimization.
Start by taking inventory of your data sources, identifying priority providers, and creating a unified schema. Automate the process gradually—first parsing, then matching, then conflict resolution.
Ready to automate your price list management?
Learn more about data management strategies in our A complete guide to importing and synchronizing data.
Automate the processing of price lists from all your suppliers with Elbuz platforms.
- Problems of combining multiple price lists
- Price List Consolidation Steps: A Step-by-Step Process
- Data Unification: Resolving Inconsistencies
- Conflict Resolution: Rules of Priority
- Automation of the merging process
- Real Case: Online Electronics Store
- International Adaptation: Multiregionality
- Conclusion
Save a link to this article
Zinaida Rumyantseva
Copywriter ElbuzIn the world of automation, I am the weaver of the story of your prosperity. Here, every sentence is a drop of a catalyst for success, and I am ready to guide you along the path of an effective Internet business!
Discussion of the topic – How to combine 10 price lists from different suppliers into one consolidated catalog?
How to combine 10 price lists from different suppliers into one consolidated catalog?
There are no reviews for this product.


Write a comment
Your email address will not be published. Required fields are checked *