XML Import

Tedarikçi XML dosyalarından otomatik ürün içe aktarma ve senkronizasyon

Genel Bakış

XML Import modülü, tedarikçi XML dosyalarından ürünleri otomatik olarak e-ticaret sisteminize aktarmanızı sağlar. Tek seferlik veya zamanlanmış (cron) import işlemleri yapabilir, alan eşleştirme ve kategori mapping özellikleriyle verilerinizi tam kontrolle yönetebilirsiniz.

📥
Otomatik Import

URL'den veya dosyadan XML çekin

🔄
Zamanlanmış Import

Cron ile otomatik güncelleme

🗂️
Alan Eşleştirme

XML alanlarını sistem alanlarıyla eşleştirin

📁
Kategori Mapping

Hiyerarşik kategori desteği

Temel Özellikler

📥 Feed Yönetimi

  • Sınırsız XML feed kaynağı ekleme
  • URL'den veya dosya yükleyerek XML çekme
  • HTTP Basic Authentication desteği
  • Feed bazlı ayrı ayarlar ve eşleştirmeler
  • Feed aktif/pasif durumu yönetimi

🔧 Alan Eşleştirme

  • Esnek XML yolu tanımlama (XPath benzeri)
  • Desteklenen sistem alanları:
    • name - Ürün adı
    • description - Açıklama
    • price - Satış fiyatı
    • original_price - Liste fiyatı
    • sku - Stok kodu
    • stock - Stok miktarı
    • category - Kategori
    • brand - Marka
    • image - Ana görsel URL
    • images - Ek görseller
    • external_id - Tedarikçi ürün ID
    • barcode - Barkod
    • weight - Ağırlık
  • Varsayılan değer atama
  • Veri dönüştürme seçenekleri

📁 Kategori Mapping

  • XML kategorilerini sistem kategorileriyle eşleştirme
  • Hiyerarşik kategori desteği - Alt kategoriler otomatik oluşturulur
  • Desteklenen kategori ayırıcıları: >, /, |, \
  • Kategori yok sayma (ignore) özelliği
  • Otomatik yeni kategori oluşturma

🔄 Import Seçenekleri

  • Ekleme modu: Sadece yeni ürünler ekle
  • Güncelleme modu: Mevcut ürünleri güncelle
  • Ekleme + Güncelleme: Her ikisini de yap
  • Ürün durumu ayarlama (aktif/pasif/taslak)
  • Fiyat çarpanı ile otomatik kâr marjı

📊 İzleme ve Raporlama

  • Import geçmişi ve loglar
  • Eklenen/güncellenen/hatalı ürün sayıları
  • Detaylı hata mesajları
  • Feed bazlı istatistikler

Hızlı Başlangıç

1
Feed Ekle

XML kaynağınızı tanımlayın

2
Analiz Et

XML yapısını inceleyin

3
Eşleştir

Alanları eşleştirin

Import Et

Ürünleri içe aktarın

Adım 1: Feed Ekleyin

  1. Eklentiler → XML Import menüsüne gidin
  2. "+ Yeni Feed" butonuna tıklayın
  3. Feed adı girin (örn: "Tedarikçi A XML")
  4. XML kaynağını belirtin:
    • URL: Tedarikçinin XML URL'sini yapıştırın
    • Dosya: XML dosyasını yükleyin
  5. HTTP kimlik doğrulama gerekiyorsa kullanıcı adı/şifre girin
  6. "Kaydet" butonuna tıklayın
💡 İpucu: XML URL'si güvenli değilse (HTTP Basic Auth ile korunuyorsa), kullanıcı adı ve şifreyi ilgili alanlara girin.

Adım 2: XML'i Analiz Edin

  1. Feed listesinde "Analiz" butonuna tıklayın
  2. Sistem XML'i indirecek ve yapısını gösterecektir
  3. XML ağaç yapısını inceleyin:
    • Ana element (kök)
    • Ürün elementi (tekrarlayan)
    • Alt elementler (fiyat, stok, kategori vb.)
  4. Örnek ürün verilerini görüntüleyin

Örnek XML Yapısı:

<products>
    <product>
        <id>12345</id>
        <title>iPhone 15 Pro</title>
        <price>64999.00</price>
        <list_price>69999.00</list_price>
        <stock>25</stock>
        <category>Elektronik > Telefon > Akıllı Telefon</category>
        <brand>Apple</brand>
        <image>https://example.com/iphone15.jpg</image>
        <description>Apple iPhone 15 Pro 256GB...</description>
    </product>
</products>

Adım 3: Alan Eşleştirme

  1. "Alan Eşleştirme" sekmesine gidin
  2. Her sistem alanı için XML yolunu belirtin:
Sistem Alanı XML Yolu Açıklama
external_id id Tedarikçi ürün ID (zorunlu)
name title Ürün adı (zorunlu)
price price Satış fiyatı (zorunlu)
original_price list_price Liste/karşılaştırma fiyatı
stock stock Stok miktarı
category category Kategori adı/yolu
brand brand Marka adı
image image Ana görsel URL'si
description description Ürün açıklaması
📌 Önemli: external_id, name ve price alanları zorunludur. Bu alanlar eşleştirilmeden import yapılamaz.

Adım 4: Kategori Eşleştirme

  1. "Kategori Mapping" sekmesine gidin
  2. XML'den gelen her kategori için sistem kategorisi seçin
  3. İstemediğiniz kategorileri "Yok Say" olarak işaretleyin

Hiyerarşik Kategori Özelliği:

XML'de kategoriler şu formatlarda gelebilir:

  • Elektronik > Telefon > Akıllı Telefon
  • Elektronik / Telefon / Akıllı Telefon
  • Elektronik | Telefon | Akıllı Telefon

Sistem bu yapıyı otomatik olarak algılar ve kategorileri hiyerarşik olarak oluşturur:

Elektronik (Ana Kategori)
├── Telefon (Alt Kategori)
│   └── Akıllı Telefon (Alt-Alt Kategori)
│       └── [Ürün buraya atanır]
    

Adım 5: Import Ayarları

  1. "Ayarlar" sekmesine gidin
  2. Import modunu seçin:
    • Sadece Ekle: Yeni ürünleri ekler, mevcutları atlar
    • Sadece Güncelle: Mevcut ürünleri günceller
    • Ekle + Güncelle: Yeni ürünler ekler, mevcutları günceller
  3. Ürün durumu seçin (Aktif/Pasif/Taslak)
  4. Fiyat çarpanı belirleyin (örn: 1.20 = %20 kâr marjı)
  5. "Kaydet ve Import Et" butonuna tıklayın

Zamanlanmış Import (Cron)

Ürünlerinizi otomatik olarak güncellemek için cron job kurabilirsiniz.

Cron Komutu

# Her 30 dakikada bir çalıştır
0,30 * * * * php /path/to/your/site/addons/xml-import/cron/import-cron.php

# Her saat başı çalıştır
0 * * * * php /path/to/your/site/addons/xml-import/cron/import-cron.php

# Günde bir kez (gece 03:00)
0 3 * * * php /path/to/your/site/addons/xml-import/cron/import-cron.php

Cron Kurulumu (cPanel)

  1. cPanel'e giriş yapın
  2. "Cron Jobs" bölümüne gidin
  3. Komut alanına yukarıdaki komutu girin
  4. Çalışma aralığını seçin
  5. Kaydedin

Belirli Feed için Cron

# Sadece feed_id=1 olan kaynağı işle
0 * * * * php /path/to/addons/xml-import/cron/import-cron.php --feed=1

Import İzleme ve Loglar

Dashboard İstatistikleri

XML Import ana sayfasında şu bilgileri görüntüleyebilirsiniz:

  • Toplam feed sayısı
  • Aktif feed sayısı
  • Son import tarihi
  • Toplam aktarılan ürün sayısı

Import Geçmişi

Her import işlemi kaydedilir ve şu bilgileri içerir:

  • Başlangıç ve bitiş zamanı
  • İşlenen toplam ürün sayısı
  • Eklenen yeni ürün sayısı
  • Güncellenen ürün sayısı
  • Atlanan ürün sayısı
  • Hata sayısı ve detayları

Hata Logları

Hatalı işlemler detaylı olarak loglanır:

Hata Türü Olası Neden Çözüm
Zorunlu alan eksik name, price veya external_id boş Alan eşleştirmesini kontrol edin
XML parse hatası Geçersiz XML formatı XML dosyasını doğrulayın
Bağlantı hatası URL'ye erişilemiyor URL ve kimlik bilgilerini kontrol edin
Duplicate SKU Aynı stok kodu mevcut SKU mapping'i kontrol edin

İleri Düzey Kullanım

Fiyat Çarpanı

Tedarikçi fiyatlarına otomatik kâr marjı eklemek için fiyat çarpanını kullanın:

  • 1.00 = Değişiklik yok (tedarikçi fiyatı)
  • 1.20 = %20 kâr marjı
  • 1.50 = %50 kâr marjı
  • 2.00 = %100 kâr marjı (2x fiyat)
💡 Örnek: Tedarikçi fiyatı 100 TL, çarpan 1.25 ise → Satış fiyatı = 125 TL

Çoklu Feed Yönetimi

Birden fazla tedarikçi ile çalışıyorsanız:

  • Her tedarikçi için ayrı feed oluşturun
  • Her feed'e benzersiz bir isim verin
  • Farklı fiyat çarpanları uygulayabilirsiniz
  • Farklı kategori mapping'leri tanımlayabilirsiniz

Marka Yönetimi

XML'deki markalar otomatik olarak sisteme eklenir:

  • Marka yoksa yeni marka oluşturulur
  • Marka varsa mevcut marka kullanılır
  • Ürün güncellemelerinde marka da güncellenir

Görsel İşleme

  • Görseller URL'den otomatik indirilir
  • Sunucunuza kaydedilir (/uploads/products/)
  • Çoklu görsel desteği (images alanı ile)

Sık Sorulan Sorular

Sildiğim ürünler tekrar import edildiğinde ne olur?

Sistem akıllı bir şekilde çalışır: Ürünü sildiyseniz, o ürünle ilişkili XML import kaydı da otomatik olarak temizlenir. Sonraki import'ta ürün yeni ürün olarak eklenir (güncelleme değil).

XML'de kategori yolu var, nasıl import ederim?

Sistem hiyerarşik kategorileri otomatik olarak destekler. "Elektronik > Telefon > Akıllı Telefon" şeklinde gelen kategoriler, alt-üst kategori ilişkisi korunarak otomatik oluşturulur. Desteklenen ayırıcılar: >, /, |, \

Bazı ürünleri import'tan hariç tutabilir miyim?

Evet, kategori mapping'de istemediğiniz kategorileri "Yok Say" olarak işaretleyebilirsiniz. O kategorideki tüm ürünler atlanacaktır.

Import sırasında hata alıyorum, ne yapmalıyım?

1. Import geçmişinden hata detaylarını inceleyin
2. Alan eşleştirmelerinin doğru olduğundan emin olun
3. XML'in geçerli olduğunu kontrol edin
4. Zorunlu alanların (external_id, name, price) eşleştirildiğinden emin olun

Cron job çalışıyor mu nasıl anlarım?

Import geçmişine bakın. Cron ile yapılan import'lar da burada görünür. Ayrıca son import tarihini dashboard'dan kontrol edebilirsiniz.

Stok sıfır olan ürünleri pasife çekebilir miyim?

Evet, ayarlar bölümünden "Stok sıfır olunca pasife al" seçeneğini etkinleştirebilirsiniz.

Veritabanı Yapısı

XML Import modülü aşağıdaki tabloları kullanır:

Tablo Açıklama
xml_feeds Feed tanımları ve ayarları
xml_field_mappings Alan eşleştirmeleri
xml_category_mappings Kategori eşleştirmeleri
xml_import_logs Import geçmişi ve loglar
xml_import_items Import edilen ürün takibi

Teknik Destek

Yardıma mı ihtiyacınız var?

XML Import modülü ile ilgili sorularınız için:

  • Bu yardım dokümanını inceleyin
  • Import loglarını kontrol edin
  • Destek talebinde bulunun

Destek talebi açarken şunları belirtin:

  • Feed URL'si veya örnek XML
  • Alan eşleştirmeleriniz
  • Hata mesajı (varsa)
  • Import log detayları