Ana içeriğe atla

Genel Bakış

Terk edilen sepetler, kaybedilen geliri kurtarmak için en yüksek etkiye sahip fırsatlardan biridir. Sepetini terk eden kullanıcıların çoğu hâlâ satın alma niyetindedir — sadece zamanında bir hatırlatmaya ihtiyaçları vardır. Bu kılavuz, OneSignal’da aşağıdakileri yapan otomatik bir terk edilen sepet Journey’si oluşturmayı gösterir:
  • Sepet etkinliğini algılar
  • Kısa bir hareketsizlik süresi bekler
  • Kişiselleştirilmiş bir hatırlatma gönderir
  • Satın alma veya sepet boşaltma sonrasında mesaj göndermeyi hemen durdurur
Bunu aşağıdaki yöntemlerden biriyle uygulayabilirsiniz:
  • Özel Etkinlikler (çoğu uygulama için önerilir)
  • Etiketler (daha basit, sınırlı kullanım durumları)
Doğru seçim, mesajda göstermek istediğiniz verilere ve bu verilerin nereden geldiğine bağlıdır. Ne oluşturacaksınız Bu kılavuzun sonunda şunlara sahip olacaksınız:
  • OneSignal’a gönderilen sepet etkinliği (Etiketler veya Özel Etkinlikler aracılığıyla)
  • Net, kod ile tanımlanmış bir terk etme sinyali
  • Sepet verilerini kişiselleştiren mesaj şablonları
  • Şunları yapan bir Journey:
    • Terk etme sinyali alındığında başlar
    • Göndermeden önce bekler
    • Terk edilen sepet mesajları gönderir
    • Sepet boşaltıldığında veya satın alma tamamlandığında hemen çıkar
  • Mesaj ve gelir performansını ölçmek için analizler
Terk edilen sepetler nasıl modellenir Bu kılavuz, kullanıcı sepetine ürün eklediğinde veya kaldırdığında her seferinde “sepet güncellendi” etkinliklerini izlediğinizi varsayar. Bu, içeriğinize abonelik gibi tek bir ürün veya alışveriş sepeti gibi birden fazla ürün olabilir. OneSignal bir cart_updated etkinliği aldığında:
  • Kullanıcı Journey’ye girmeye uygun hale gelir
  • Bekleme süresi doğal olarak geri dönmeleri için zaman tanır
  • Mesaj yalnızca çıkmadıkları takdirde gönderilir
  • Sepet boşaltıldığında kullanıcı hemen çıkar

Kurulum

Adım 1. Sepet verilerinizi ve kaynağınızı planlayın

Hangi sepet bilgilerini göstermek istediğinize ve bu verilerin nereden geldiğine karar verin. Yaygın sepet verileri şunları içerir:
  • Ürün adı, görseli, fiyatı ve miktarı
  • Sepetteki ürün sayısı
  • Sepete geri dönüş için derin bağlantı
Veri kaynağınız etkinlikleri nasıl göndereceğinizi belirler:
Veri kaynağıÖnerilen yöntem
Uygulama veya web sitesiOneSignal Frontend SDK
Backend veya veritabanıOneSignal REST API
Üçüncü taraf platformEntegrasyon tabanlı Özel Etkinlikler
Bu adımın sonunda hangi verileri göndereceğinizi ve nasıl göndereceğinizi bileceksiniz.

Adım 2. OneSignal’a sepet etkinliği gönderin

Sepet durumu değiştiğinde, etkinliğin izlenebilmesi için güncellenmiş sepet verilerini OneSignal’a gönderin. Bu kılavuz, sepet etkinliğini izlemek için cart_updated etkinliği veya etiketini ve en az bir özelliği kullanır. Adım 1’de seçtiğiniz yöntemi seçin:
Sepet her değiştiğinde bir cart_updated Özel Etkinliği gönderin. Sepette ürün varken ürün özelliklerini ekleyin, sepet boşaltıldığında çıkarın.
ReferansAçıklama
trackEvent yöntemiFrontend SDK aracılığıyla gönderin (Mobile SDK, Web SDK)
Özel Etkinlikler API’siREST API aracılığıyla gönderin
EntegrasyonlarEntegrasyon aracılığıyla gönderin
Frontend SDK trackEvent yöntemi örneği
OneSignal.User.trackEvent("cart_updated", {
  product_name: "24 Pack of Acorns",
  product_image: "https://i.imgur.com/ssPCfbC.png",
  product_price: 12.99,
  product_quantity: 1,
  cart_url: "https://yourdomain.com/cart"
});
Özel Etkinlikler API’si örneği
{
  "events": [
    {
      "name": "cart_updated",
      "properties": {
        "product_name": "24 Pack of Acorns",
        "product_image": "https://i.imgur.com/ssPCfbC.png",
        "product_price": "$12.99",
        "product_quantity": "1",
        "cart_url": "https://yourdomain.com/username/cart"
      },
      "external_id": "ID_OF_THE_USER"
    }
  ]
}
Sepet etkinliği artık OneSignal’a gönderiliyor. Sepet her değiştiğinde, OneSignal mesajları tetiklemek ve kişiselleştirmek için gereken güncellenmiş verileri alır.

Adım 3. Terk edilen sepet mesaj şablonları oluşturun

Sepet verilerine dinamik olarak başvuran mesaj şablonları oluşturun. Bu bölümde kullanılan kavramlar hakkında daha fazla ayrıntı için bakın:
Liquid söz dizimi formatını kullanarak etkinlik özelliklerine başvurun:
Liquid
{{journey.event.name.properties.property_name | default: "fallback_value"}}
Mesaj:
Liquid
You left {{journey.event.cart_updated.properties.product_name | default: "items"}} in your cart.
Görsel:
Liquid
{{journey.event.cart_updated.properties.product_image | default: "https://i.imgur.com/ssPCfbC.png"}}
Başlatma URL’si:
Liquid
{{journey.event.cart_updated.properties.cart_url | default: "https://yourdomain.com/cart"}}
product_image doğrudan, herkese açık bir görsel URL’si değilse görsel görüntülenmez.product_image değeriniz çevrimiçi olarak mevcut bir görsel dosyasının adıysa, aşağıdaki formatı kullanarak görsele başvurabilirsiniz: https://yourdomain.com/images/{{journey.event.cart_updated.properties.product_image | default: "stock_image"}}.png
Özel Etkinlikler ile terk edilen sepet şablonu örneği
E-posta örneklerine, yardıma veya daha fazla ilhama mı ihtiyacınız var?

Özel Etkinlikler ile mesajları kişiselleştirin

Journey’lerde Özel Etkinlikleri kullanma hakkında kapsamlı kılavuz. Etkinlik depolama, Journey yapılandırması, terk edilen sepet örneği, en iyi uygulamalar ve sorun giderme içerir.

Özellikler ile mesajları kişiselleştirin

Journey’lerde Özellikler ve Etiketleri kullanma hakkında kapsamlı kılavuz. Etkinlik depolama, Journey yapılandırması, terk edilen sepet örneği, en iyi uygulamalar ve sorun giderme içerir.

Adım 4. Terk edilen sepet Segmenti oluşturun (Yalnızca etiketler)

Bu adım yalnızca sepet etkinliğini izlemek için Etiketler kullanıyorsanız gereklidir. Özel Etkinlikler kullanıyorsanız bu adımı atlayabilirsiniz.
Segment, Journey’ye kimin girebileceğini belirleyecektir. Daha fazla ayrıntı için Segmentler bölümüne bakın. Segmente iki filtre ekleyin:
  1. User Tagcart_updated exists
  2. Last Sessionless than 7 days ago
cart_updated etiketinin mevcut olduğu ve son oturumun 7 günden az önce olduğu Etiket Filtreli Terk Edilen Sepet Segmenti
Artık sepetini güncelleyen ve son 7 gün içinde uygulamayı veya web sitesini ziyaret eden kullanıcıları izleyebiliriz.Aşağıdaki koşullardan herhangi biri karşılandığında kullanıcılar segmentten otomatik olarak çıkarılır:
  • Uygulamayı/web sitesini son ziyaretlerinden bu yana 7 gün geçtikten sonra
  • cart_updated etiketi kaldırıldığında

Adım 5. Terk edilen sepet Journey’sini oluşturun

Sepet etkinliğine tepki veren bir Journey oluşturun. Daha fazla ayrıntı için Journeys bölümüne bakın.
Yeni Terk Edilen Sepet Journey'si oluşturma ekranı

Journey ayarları

Giriş, Çıkış ve Yeniden giriş kuralları hakkında daha fazla ayrıntı için Journey Ayarları kılavuzunu inceleyin. Giriş Kuralları:
  • Custom Event seçin
  • Custom Event Name: cart_updated
  • Özelliğe göre filtrele: Aşağıdaki tüm özelliklere sahip: product_name exists
Özel Etkinliklerin kullanılması, bireysel kullanıcıların Journey’lere birden fazla kez girmesine izin verir.Yalnızca belirli bir özellik mevcut olduğunda girecekleri şekilde kullanıcıları filtrelemek için özellikleri kullanın.
Terk Edilen Sepet Journey'si Özel Etkinlik Giriş Kuralları
Çıkış Kuralları:
Kullanıcılar sepetlerini boşalttığında veya Journey’yi tamamladığında Journey’den çıkmalıdır.
  • Meet a certain condition seçin
  • Exit when custom event condition occurs seçeneğini işaretleyin
  • Custom Event Name: cart_updated
Terk Edilen Sepet Journey'si Özel Etkinlik Çıkış Kuralları
Bu yapılandırma, hem giriş hem de çıkış kuralları için aynı Özel Etkinlik adını (cart_updated) kullanır.Bu, kullanıcının aynı anda yalnızca bir Journey örneğinde bulunmasını sağlar. Her sepet güncellemesinde, kullanıcının o örneği çıkar ve aynı kullanıcının yeni bir örneği Journey’ye girer. Bu nedenle Giriş Kuralları içinde kullanıcıları filtrelemek için özellikleri kullanmak önemlidir.
Yeniden Giriş Kuralları (Yalnızca etiketler):
  • Yes, after a certain amount of time seçin
  • Yeniden giriş süresini 1 day olarak ayarlayın
Terk Edilen Sepet Journey'si Yeniden Giriş Kuralları
Bu kılavuzu buraya kadar eksiksiz takip ettiyseniz, kullanıcılar:
  1. Sepetlerini terk ettiklerinde/güncellediklerinde Journey’ye girer
  2. Sepetlerini boşalttıklarında veya Journey’yi tamamladıklarında Journey’den çıkar.
  3. Journey’ye yeniden girmeye uygun olur:
    • Özel Etkinlikler: cart_updated etkinliği her gerçekleştirildiğinde
    • Etiketler: Journey’den son çıkışlarından 1 gün geçtikten sonra ve segmentte oldukları sürece.
Journey Ayarlarını kaydedin.

Journey adımları

Kullanıcılar Giriş Kurallarına göre Journey’ye girerler. Bu genellikle etkinlik/etiket alındıktan birkaç dakika içinde gerçekleşir. Kullanıcılar, sona ulaşana veya bir çıkış kuralı karşılanana kadar Journey’de adım adım ilerler. Temel bir terk edilen sepet Journey’si için 2 şey yapmak istiyoruz:
  1. Kullanıcıya sepetini boşaltması için yeterli zaman vermek (satın alma yapmak veya sepetini manuel olarak boşaltmak)
  2. Sepetini boşaltmazlarsa, sepetlerindeki ürünleri hatırlatan bir mesaj göndermek
Bunu önce Journey’ye bir Wait adımı ekleyerek gerçekleştirin.
  • Bekleme süresini istediğiniz kadar uzun ayarlayın. Kullanıcı hâlâ satın alma niyetindeyken mesaj gönderebilmeniz için 1 hour olarak ayarlamanızı öneririz.
Bir Message adımı ekleyin.
  • Adım 3’te oluşturduğunuz Abandoned Cart Push Bildirim şablonunu seçin.
Temel Terk Edilen Sepet Journey Adımları
Temel Terk Edilen Sepet Journey’si artık yapılandırıldı.Bir kullanıcı Journey’ye girdiğinde 1 saat bekleyecektir. Journey’den çıkmazlarsa, terk edilen sepet push bildirimini alacaklardır.

Gelişmiş Journey Kurulumu

Daha yüksek kurtarma oranları için Journey’yi zaman içinde daha fazla mesaj gönderecek şekilde genişletin.

Mesaj Dizisi

Çok yaygın ve yüksek performanslı bir tempo:
  1. İlk mesajı 1 saat sonra gönderin (bu kılavuzda tamamlandı).
  2. 1 gün için başka bir Wait adımı ekleyin ve ikinci bir mesaj gönderin (sepetlerini güncellemelerinden ~24 saat sonra).
  3. 2 gün için başka bir Wait adımı ekleyin ve üçüncü bir mesaj gönderin (sepetlerini güncellemelerinden ~72 saat sonra).

Mesaj Türleri ve İçeriği

OneSignal ile hangi kanalları kurduğunuza bağlı olarak, çok kanallı bir yaklaşım kullanarak daha iyi sonuçlar elde edersiniz.
  1. Bu kılavuz, ilk saatten sonra bir push bildirim mesajı göndermeyi gösterir. Bu, kullanıcı hâlâ çevrimiçi olabilecekken satışı yakalamaya çalışmak için yararlı bir hatırlatma olarak kullanılır.
  2. İkinci mesajınız için hem push hem de e-posta kullanmayı düşünün. Bu ikinci mesajı, hafif bir aciliyet duygusuyla faydaları ve sosyal kanıtı vurgulamak için kullanın.
  3. Dizideki son mesaj için, bir e-posta veya belki bir SMS (kullanım durumuna bağlı olarak) “son çağrı” olarak kullanın. Satın almalarını teşvik etmek için bir indirim kodu veya başka bir teşvik kullanmayı düşünün.

Yedek Mesajlar

OneSignal’ın Journey’leri, bir mesajın onaylanmış teslim, tıklama veya açılma durumunu kontrol etmek için kullanabileceğiniz Wait Until dallanma mantığı sağlar ve belirli bir süre içinde gerçekleştirilmezse bir yedek mesaj gönderir. Bu, belirli bir mesaj kanalından aboneliğini iptal etmiş olabilecek kullanıcılar için son derece yararlıdır. Yedek mesajların nasıl kurulacağı hakkında daha fazla ayrıntı Yedek Mesajlar kılavuzumuzda bulunabilir.

Performansı izleyin

Journey analizleri, Journey’nin genel olarak nasıl performans gösterdiğini izlemek için kullanılabilir. Ayrıca Şablon analizleri kullanarak her mesajın performansını izleyebilirsiniz.

Outcomes ile geliri izleyin

Bu Journey’den elde edilen geliri izlemek için Özel Outcomes kullanabilirsiniz. Bir satın alma yapıldığında, gönderilen belirli mesajla ilişkili geliri izlemek için etkinliği “Custom Outcome” olarak gönderebilirsiniz. Custom Outcomes, Mobile SDK veya Web SDK aracılığıyla gönderilebilir.
Example: Send purchase outcome via frontend SDK
// Example: capture total price and item count at checkout
const checkoutPriceTotal = document.querySelector(".checkout-price-total").innerText;
const checkoutItemsTotal = document.querySelector(".checkout-items-total").innerText;

function updateOSOnCartPurchase(checkoutPriceTotal, checkoutItemsTotal) {
  const purchasePriceTotal = parseFloat(checkoutPriceTotal);
  const purchasedItemCount = parseInt(checkoutItemsTotal);

  OneSignalDeferred.push(function (OneSignal) {
    OneSignal.Session.sendOutcome("Purchase", purchasePriceTotal);
    OneSignal.Session.sendOutcome("Purchased Item Count", purchasedItemCount);
  });
}

const submitPurchaseButton = document.querySelector(".submit-payment");
if (submitPurchaseButton) {
  submitPurchaseButton.addEventListener("click", () => {
    updateOSOnCartPurchase(checkoutPriceTotal, checkoutItemsTotal);
  });
}
Outcomes, tanımlanan bir ilişkilendirme penceresi içinde kullanıcıların tıkladığı veya etkilendiği mesajlara gelir atfedebilir.
Terk edilen sepet Journey’sini başarıyla uyguladınız. Mesaj göndermeye başlamaya hazır olduğunuzda Set Live seçin.

Sıkça Sorulan Sorular

Sepet izleme için Özel Etkinlikler mi yoksa Etiketler mi kullanmalıyım?

Özel Etkinlikler, çoğu uygulama için önerilir. Daha zengin verileri destekler, Journey giriş kurallarında özellik tabanlı filtrelemeye izin verir ve aynı etkinlik tekrar tetiklendiğinde yeniden girişi otomatik olarak ele alır. Etiketler, yalnızca bir sepetin var olup olmadığını izlemenin yeterli olduğu daha basit kullanım durumları için çalışır, ancak manuel segment oluşturma ve yeniden giriş yapılandırması gerektirir.

İlk hatırlatmayı göndermeden önce ne kadar beklemeliyim?

Bir ila iki saat yaygın bir başlangıç noktasıdır. Bu, satın alma niyeti hâlâ tazeyken kullanıcıya kendi kendine dönmesi için yeterli zaman tanır. Farklı bekleme sürelerini test edin ve kitleniz için en iyi çalışanı bulmak için Journey analizlerini kullanın.

Bir kullanıcı Journey’deyken sepetini güncellerse ne olur?

Özel Etkinlikler ile kullanıcı mevcut Journey örneğinden çıkar (cart_updated bir çıkış koşulu olarak tetiklendiği için) ve güncellenmiş etkinlik verileriyle hemen yeniden girer. Etiketler ile etiket hâlâ mevcut olduğundan kullanıcı aynı Journey örneğinde kalır — yeniden giriş süresini bekledikten sonra çıkıp yeniden girer.
Yardıma mı ihtiyacınız var?Destek ekibimizle sohbet edin veya support@onesignal.com adresine e-posta gönderinLütfen şunları ekleyin:
  • Yaşadığınız sorunun ayrıntıları ve varsa yeniden üretme adımları
  • OneSignal Uygulama Kimliğiniz
  • Varsa Harici ID veya Abonelik ID
  • Varsa OneSignal Panosunda test ettiğiniz mesajın URL’si
  • İlgili günlükler veya hata mesajları
Size yardımcı olmaktan mutluluk duyarız!