Ö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.

Örnek sonuç
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
Google Merchant Center ürünleri doğrudan bir Google E-Tablolar dosyasından okuyabilir, ama yalnızca kendi alanlarıyla: id, title, description, link, image_link, availability, para birimi koduyla price, brand, gtin vb. Bu Google Apps Script sizin çalıştığınız şekilde düzenlenmiş ürün tablonuzu alır ve bu formatta ayrı bir Feed sekmesi oluşturur: fiyatları 19.99 USD şeklinde yazar, Stokta ya da 0 gibi değerleri Merchant Center'ın kabul ettiği kelimelere dönüştürür, başlıkları uzunluk sınırına göre kısaltır ve Standart paketten itibaren göndermeden önce bağlantısı, görseli ya da fiyatı eksik satırları listeler. Feed sekmesini Merchant Center'a kendiniz bağlarsınız. Bilgiler tablonuzdan gelir ve sitenizle uyuşmalıdır; Google her ürünü inceler, bu yüzden onay kimsenin vaat edebileceği bir şey değildir.
Neler dahil
- Neler alırsınızApps Script kodunu ve onu tablonuza nasıl ekleyeceğinizi ve Feed sekmesini Merchant Center'a nasıl bağlayacağınızı gösteren bir README dosyasını içeren bir ZIP arşivi; kod sipariş sayfasında da gösterilir.
- Merchant Center alanlarıid, title, link, image_link, price, availability ve daha fazlası
- Tablonuz sizin kalırFeed ayrı bir sekmede oluşturulur
- Kabul ettiği değerlerPara birimiyle fiyatlar, kendi kelimeleriyle stok durumu
- Yüklemeden önce sorunlarStandart paketten itibaren zorunlu alanları eksik satırlar listelenir
- Okunabilir kodYorumlarla; sonradan alan eklemek kolay
Nasıl çalışır
- 1TabloÜrün tablonuzun sütunlarını ve mağazanızın ülkesini ve para birimini gönderirsiniz
- 2KodBetiği ve kurulum kılavuzunu yazarız
- 3DeneyinFeed'i oluşturur ve Merchant Center'a bağlarsınız
- 4DeğişikliklerPaketiniz kapsamında değişiklik ister, varsa hata mesajını gönderirsiniz
Sizden neler gerekiyor
Ürün tablonuzun sütun adları ve 10-20 satır (gerçek kataloğunuzdan kopyalayın ya da uydurun), satış yaptığınız ülke ve para birimi, stokun nasıl gösterildiği (bir sayı, Stokta, Evet ya da Hayır) ve ürünlerin bedenlerinin ya da renklerinin ayrı satırlar olup olmadığı. Varsa markalar ve barkodlar (GTIN), Merchant Center feed'de istiyorsa kargo ve vergi bilgileri ve tabloyu düzenleyebildiğiniz bir Google hesabında kullanıp kullanmadığınız.
Size soracaklarımız:
- Ürün tablonuz nasıl görünüyor?
- Nerede satış yapıyorsunuz?
- Ürünlerin varyantları var mı?
Paketleri karşılaştırın
| Paketler | TemelFeed sekmesi$16 | StandartAyarlı feed$33 | PremiumFeed aracı$67 |
|---|---|---|---|
| Teslim süresi | 1 gün | 2 gün | 3 gün |
| Revizyonlar | 1 | 2 | 3 |
| Kod | en fazla 150 satır | en fazla 400 satır | en fazla 1.000 satır |
| Kod dosyası | 1 | en fazla 3 | en fazla 8 |
| Ayar dosyası | Hayır | Evet | Evet |
| Anlaşılır hata mesajları ve log | Hayır | Evet | Evet |
| Çalıştırma seçenekleri ve zamanlanmış çalıştırma kılavuzu | Hayır | Hayır | Evet |
| Kurulum ve çalıştırma kılavuzu (README) | Evet | Evet | Evet |
| Dil | Google Apps Script | Google Apps Script | Google Apps Script |
| Sipariş ver Temel | Sipariş ver Standart | Sipariş 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.
Sorular ve yanıtlar
Ürünlerim onaylanacak mı?
Bunu vaat edemeyiz: Google her ürünü siteniz ve politikalarınız dahil kendi kurallarına göre inceler. Betik feed'i Merchant Center'ın formatına uygun hâle getirir ve eksik alanları gösterir; bilgiler sizindir.
Merchant Center feed'i kendiliğinden günceller mi?
Merchant Center bir Google E-Tablolar feed'ini kendi takvimine göre çekebilir. Betik, Feed sekmesini düğmeye bastığınızda ya da Premium'un kılavuzuyla ondan önce bir zaman tetikleyicisiyle yeniden oluşturur.
Ürünleri Shopify ya da WooCommerce mağazamdan alabilir mi?
Bu teklif feed'i bir Google E-Tablolar dosyasından oluşturur. Ürünleriniz bir mağazadaysa önce onları tabloya aktarın; onları mağazanın API'si üzerinden yüklemek ayrı bir iştir.
Merchant Center'a erişiminiz olacak mı?
Hayır. Betiği tablonuza siz ekler ve feed'i kendi Merchant Center hesabınızda bağlarsınız. Asla giriş yapmayız.
Yanıtınızı bulamadınız mı?