← back to Claude Webdev Accelerator
auto-save: 2026-07-16T08:12:03 (2 files) — data/shopify-catalog.json scripts/pull-shopify-catalog.js
1a0f5f6adee1f6a65f4cd08ba4a8c83b705cf5a8 · 2026-07-16 08:12:07 -0700 · Steve Abrams
Files touched
M data/shopify-catalog.jsonM scripts/pull-shopify-catalog.js
Diff
commit 1a0f5f6adee1f6a65f4cd08ba4a8c83b705cf5a8
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Thu Jul 16 08:12:07 2026 -0700
auto-save: 2026-07-16T08:12:03 (2 files) — data/shopify-catalog.json scripts/pull-shopify-catalog.js
---
data/shopify-catalog.json | 212 ++++++++++++++++++++--------------------
scripts/pull-shopify-catalog.js | 8 +-
2 files changed, 113 insertions(+), 107 deletions(-)
diff --git a/data/shopify-catalog.json b/data/shopify-catalog.json
index d58f0bd..c5d766e 100644
--- a/data/shopify-catalog.json
+++ b/data/shopify-catalog.json
@@ -1,6 +1,6 @@
{
"_note": "READ-ONLY pull from the LIVE DW Shopify store. Cart permalinks hand off to Shopify-hosted checkout.",
- "pulled_at": "2026-07-16T14:30:23.927Z",
+ "pulled_at": "2026-07-16T15:11:06.970Z",
"shop_domain": "designer-laboratory-sandbox.myshopify.com",
"checkout_domain": "www.designerwallcoverings.com",
"sample_variant_id": "44477825351731",
@@ -321,9 +321,9 @@
"vendor": "DW Bespoke Studio",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/0bab358b3eec8ece80a4d4ffdf55be4f_54558f70-cc7e-4bf9-a77e-9ccb675ed7d0.jpg?v=1645558451",
- "sku": "Vin-900-sample",
- "price": 4.25,
- "variant_id": 13899015225456
+ "sku": "Vin-900",
+ "price": 195,
+ "variant_id": 41366760849459
},
{
"id": 7664583770163,
@@ -332,9 +332,9 @@
"vendor": "DW Bespoke Studio",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Screenshot2024-04-01at9.05.20AM_b93bfec9-fdfc-4201-b8f6-7c103e2f3e71.png?v=1756876652",
- "sku": "Vin-9695-25",
- "price": 4.25,
- "variant_id": 44019581026355
+ "sku": "Vin-9695-25-silver-2x27",
+ "price": 668,
+ "variant_id": 43609000443955
},
{
"id": 1495209345136,
@@ -343,9 +343,9 @@
"vendor": "DW Bespoke Studio",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/d07ccac47807bae35b0c0d49257419b0_9f919930-f25b-44ab-9333-1a9c835f7fad.jpg?v=1645558489",
- "sku": "Vin-9795-sample",
- "price": 4.25,
- "variant_id": 13901861322864
+ "sku": "Vin-9795",
+ "price": 195,
+ "variant_id": 41366761209907
},
{
"id": 1494843097200,
@@ -354,9 +354,9 @@
"vendor": "Fentucci",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/7d9ae04c1d64756424f2de9e83929c5d_4126a217-d7cc-4015-91cb-42a014a6099b.jpg?v=1645558459",
- "sku": "DWFE-1001-Sample",
- "price": 4.25,
- "variant_id": 13898279190640
+ "sku": "DWFE-1001",
+ "price": 58.76,
+ "variant_id": 17828418682945
},
{
"id": 7851164303411,
@@ -475,9 +475,9 @@
"vendor": "Schumacher",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/5002800-1.jpg?v=1770825288",
- "sku": "DWLK-830160-Sample",
- "price": 4.25,
- "variant_id": 31947856478259
+ "sku": "DWLK-830160",
+ "price": 282.35,
+ "variant_id": 44438953623603
},
{
"id": 7851164532787,
@@ -508,9 +508,9 @@
"vendor": "Rebel Walls",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R13831_image2.jpg?v=1756328085",
- "sku": "DWRW-74623-Sample",
- "price": 4.25,
- "variant_id": 40345635749939
+ "sku": "DWRW-74623-Sold Per Square Meter",
+ "price": 83.38,
+ "variant_id": 40345635815475
},
{
"id": 6679729078323,
@@ -519,9 +519,9 @@
"vendor": "Rebel Walls",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS13831_image1.jpg?v=1756313101",
- "sku": "DWRW-76016-Sample",
- "price": 4.25,
- "variant_id": 40347630403635
+ "sku": "DWRW-76016",
+ "price": 117.47,
+ "variant_id": 44486915063859
},
{
"id": 7430014763059,
@@ -530,9 +530,9 @@
"vendor": "Mind the Gap",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/A_FABLE_Indigo_52x70cm_WP30003_8f0c0307-dd5e-4b15-a8bf-f5deb3e0256b.jpg?v=1748367786",
- "sku": "MTG-70493-Sample",
- "price": 4.25,
- "variant_id": 42683880177715
+ "sku": "MTG-70493",
+ "price": 249,
+ "variant_id": 42683880210483
},
{
"id": 7430014697523,
@@ -541,9 +541,9 @@
"vendor": "Mind the Gap",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/A_FABLE_Alabaster_52x70cm_WP30001_e4e61afa-51b6-42b4-8a0c-e17168a4c99f.jpg?v=1748367789",
- "sku": "MTG-70491-Sample",
- "price": 4.25,
- "variant_id": 42683880013875
+ "sku": "MTG-70491",
+ "price": 249,
+ "variant_id": 42683880046643
},
{
"id": 7430014730291,
@@ -552,9 +552,9 @@
"vendor": "Mind the Gap",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/A_FABLE_Evergreen_52x70cm_WP30002_9b59ea60-811b-4354-8f81-99e959b36964.jpg?v=1748367787",
- "sku": "MTG-70492-Sample",
- "price": 4.25,
- "variant_id": 42683880079411
+ "sku": "MTG-70492",
+ "price": 249,
+ "variant_id": 42683880112179
},
{
"id": 6562452045875,
@@ -563,9 +563,9 @@
"vendor": "Mid Century Modern",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/aforestpvflat_5b451377-cb28-4ac2-a477-3f9235c86647.jpg?v=1621360616",
- "sku": "DMCM-820005-SAMPLE",
- "price": 4.25,
- "variant_id": 39371345887283
+ "sku": "DMCM-820005",
+ "price": 98.82,
+ "variant_id": 39371375378483
},
{
"id": 7664584359987,
@@ -574,9 +574,9 @@
"vendor": "DW Bespoke Studio",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/ScreenShot2023-10-06at8.49.46AM_2c4fd07b-7709-4da3-8ab8-2d3baa92814b.png?v=1756872643",
- "sku": "DIG-740022-25-type-2-vinyl-2x12",
- "price": 233,
- "variant_id": 43672343707699
+ "sku": "DIG-740022-25-silver-2x27",
+ "price": 668,
+ "variant_id": 43609023545395
},
{
"id": 7674806206515,
@@ -585,9 +585,9 @@
"vendor": "DW Bespoke Studio",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/recolored__FF6347.jpg?v=1758682838",
- "sku": "AIDIG-740022-25_Tomato_Red",
- "price": 4.25,
- "variant_id": 43639237410867
+ "sku": "AIDIG-740022-25-Grass-2x27_Tomato_Red",
+ "price": 558.77,
+ "variant_id": 43639238295603
},
{
"id": 7876826431539,
@@ -607,9 +607,9 @@
"vendor": "Mind the Gap",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/A_MANCHURIAN_NIGHT_156x100cm_WP20591_1_d54f7eee-8445-4f3f-bf82-c0ad78e4e60e.jpg?v=1748367569",
- "sku": "MTG-70587-Sample",
- "price": 4.25,
- "variant_id": 42686009278515
+ "sku": "MTG-70587",
+ "price": 309,
+ "variant_id": 42686009311283
},
{
"id": 7851164631091,
@@ -662,9 +662,9 @@
"vendor": "Rebel Walls",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/R15501_image2_63c41252-8556-46a5-80b8-bba9aa0de397.jpg?v=1756327413",
- "sku": "DWRW-74913-Sample",
- "price": 4.25,
- "variant_id": 40346282655795
+ "sku": "DWRW-74913-Sold Per Square Meter",
+ "price": 83.38,
+ "variant_id": 40346282688563
},
{
"id": 6679739629619,
@@ -673,9 +673,9 @@
"vendor": "Rebel Walls",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/products/RS15501_image1.jpg?v=1756312675",
- "sku": "DWRW-76264-Sample",
- "price": 4.25,
- "variant_id": 40347693940787
+ "sku": "DWRW-76264",
+ "price": 117.47,
+ "variant_id": 44490271719475
},
{
"id": 4523119116339,
@@ -684,9 +684,9 @@
"vendor": "Schumacher",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/5005031-1.jpg?v=1770830227",
- "sku": "DWLK-833010-Sample",
- "price": 4.25,
- "variant_id": 31947635785779
+ "sku": "DWLK-833010",
+ "price": 228.05,
+ "variant_id": 44438926000179
},
{
"id": 4523119018035,
@@ -695,9 +695,9 @@
"vendor": "Schumacher",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/5005030-1.jpg?v=1770830212",
- "sku": "DWLK-833000-Sample",
- "price": 4.25,
- "variant_id": 31947635654707
+ "sku": "DWLK-833000",
+ "price": 228.05,
+ "variant_id": 44438925901875
},
{
"id": 7774606491699,
@@ -706,9 +706,9 @@
"vendor": "Schumacher",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/5005032.jpg?v=1770675033",
- "sku": "DWLK-802610-Sample",
- "price": 4.25,
- "variant_id": 44042898178099
+ "sku": "DWLK-802610",
+ "price": 228.05,
+ "variant_id": 44442363723827
},
{
"id": 7858648809523,
@@ -911,7 +911,7 @@
{
"id": 7515293483059,
"handle": "eur-71253-designer-wallcoverings-los-angeles",
- "title": "Abac\u00e1 Embossed Vinyl Stripe Celadon | Osborne & Little Europe",
+ "title": "Abacá Embossed Vinyl Stripe Celadon | Osborne & Little Europe",
"vendor": "Osborne & Little",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/abaca_3eauctnpzewfnc2v.jpg?v=1782461830",
@@ -922,7 +922,7 @@
{
"id": 7515293646899,
"handle": "eur-71255-designer-wallcoverings-los-angeles",
- "title": "Abac\u00e1 Embossed Vinyl Stripe Elephant | Osborne & Little Europe",
+ "title": "Abacá Embossed Vinyl Stripe Elephant | Osborne & Little Europe",
"vendor": "Osborne & Little",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/w7971-05_vfmo9fkonvmqkbwy_0044a77a-fb49-46f5-8b41-bed5fcbe24d6.jpg?v=1782466017",
@@ -933,7 +933,7 @@
{
"id": 7515293548595,
"handle": "eur-71254-designer-wallcoverings-los-angeles",
- "title": "Abac\u00e1 Embossed Vinyl Stripe Linen | Osborne & Little Europe",
+ "title": "Abacá Embossed Vinyl Stripe Linen | Osborne & Little Europe",
"vendor": "Osborne & Little",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/w7971-04_aekqapr9sfldoqpc_c8f7a944-d82d-4ee8-b2c1-6eeba7af0580.jpg?v=1782466020",
@@ -944,7 +944,7 @@
{
"id": 7515293417523,
"handle": "eur-71252-designer-wallcoverings-los-angeles",
- "title": "Abac\u00e1 Embossed Vinyl Stripe Straw | Osborne & Little Europe",
+ "title": "Abacá Embossed Vinyl Stripe Straw | Osborne & Little Europe",
"vendor": "Osborne & Little",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/w7971-02_x5rkfvpvrfctnscb_8d879709-b8d2-4416-a6c2-cb66edd47998.jpg?v=1782466016",
@@ -955,7 +955,7 @@
{
"id": 7515293712435,
"handle": "eur-71256-designer-wallcoverings-los-angeles",
- "title": "Abac\u00e1 Embossed Vinyl Stripe Walnut | Osborne & Little Europe",
+ "title": "Abacá Embossed Vinyl Stripe Walnut | Osborne & Little Europe",
"vendor": "Osborne & Little",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/w7971-06_q3gd3m2wczd3tvzc_c3067d85-daf6-4366-b594-c1639b1f0bc9.jpg?v=1782466020",
@@ -966,7 +966,7 @@
{
"id": 7515293319219,
"handle": "eur-71251-designer-wallcoverings-los-angeles",
- "title": "Abac\u00e1 Embossed Vinyl Stripe Wheat | Osborne & Little Europe",
+ "title": "Abacá Embossed Vinyl Stripe Wheat | Osborne & Little Europe",
"vendor": "Osborne & Little",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/w7971-01_g4htwyrvf2wup4vn_527896dc-124d-4298-9255-31cfc18984ad.jpg?v=1782466012",
@@ -1201,9 +1201,9 @@
"vendor": "Elitis",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/mural-matieres-vegetales-abaca-textures-vegetales-vp-983-30-0c7353b6e66521004d175cb2dd.jpg?v=1772034647",
- "sku": "DWEL-142678-Sample",
- "price": 4.25,
- "variant_id": 44073189703731
+ "sku": "DWEL-142678-Roll",
+ "price": 575.57,
+ "variant_id": 44508731277363
},
{
"id": 7375691612211,
@@ -1362,7 +1362,7 @@
{
"id": 7780862722099,
"handle": "abaca-patchwork-alabaster-romo",
- "title": "Abac\u00e1 Patchwork - Alabaster Natural Wallcovering | Romo",
+ "title": "Abacá Patchwork - Alabaster Natural Wallcovering | Romo",
"vendor": "Romo",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MW139-06-abac-patchwork-wallcovering-alabaster_01_db789bd7-1b8f-4d56-b49a-9f31fbd89ccf.jpg?v=1771474336",
@@ -1373,7 +1373,7 @@
{
"id": 7786991517747,
"handle": "abaca-patchwork-gris-romo",
- "title": "Abac\u00e1 Patchwork - Gris Natural Wallcovering | Romo",
+ "title": "Abacá Patchwork - Gris Natural Wallcovering | Romo",
"vendor": "Romo",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MW139-02-abac-patchwork-wallcovering-gris_01_256a97f8-8285-4e65-a94e-14bdc41a92af.jpg?v=1772079551",
@@ -1384,7 +1384,7 @@
{
"id": 7780861706291,
"handle": "abaca-patchwork-pewter-romo",
- "title": "Abac\u00e1 Patchwork - Pewter Natural Wallcovering | Romo",
+ "title": "Abacá Patchwork - Pewter Natural Wallcovering | Romo",
"vendor": "Romo",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MW139-05-abac-patchwork-wallcovering-pewter_01_ea0f50a5-17c0-4466-bf09-6b37e286b0fe.jpg?v=1771473748",
@@ -1395,7 +1395,7 @@
{
"id": 7787383652403,
"handle": "abaca-patchwork-typhoon-romo",
- "title": "Abac\u00e1 Patchwork - Typhoon Natural Wallcovering | Romo",
+ "title": "Abacá Patchwork - Typhoon Natural Wallcovering | Romo",
"vendor": "Romo",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MW139-04-abac-patchwork-wallcovering-typhoon_01_a25aaf31-6f06-4a76-8b73-1fcf3a32466b.jpg?v=1772165443",
@@ -1406,7 +1406,7 @@
{
"id": 7867655389235,
"handle": "abac-patchwork-beige-dwrm-240160",
- "title": "Abac\u00e1 Patchwork, Beige Wallcoverings | Romo",
+ "title": "Abacá Patchwork, Beige Wallcoverings | Romo",
"vendor": "Romo",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/MW139-01-abac-patchwork-wallcovering-natural_01.jpg?v=1782373269",
@@ -1729,9 +1729,9 @@
"vendor": "Kravet",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/JMW1005_01_fab60c5e-25f1-4be2-9f48-f27810954439.jpg?v=1753122918",
- "sku": "DWKK-122040-Sample",
- "price": 4.25,
- "variant_id": 42649455984691
+ "sku": "DWKK-122040",
+ "price": 343.35,
+ "variant_id": 44444523855923
},
{
"id": 7877188452403,
@@ -1740,9 +1740,9 @@
"vendor": "Phillipe Romano",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0062822_abatha-grass-charcoal.jpg?v=1783365392",
- "sku": "GRS-10010-Sample",
- "price": 4.25,
- "variant_id": 44494091419699
+ "sku": "GRS-10010",
+ "price": 37.77,
+ "variant_id": 44494091452467
},
{
"id": 7877189074995,
@@ -1751,9 +1751,9 @@
"vendor": "Phillipe Romano",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0062819_abatha-grass-desert-tan.jpg?v=1783365622",
- "sku": "GRS-10007-Sample",
- "price": 4.25,
- "variant_id": 44494092763187
+ "sku": "GRS-10007",
+ "price": 37.77,
+ "variant_id": 44494092795955
},
{
"id": 7877189140531,
@@ -1762,9 +1762,9 @@
"vendor": "Phillipe Romano",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0062820_abatha-grass-mango.jpg?v=1783365645",
- "sku": "GRS-10008-Sample",
- "price": 4.25,
- "variant_id": 44494092894259
+ "sku": "GRS-10008",
+ "price": 37.77,
+ "variant_id": 44494092927027
},
{
"id": 7877188321331,
@@ -1773,9 +1773,9 @@
"vendor": "Phillipe Romano",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0062823_abatha-grass-slate-blue.jpg?v=1783365352",
- "sku": "GRS-10011-Sample",
- "price": 4.25,
- "variant_id": 44494091157555
+ "sku": "GRS-10011",
+ "price": 37.77,
+ "variant_id": 44494091190323
},
{
"id": 7877189763123,
@@ -1784,9 +1784,9 @@
"vendor": "Phillipe Romano",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/0062821_abatha-grass-sunset-rose.jpg?v=1783365828",
- "sku": "GRS-10009-Sample",
- "price": 4.25,
- "variant_id": 44494094204979
+ "sku": "GRS-10009",
+ "price": 37.77,
+ "variant_id": 44494094237747
},
{
"id": 7416173985843,
@@ -1861,9 +1861,9 @@
"vendor": "Hollywood Wallcoverings",
"type": "Fabric",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/xja-47017-sample-abbingdon-type-ii-vinyl-hollywood-wallcoverings.jpg?v=1775696834",
- "sku": "XJA-47017-sample",
- "price": 4.25,
- "variant_id": 13941985509488
+ "sku": "XJA-47017-Yard",
+ "price": 51.04,
+ "variant_id": 44502461841459
},
{
"id": 7513496518707,
@@ -1960,20 +1960,20 @@
"vendor": "Mind the Gap",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Screen_Shot_2024-09-26_at_9.22.13_AM.png?v=1748367426",
- "sku": "MTG-70755-Sample",
- "price": 4.25,
- "variant_id": 42686022287411
+ "sku": "MTG-70755",
+ "price": 289,
+ "variant_id": 42686022320179
},
{
"id": 7430802079795,
"handle": "dwwd-70754",
- "title": "Abeille D\u00e9Coratif - Taupe, Blue, Pink, Red Wallcovering | Mind the Gap",
+ "title": "Abeille DéCoratif - Taupe, Blue, Pink, Red Wallcovering | Mind the Gap",
"vendor": "Mind the Gap",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/Screen_Shot_2024-09-26_at_9.25.34_AM.png?v=1748367427",
- "sku": "MTG-70754-Sample",
- "price": 4.25,
- "variant_id": 42686022189107
+ "sku": "MTG-70754",
+ "price": 289,
+ "variant_id": 42686022221875
},
{
"id": 7416723144755,
@@ -2158,9 +2158,9 @@
"vendor": "Jeffrey Stevens",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/FH4068.jpg?v=1740772931",
- "sku": "DWJS-16618-Sample",
- "price": 4.25,
- "variant_id": 40478616748083
+ "sku": "DWJS-16618",
+ "price": 68.62,
+ "variant_id": 43174876053555
},
{
"id": 6703004549171,
@@ -2169,9 +2169,9 @@
"vendor": "Jeffrey Stevens",
"type": "Wallcovering",
"image": "https://cdn.shopify.com/s/files/1/0015/4117/7456/files/CV4452.jpg?v=1740774519",
- "sku": "DWJS-17384-Sample",
- "price": 4.25,
- "variant_id": 40478615404595
+ "sku": "DWJS-17384",
+ "price": 68.62,
+ "variant_id": 43175097172019
},
{
"id": 7419665973299,
diff --git a/scripts/pull-shopify-catalog.js b/scripts/pull-shopify-catalog.js
index f23162f..d28f76e 100644
--- a/scripts/pull-shopify-catalog.js
+++ b/scripts/pull-shopify-catalog.js
@@ -38,10 +38,16 @@ function api(pathq) {
const checkoutDomain = shop.json.shop.domain || STORE; // primary online domain for cart permalinks
const p = await api(`/products.json?status=active&limit=${Math.min(LIMIT, 250)}`);
if (p.status !== 200) { console.error('products.json failed:', p.status); process.exit(1); }
+ // Pick the REAL roll variant, not the $4.25 memo-sample variant (avoids the $4.25-price leak).
+ function chooseVariant(variants) {
+ const real = variants.filter(v => (parseFloat(v.price) || 0) > 4.25 && !/sample|memo/i.test(v.title || ''));
+ const pool = real.length ? real : variants;
+ return pool.reduce((a, b) => ((parseFloat(b.price) || 0) > (parseFloat(a.price) || 0) ? b : a));
+ }
const products = (p.json.products || [])
.filter(pr => pr.variants && pr.variants.length && pr.published_at) // web-published only (checkout works)
.map(pr => {
- const v = pr.variants[0];
+ const v = chooseVariant(pr.variants);
const img = (pr.image && pr.image.src) || (pr.images && pr.images[0] && pr.images[0].src) || '';
return {
id: pr.id, handle: pr.handle, title: pr.title, vendor: pr.vendor, type: pr.product_type,
← 9affadd preview: env-overridable gate cred (PREVIEW_GATE) per contra
·
back to Claude Webdev Accelerator
·
shopify: pick real roll variant + drop sample-only products c9f3618 →