Compare and replace product names and descriptions using barcodes

Topic summary

A Shopify store owner needs to automate updating product titles and descriptions by matching barcodes from an Excel file against their store inventory. Currently, they manually review and update products daily as new items sync automatically from suppliers, making the process extremely time-consuming.

Proposed Solutions:

  • App-based approaches: Multiple apps were recommended including Matrixify/Excelify (can import via Excel/CSV with barcode matching and scheduled imports), Ablestar Bulk Product Editor (allows spreadsheet uploads with barcode-based updates and undo functionality), and Scan2Sell (upcoming app for barcode scanning).

  • Custom code solution: A Python example was provided using pandas for Excel handling and Shopify API to iterate through products, compare barcode matches, and update mismatched titles/descriptions. Developers noted this requires the GraphQL API (REST API is being deprecated next year).

Key Requirements:

  • Match products by barcode between Shopify store and Excel file
  • Update only when title/description differ
  • Leave unmatched products unchanged
  • Handle daily/real-time product syncs
  • Ideally run on a schedule

The discussion remains open with multiple viable solutions offered but no final decision indicated.

Summarized with AI on November 3. AI used: claude-sonnet-4-5-20250929.

Hi there,

I am looking for a method to import product names and descriptions by comparing the product’s barcode against an Excel list I have.

So, let’s say a product in my Shopify store has a barcode, for example, 9999900927917. The function should search for barcode 9999900927917 in the Excel file. If the same barcode is found in the Excel file on a product, the title and description should be compared to the title and description of the product in the Shopify store. If the data does not match, the title and description should be imported into the respective product, replacing the existing information.

If the barcode cannot be found in the Excel file, no action should be taken on the product in Shopify, and it should be left as is.

The Excel file should serve as the definitive source.

As it is now, I have to manually review all the products that are synced into Shopify daily and manually change the title and description by copying and pasting the information from the Excel file. This is incredibly time-consuming because there are constantly so many changes to the products in my store as they are automatically synced from the supplier.

What could be a solution? It would be practical to have an app that handles this and can be run manually or scheduled, but if it’s easier to solve via code, that’s of course also an option.

If any Shopify developer or expert has a suggestion for a solution, please drop a line so we can get in touch.

Hi,

We do have to use shopify admin api to update the product information.

We can do it but we need a custom code.

Let me know if you need help.

Thank you

1 Like

Hi,

There are two solutions -

  1. use apps (example - Excelify,Matrixify etc.)

  2. use custom code solution

Python code example

import pandas as pd
import shopify

# Read Excel file
df = pd.read_excel('product_data.xlsx')

# Shopify API setup
shopify.Session.setup(api_key="API_KEY", secret="API_SECRET")
session = shopify.Session("your-store.myshopify.com", "2023-10", "ACCESS_TOKEN")
shopify.ShopifyResource.activate_session(session)

# Iterate through products in Shopify
products = shopify.Product.find()
for product in products:
    for variant in product.variants:
        barcode = variant.barcode
        if barcode in df['Barcode'].values:
            # Get the row from Excel corresponding to this barcode
            excel_row = df[df['Barcode'] == barcode]
            new_title = excel_row['Title'].values[0]
            new_description = excel_row['Description'].values[0]

            # Compare and update if necessary
            if product.title != new_title or product.body_html != new_description:
                product.title = new_title
                product.body_html = new_description
                product.save()

shopify.ShopifyResource.clear_session()

Please note - You’ll need pandas for Excel file handling and ShopifyAPI for interacting with store.

2 Likes

Hi @entranced

Ieva here from Matrixify.

Matrixify can definitely help with this! The app works by Excel (or CSV) file Import. Generally in the file you already have you’d just need to add the headers:

  • Title
  • Body HTML
  • Variant Barcode [ID]

The Title column would have the Product Title as a value, Body HTML would contain the Product Description and Variant Barcode [ID] would contain the barcode. The app would then be forced to search for the product by Barcode and update the Product Title and Description.

Matrixify is also able to Import on a schedule as well!

For more details and with a bit of extra help on how you can set this up, please feel free to reach out to our support!

1 Like

Hi, it’s recurring because new products are automatically synced into the shop daily. Many of these “new” products are already included in the Excel list with the correct title and description. So a function is needed that checks the products daily or in real time.

Hi @entranced ,

If you’re open to using an app to help I’d recommend checking out our Ablestar Bulk Product Editor. With it, you can quickly update product title and descriptions by their barcode by uploading the spreadsheet to the app and configuring it similar to this:

A few advantages to doing it this way are that the app will warn you if a barcode matches more than one product and you can undo any modifications with a single click. There’s also some other features like finding all products with duplicate barcodes that you might find useful.

If you’re interested in a code solution let me know what your preferred tech stack is and I can also help point you in the right direction. One thing to keep in mind if you go the code route though is I recommend using the GraphQL API, not the REST API. The REST API is scheduled to be deprecated next year so if you’re looking for something to work long-term I’d go for GraphQL.

Happy to answer any other questions you might have about the app or setting up a way to do this in code.

Best,

Daniel

1 Like

Hi @entranced Our app, Scan2Sell, is launching soon and is designed to help you scan product barcodes to instantly upload images and detailed descriptions—no more manual data entry!

You can sign up for our waitlist on our website to be notified when we launch: scan2sell.io