
Shopify Admin Duplicate Sku Barcode Detector
- 7 installs
- 173 repo stars
- Updated June 26, 2026
- 40rty-ai/shopify-admin-skills
shopify-admin-duplicate-sku-barcode-detector is a Shopify Admin skill that finds product variants sharing the same SKU or barcode across a store's catalog.
About
A Shopify Admin skill that scans every product variant and reports SKUs or barcodes shared by two or more variants. It is read-only and paginates the Shopify Admin GraphQL productVariants query. Developers run it after bulk product imports to catch duplicates that cause inventory sync failures and order-routing errors. It outputs a CSV of duplicate groups for manual correction.
- Read-only scan of all product variants for duplicate SKUs/barcodes
- Uses Shopify Admin GraphQL productVariants query (API 2025-01)
- Outputs a CSV of duplicate groups for cleanup
Shopify Admin Duplicate Sku Barcode Detector by the numbers
- 7 all-time installs (skills.sh)
- Ranked #1,587 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
- Data as of Aug 1, 2026 (Skillselion catalog sync)
shopify-admin-duplicate-sku-barcode-detector capabilities & compatibility
Free; requires only an authenticated Shopify CLI session with read_products scope.
- Capabilities
- catalog audit · duplicate detection · data integrity check
- Use cases
- data analysis
- Pricing
- Free
What shopify-admin-duplicate-sku-barcode-detector says it does
Scans all product variants and identifies duplicate SKUs or barcodes — two or more variants sharing the same identifier.
Read-only skill — no mutations are executed. Safe to run at any time.
npx skills add https://github.com/40rty-ai/shopify-admin-skills --skill shopify-admin-duplicate-sku-barcode-detectorAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 7 |
|---|---|
| repo stars | ★ 173 |
| Last updated | June 26, 2026 |
| Repository | 40rty-ai/shopify-admin-skills ↗ |
What it does
Scan all Shopify product variants for duplicate or blank SKUs and barcodes before they break inventory sync and order routing.
Who is it for?
Catching duplicate or blank SKUs and barcodes after bulk product imports on a Shopify store.
Skip if: Fixing the duplicates automatically; it is read-only and only reports them.
When should I use this skill?
After every bulk product import, or when inventory sync or order routing is misbehaving.
What you get
A CSV listing every duplicate SKU/barcode group and blank-SKU variants for correction.
- CSV of duplicate SKU/barcode groups
- Count of blank SKUs
By the numbers
- Paginates 250 variants per page
- 6 CSV output columns
Files
Purpose
Scans all product variants and identifies duplicate SKUs or barcodes — two or more variants sharing the same identifier. Duplicate SKUs cause inventory sync failures, incorrect order routing, and accounting mismatches. Read-only — no mutations.
Prerequisites
- Authenticated Shopify CLI session:
shopify store auth --store <domain> --scopes read_products - API scopes:
read_products
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| store | string | yes | — | Store domain (e.g., mystore.myshopify.com) |
| check_skus | bool | no | true | Check for duplicate SKUs |
| check_barcodes | bool | no | true | Check for duplicate barcodes |
| include_blank | bool | no | false | Flag variants with blank/null SKU |
| format | string | no | human | Output format: human or json |
Safety
ℹ️ Read-only skill — no mutations are executed. Safe to run at any time.
Workflow Steps
1. OPERATION: productVariants — query Inputs: first: 250, select sku, barcode, product { title }, pagination cursor Expected output: All variants with SKU and barcode values; paginate until hasNextPage: false
2. Build in-memory map of sku → [variants] and barcode → [variants]
3. Report all keys with more than one variant (duplicates)
4. If include_blank: additionally flag variants where sku is null or empty string
GraphQL Operations
# productVariants:query — validated against api_version 2025-01
query VariantIdentifiers($after: String) {
productVariants(first: 250, after: $after) {
edges {
node {
id
sku
barcode
title
product {
id
title
handle
status
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}Session Tracking
Claude MUST emit the following output at each stage. This is mandatory.
On start, emit:
╔══════════════════════════════════════════════╗
║ SKILL: Duplicate SKU/Barcode Detector ║
║ Store: <store domain> ║
║ Started: <YYYY-MM-DD HH:MM UTC> ║
╚══════════════════════════════════════════════╝After each step, emit:
[N/TOTAL] <QUERY|MUTATION> <OperationName>
→ Params: <brief summary of key inputs>
→ Result: <count or outcome>On completion, emit:
For format: human (default):
══════════════════════════════════════════════
DUPLICATE SKU / BARCODE REPORT
Variants scanned: <n>
Duplicate SKUs found: <n> groups
Duplicate barcodes: <n> groups
Blank SKUs: <n>
Duplicate SKU groups:
SKU "ABC-123" — used by 2 variants:
Product A / Blue / L
Product B / Navy / XL
Output: duplicates_<date>.csv
══════════════════════════════════════════════For format: json, emit:
{
"skill": "duplicate-sku-barcode-detector",
"store": "<domain>",
"variants_scanned": 0,
"duplicate_sku_groups": 0,
"duplicate_barcode_groups": 0,
"blank_skus": 0,
"output_file": "duplicates_<date>.csv"
}Output Format
CSV file duplicates_<YYYY-MM-DD>.csv with columns: issue_type, duplicate_value, variant_id, product_title, variant_title, sku, barcode
Error Handling
| Error | Cause | Recovery |
|---|---|---|
THROTTLED | API rate limit exceeded | Wait 2 seconds, retry up to 3 times |
| No duplicates found | Clean catalog | Exit with ✅ no issues found |
Best Practices
- Run this skill after every bulk product import — imports are the most common source of duplicate SKUs.
- A shared SKU across products is only valid if you intentionally use the same SKU for reprints or variants — most cases are data errors.
- Blank SKUs are not duplicates but can cause problems with 3PLs and fulfillment systems that require a SKU for every variant — use
include_blank: trueto surface them. - After identifying duplicates, use the Shopify Admin UI or the
productVariantsBulkUpdatemutation to correct SKU values.
Related skills
FAQ
Does this skill modify my Shopify catalog?
No. It is read-only and executes no mutations; it only produces a report of duplicate SKU/barcode groups.
Can it flag variants with no SKU?
Yes. Set include_blank: true to also surface variants where the SKU is null or an empty string.