İçeriğe atla
 Shopware 6 · 20–30 dk. · ileri düzey

Perfect Day'i Shopware 6'ya Entegre Etme.

Shopware 6 mağazanız üzerinden Perfect Day kuponlarınızı satabilirsiniz. Shopware, özel alan içeriğine sahip bir webhook'u varsayılan olarak sağlamaz; küçük bir köprüye ihtiyacınız olacak. Bir duyuru: Bu kılavuz Shopware 6 için geçerlidir. Shopware 5 için lütfen destek ekibiyle iletişime geçin.

Önceden gerekli olanlar: Bir kere git genel hazırlık Bu işlem, bir kupon oluşturmayı, uygulama şifresini almayı ve webhook URL'sini sağlamayı içerir. Yaklaşık beş dakika sürer ve tüm mağaza sistemleri için geçerlidir.

Adım 1 — Kupon kimliği için özel bir alan oluşturun

  1. Özel alan kümesi oluşturun

    Shopware yönetici paneli → Ayarlar → Sistem → Ek alanlar„Kümeler oluştur". Set adı: Mükemmel Gün. Altında Atamalar seçenek „"Ürün"" seçmek.

  2. Alan ekle

    Bu değerlere sahip yeni alan:

    • Teknik adı: pfd_kupon_kimliği
    • Tip: Sayı (Tamsayı)
    • Ekran adı: Mükemmel Gün Kupon Kimliği

    Kaydetmek.

Adım 2 — Her ürün için kupon numarasını girin

  1. Ürün düzenleyiciye girin.

    Shopware yönetici paneli → Kataloglar → Ürünler → Ürünü aç → Sekmeler „Teknik Özellikler" → Blok „"Ek alanlar"". Ayarlamak „"Mükemmel Gün Kuponu"" Platform arka ofisinden elde edilen değere bağlı olarak (örneğin,. 15114) ve kaydedin.

3. Adım — Bridge uygulamasını yükleyin

Shopware, özel alan içeriğine sahip bir webhook içermez. Bunu yönetmek için küçük bir Shopware uygulamasına ihtiyacınız olacak. Bir uygulama iskeleti hazırladık; bitmiş ürünü destek ekibimizden talep üzerine alabilirsiniz. Ya da bu şablonu kullanarak kendiniz oluşturabilirsiniz.

  1. Uygulama bildirim dosyası (manifest.xml)

    Manifest dosyası uygulamayı ve sipariş ödemesi webhook'unu kaydeder. Manifest dosyasına köprü alan adınızı girin. URL-bağlanmak.

    Kodun tamamını görüntüle — XML · manifest.xml
    XML · manifest.xml
    MükemmelGünBağlayıcısı  Sipariş verilerini Perfect Day kupon kimlik numaralarıyla birlikte platforma gönderin. DigElite (c) DigElite 1.0.0 İLE
  2. Köprü uç noktası (kendi sunucunuz)

    Köprü, Shopware webhook'unu alır, her öğe için özel alanı alır, Perfect Day formatına dönüştürür ve iletir. PHP örneği:

    Kodun tamamını görüntüle — PHP · bridge.php
    PHP · bridge.php
    <?php
    // bridge.php — empfängt Shopware-Webhook, ruft Shopware-API für
    // Produktdetails, leitet ans Perfect Day weiter.
    
    $rawPayload = file_get_contents('php://input');
    $payload = json_decode($rawPayload, true);
    $order = $payload['data']['payload']['order'] ?? null;
    if (!$order) { http_response_code(400); exit; }
    
    // Shopware-API-Token holen (Server-zu-Server, eigene Credentials)
    $swToken = sw_admin_token();
    
    $items = [];
    foreach ($order['lineItems'] as $li) {
        $product = sw_api_get('/api/product/' . $li['productId'], $swToken);
        $couponId = $product['customFields']['pfd_coupon_id'] ?? null;
        if (!$couponId) continue;
        $items[] = ['coupon_id' => (int)$couponId, 'count' => (int)$li['quantity']];
    }
    if (empty($items)) { http_response_code(200); exit; }
    
    $pfdPayload = [
        'shop_order_id' => $order['orderNumber'],
        'shop_type'     => 'shopware',
        'shop_domain'   => parse_url($order['salesChannel']['domains'][0]['url'], PHP_URL_HOST),
        'customer' => [
            'email'  => $order['orderCustomer']['email'],
            'name'   => trim($order['orderCustomer']['firstName'] . ' ' . $order['orderCustomer']['lastName']),
            'locale' => substr($order['language']['locale']['code'], 0, 2),
        ],
        'items'             => $items,
        'order_total_cents' => (int) round(($order['amountTotal'] ?? 0) * 100),
        'currency'          => $order['currency']['isoCode'] ?? 'EUR',
        'placed_at'         => $order['orderDateTime'] ?? gmdate('c'),
    ];
    
    $ch = curl_init('https://plattform.deinperfectday.de/wp-json/perfectday/shop/webhook/order');
    curl_setopt_array($ch, [
        CURLOPT_POST           => 1,
        CURLOPT_RETURNTRANSFER => 1,
        CURLOPT_HTTPHEADER     => [
            'Content-Type: application/json',
            'Authorization: Basic ' . base64_encode('DEIN-USER:DEIN APP PWD'),
        ],
        CURLOPT_POSTFIELDS => json_encode($pfdPayload),
        CURLOPT_TIMEOUT    => 15,
    ]);
    curl_exec($ch);
    curl_close($ch);
    
    http_response_code(200);
  3. Uygulamayı sıkıştırılmış dosyadan çıkarın ve yükleyin.

    Manifest ve köprü URL'si tek bir yerde uygulama.zip paketleme (bkz. Shopware BelgeleriArdından Shopware Yönetici Paneli → Eklentiler → Kendi eklentilerinizi yükleyin → ZIP dosyasını ekleyin → etkinleştirin.

Daha kolay: Cloud Bridge kullanın

Kendi köprünüzü kurmak çok karmaşık geliyorsa, kendi sunucunuz olmadan da bunu yapmanız mümkün.

  1. Make.com, Zapier veya n8n

    Make.com: Tetikleyici olarak „Webhooks → Custom webhook" modülü, zenginleştirme için „Shopware → Get a Product", çıktı olarak „HTTP → Make a request" modülü — kurulum yaklaşık 15 dakika sürer. n8n Kendi sunucunuzda barındırılabildiği için GDPR'ye daha uygundur. Tercih ettiğiniz araçla ilgili bir destek talebi gönderin, size önceden yapılandırılmış bir iş akışı sağlayalım.

Adım 4 — Test sırası

  1. Sipariş verin ve kontrol edin.

    Bir test siparişi verin ve ödemeyi "Ödendi" olarak işaretleyin. Köprü, Shopware tarafından otomatik olarak çağrılmalıdır. Kontrol edin: Platform arka ofisi → Mükemmel Gün → Mağaza siparişleri (Giriş ile) mağaza_türü=mağaza_malzemeleri?) ve müşteri posta kutusundan yazdırma düğmesi bulunan marka e-postasına.

Bir şey sıkışmışsa

Sorun giderme.

Webhook çalıştırılmadı.

Shopware yönetici paneli → Ayarlar → Sistem → Günlükler → Uygulama Web Kancaları. Eğer orada hatalar görüntüleniyorsa, genellikle uygulama manifest URL'si yanlıştır veya köprüye erişilemiyordur.

Mükemmel gün uç noktasında HTTP 401 hatası

Köprü kodundaki kullanıcı adı veya uygulama şifresi yanlış. wp-config.php-Sabit değerler, kod içine yazılmış değerlerden daha güvenlidir.

HTTP 403 — yasaklanmış kupon

O pfd_kupon_kimliği Özel alandaki öğeler, platformdaki sağlayıcı hesabınıza ait değildir.

Köprü sunucusuna ulaşılamıyor.

Köprü kendi sunucunuzda mı çalışıyor? SSL sertifikası geçerli mi? Sunucu herkese açık mı? Shopware, bulut arka ucundan sunucunuza POST istekleri gönderebilmelidir.

Kurulum hizmeti

Bunu sizin için biz mi kurmamızı tercih edersiniz?

Shopware, zorunlu köprü nedeniyle Shopify veya WooCommerce'e göre önemli ölçüde daha karmaşıktır. Biz, yerleşik köprüye sahip tamamen entegre bir Shopware uygulaması sunuyoruz veya köprüyü tamamen sunucularımızda barındırabiliriz. Tek yapmanız gereken Shopware API kimlik bilgilerinizi sağlamak.

Sıkça Sorulan Sorular

Hâlâ sorularınız var mı?

Bunu kendi sunucunuz olmadan yapmak mümkün mü?
Evet. Kendi sunucunuzda barındırdığınız bir köprü yerine Make.com, Zapier veya kendi sunucunuzda barındırdığınız bir n8n kullanabilirsiniz. İstek üzerine önceden yapılandırılmış bir iş akışı sağlayabiliriz.
Bu kılavuz Shopware 5 için de geçerli mi?
Hayır. Shopware 5'te yerleşik özel alan webhook desteği bulunmamaktadır; ayrı bir eklenti gereklidir. Shopware 5 kullanıyorsanız lütfen bir destek talebi gönderin.
Shopware için yerel bir eklenti geliştirmeyi düşünüyor musunuz?
Evet, orta vadede. Yerel bir eklenti, köprü kurulumuna olan ihtiyacı ortadan kaldıracaktır. Sipariş talebe bağlıdır; ilgileniyorsanız bana bildirin.

Mağaza bağlantısı kuruldu — peki şimdi ne olacak?

Webhook çalışmaya başladıktan sonra, tüm siparişler otomatik olarak arka ofisinizde görünecektir. Başka bir bağlantıya ihtiyacınız varsa, her ek mağaza birkaç dakika içinde kurulabilir.

Mağaza genel görünümüne git