Projects
Retail Pricing Automation Suite
2025
ElectronVue.jsVuetifyVuexPapaParseXLSXProcess AutomationData IntegrityDesktop App

Retail Pricing Automation Suite

A custom Electron desktop application that automates complex, multi-variant pricing strategies for a fashion retail Shopify store. The system processes over 5,000 products in seconds, cross-referencing vendor price lists (XLSX) with Shopify exports (CSV), applying dynamic size-based markups (XS–XXXL), cumulative pricing logic, and psychological price rounding — all with strict SKU-level data integrity checks to eliminate pricing errors in production.

A custom-built Electron desktop application that transforms a time-consuming, error-prone manual pricing process into a fully automated pipeline — processing over 5,000 fashion products with size variants in seconds.

The Problem

A fashion retail business managing thousands of products on Shopify faced a critical operational bottleneck: every time vendor prices changed, the team had to manually recalculate prices for each product across seven size variants (XS through XXXL), apply different markup percentages, ensure psychological pricing rules, and cross-reference SKUs between the vendor pricelist and their Shopify catalog. With over 5,000 products and multiple color-size combinations, this process was extremely slow, error-prone, and a constant source of pricing mistakes in production.

The Solution

A purpose-built desktop application that automates the entire pricing workflow. The user uploads two files — a Shopify product export (CSV) and a vendor pricelist (XLSX) — configures size-based markup percentages, and the application generates a ready-to-import CSV with all prices correctly calculated, validated, and formatted for Shopify.

How It Works

Application Data Flow

Price Calculation Pipeline

The pricing logic uses cumulative markups for larger sizes. While XS, S, and M each apply their percentage directly to the base price, XXL and XXXL build on top of the previous size tier — ensuring that the price gap between large sizes increases proportionally.

Data Integrity and SKU Cross-Referencing

Only products with matching SKUs in both files are processed. The system performs a bidirectional check: it identifies vendor products missing from Shopify and Shopify products missing from the vendor pricelist — ensuring complete transparency over what was and was not updated.

Key Features

Dual-File Upload with Validation

  • CSV upload with automatic header validation (checks for required fields: Variant SKU, Option1 Value, Option2 Value, Variant Price)
  • XLSX upload with automatic format detection supporting two distinct pricelist layouts
  • Clear/reset functionality for both uploads with state cleanup

Intelligent Format Detection

  • Automatically distinguishes between a simple pricelist format (SKU as first column header) and a complex multi-sheet format with dynamic color headers
  • Multi-sheet processing: parses all sheets in a workbook and merges products with the same SKU across sheets
  • Robust filtering of non-product columns (EURO, metadata, combination fields)

Configurable Size Markups

  • Interactive table with percentage inputs for each size (XS through XXXL)
  • Input validation (0–100% range)
  • Real-time state updates via Vuex

Psychological Price Rounding

  • All final prices are rounded to end in either 5 or 9 (e.g., 49.95 or 49.99)
  • Follows retail pricing best practices for perceived value

Comprehensive Statistics Dashboard

  • Products in Shopify CSV vs. vendor pricelist
  • Number of products and variants successfully updated
  • List of SKUs present in Shopify but missing from the pricelist

Shopify-Ready CSV Output

  • Generates a properly formatted CSV with Handle-based parent/child structure
  • First variant per product includes full metadata (Title, Option Names)
  • Subsequent variants omit redundant fields for clean Shopify import
  • Automatic download trigger upon completion

Technology Stack

  • Runtime: Electron for cross-platform desktop deployment (Windows, macOS, Linux)
  • Frontend: Vue.js 3 with Composition API
  • UI Framework: Vuetify 3 for Material Design components
  • State Management: Vuex 4 for centralized application state
  • CSV Parsing: PapaParse for robust, header-aware CSV processing
  • Excel Parsing: SheetJS (xlsx) for multi-sheet workbook processing
  • Testing: Jest with Vue Test Utils for component and unit testing
  • Build: Vue CLI with Electron Builder for native installers (NSIS, DMG, AppImage)
Stefanos GavouchidisStefanos Gavouchidis