Shopify ürün CSV'siGeliştirme ve Özelleştirme

Tedarikçinizin ya da eski mağazanızın ürün dosyasını Shopify'a içe aktarılmaya hazır bir CSV'ye dönüştüren bir Python betiği

Genellikle 15 dakika içinde hazırRevizyonlar dahilKalite kontrolü
Paketler
Ödeme korumasıAyrıntılar
  • Paket kapsamındaki revizyonlar ücretsizdir.
  • Teslimattan sonraki 3 gün içinde yanıt vermezseniz iş otomatik olarak onaylanır.

Para, ödeme yaptığınızda bloke edilir ve yalnızca işi onayladığınızda aktarılır.

Tedarikçinizin ya da eski mağazanızın ürün dosyasını Shopify'a içe aktarılmaya hazır bir CSV'ye dönüştüren bir Python betiği

Örnek sonuç

Standart paket için örnek

Merging the monthly sales files of 9 shops into one Excel report

How it is run

python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO  Folder: sales/2026-10, 9 files found
2026-11-02 09:14:03 INFO  shop-01.csv: 1,284 rows
2026-11-02 09:14:04 INFO  shop-02.xlsx: 967 rows
2026-11-02 09:14:04 WARN  shop-07.csv: 3 rows without a price skipped (lines 88, 412, 913)
2026-11-02 09:14:05 INFO  Done: 10,412 rows -> report-2026-10.xlsx (sheets "Sales" and "Totals")

Settings, not code

The column names of each shop live in settings.ini, so a new shop or a renamed column is a line there:

[columns]
date = Date, Sale date, Day
product = Product, Item, Name
quantity = Qty, Quantity, Pcs
price = Price, Unit price

A part of the code

def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
    """Reads one shop's file and gives it the report's column names."""
    table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
    renamed = {}
    for name, variants in columns.items():
        found = next((c for c in table.columns if c.strip() in variants), None)
        if found is None:
            raise ReportError(f"{path.name}: no column for '{name}' (looked for {', '.join(variants)})")
        renamed[found] = name
    table = table.rename(columns=renamed)[list(columns)]
    table["shop"] = path.stem
    return table

Files: a ZIP archive with merge_sales.py (310 lines), settings.ini, requirements.txt and a README with installing Python, running the script and what each message in the log means. The client runs it on their own computer.

Client: a small chain of 9 stationery shops; each shop sends its sales for the month as a CSV or Excel file, with slightly different column names. Task: one script that reads every file in a folder, brings the columns to one shape, and writes a single Excel report with all sales and a sheet of totals by shop.

Müşteri ve tüm ayrıntılar kurgusaldır.

Bu hizmet hakkında

Shopify ürünleri bir CSV dosyasından içe aktarır, ama yalnızca kendi düzeninde: bir ürün ve tüm varyantları için tek bir Handle, belirli sütunlarda seçenek adları ve değerleri, herkese açık bağlantılar olarak görseller. Bu Python betiği elinizdeki dosyayı, bir tedarikçi fiyat listesini, eski mağazanızdan bir dışa aktarımı ya da kendi Excel'inizi bu düzene dönüştürür. Sütunlarınızı Shopify'ınkilerle eşler, Standart paketten itibaren bedenleri ve renkleri varyantlara dönüştürür, fiyatları ve stoku temizler ve etiketler ekler. Shopify'ın yönetim panelinizden indirebileceğiniz güncel ürün CSV şablonunu izler. Görseller Shopify'ın açabileceği bağlantılarda olmalıdır. Dosyayı Shopify'a kendiniz aktarırsınız; mağazanıza asla giriş yapmayız. Önce birkaç ürünle deneyin: elde ettiğiniz sonuç ancak verileriniz kadar eksiksizdir.

Neler dahil

  • Neler alırsınızPython betiğini, adım adım talimatlar içeren bir README dosyasını ve Standart paketten itibaren sütun eşlemesini içeren bir ayar dosyasını barındıran bir ZIP arşivi; kod sipariş sayfasında da gösterilir.
  • Shopify'ın düzeniShopify'ın güncel ürün CSV şablonuna göre
  • Gruplanmış varyantlarStandart paketten itibaren bedenler ve renkler tek ürün altında
  • Temiz fiyatlar ve stokPara birimi işareti ya da boşluk olmadan Shopify'ın kabul ettiği sayılar
  • Sorunlar listelenirFiyatı, stok kodu ya da görseli olmayan satırlar bildirilir
  • Okunabilir kodYorumlarla; sonradan sütun eklemek kolay

Nasıl çalışır

  1. 1
    DosyalarÜrün dosyanızdan bir örnek gönderir ve neyin nereye gideceğini söylersiniz
  2. 2
    KodBetiği ve çalıştırma kılavuzunu yazarız
  3. 3
    DeneyinShopify'a birkaç ürün aktarır ve kontrol edersiniz
  4. 4
    DeğişikliklerPaketiniz kapsamında değişiklik ister, varsa hata mesajını gönderirsiniz

Sizden neler gerekiyor

Elinizdeki dosyanın 20-30 satırı (tedarikçi fiyat listesi, eski mağaza dışa aktarımı ya da kendi tablonuz), içinde varyantların nasıl yazıldığı (beden başına bir satır ya da bedenler tek hücrede), görsellerin nerede olduğu (bağlantılar ya da önce Shopify'a yükleyeceğiniz dosyalar) ve fiyatların nasıl belirleneceği. Varsa sütunlar tam eşleşsin diye Shopify mağazanızdan birkaç ürünün dışa aktarımı. Sisteminiz: Windows, macOS ya da Linux.

Size soracaklarımız:

  • Şu an elinizde hangi dosya var?
  • İçinde varyantlar nasıl yazılmış?
  • Görseller nerede?
  • Fiyatlar nasıl belirlenmeli?

Paketleri karşılaştırın

PaketlerTemelBasit ürünler$16StandartVaryantlı ürünler$33PremiumÜrün aktarım aracı$67
Teslim süresi1 gün2 gün3 gün
Revizyonlar123
Koden fazla 150 satıren fazla 400 satıren fazla 1.000 satır
Kod dosyası1en fazla 3en fazla 8
Ayar dosyasıHayırEvetEvet
Anlaşılır hata mesajları ve logHayırEvetEvet
Çalıştırma seçenekleri ve zamanlanmış çalıştırma kılavuzuHayırHayırEvet
Kurulum ve çalıştırma kılavuzu (README)EvetEvetEvet
DilPythonPythonPython
Sipariş ver TemelSipariş ver StandartSipariş ver Premium

Ödeme koruması

Sipariş verirken ödersiniz, ancak para yalnızca onaylanan iş için aktarılır.

  • Sabit fiyatPaket fiyatı, ödeme yaptıktan sonra değişmez.
  • Para bloke edilirÖdeme yaptığınızda tutar yalnızca bloke edilir. İşi onayladığınızda hizmete aktarılır.
  • Teslimattan önce kontrolHer sonuç size ulaşmadan önce kalite kontrolünden geçer ve onaylamadan önce sipariş sayfasında görürsünüz.
  • Ücretsiz revizyonlarBrifiniz kapsamında, paketin izin verdiği sayıda değişiklik isteyin.
  • 3 gün sonra onayTeslimattan sonraki 3 gün içinde işi onaylamaz veya değişiklik istemezseniz iş otomatik olarak onaylanır. Teslimattan sonra sipariş sohbetine yazarsanız sipariş bekletilir; yanıt verdikten sonra 3 günlük süreyi yeniden başlatabiliriz ve bunu sohbette bildiririz.
  • Yeniden yapım veya tam iadeSonuç brifinize uymuyorsa ve revizyonlar sorunu çözmediyse ya da iş teslim süresinin iki katından uzun sürerse sipariş sohbetine yazın: işi yeniden yaparız veya ödemenin tamamını iade ederiz.
Nasıl çalışır →

Sorular ve yanıtlar

Ürünleri mağazama siz mi aktaracaksınız?

Hayır. Mağazanıza asla giriş yapmayız. CSV'yi Shopify yönetim panelinizde kendiniz aktarırsınız; README nerede ve hangi seçenekleri seçeceğinizi gösterir.

Bilgisayarımda dosya olarak duran görseller ne olacak?

Shopify bir CSV'deki görselleri yalnızca açabileceği bağlantılar olarak alır. Önce dosyaları Shopify'ın Dosyalar bölümüne yükleyin ve bağlantılarının listesini betiğe verin ya da tedarikçinizin verdiği bağlantıları kullanın.

Zaten var olan ürünlerin fiyatlarını ve stokunu güncelleyebilir mi?

Evet, Handle'lar mevcut ürünlerinizle eşleşiyorsa: Shopify içe aktarırken aynı Handle'a sahip ürünlerin üzerine yazabilir. Önce birkaç ürünle deneyin.

Ürün açıklamaları yazacak mı?

Hayır. Dosyanızdaki açıklamaları ve bilgileri aktarır, biçimlerini düzenleyebilir. Elinde olmayan metinler boş bırakılır ve bildirilir.

Yanıtınızı bulamadınız mı?

Paketler