Çok Satıcılı Checkout ve Ödeme Sistemi Nasıl Kurulur?
Ders 5 / 10 · 27 dakika okuma · İleri
Tek sepet, satıcı bazlı kargo, ödeme girişimi, callback, idempotency, ana sipariş-alt sipariş, refund ve ödeme mutabakatını uçtan uca kurmayı öğrenin.
Bu Derste Öğrenecekleriniz
- ✓Çok satıcılı sepet ve checkout veri modelini tasarlayabilir.
- ✓Ödeme girişimi, doğrulama ve callback durumlarını güvenli biçimde planlayabilir.
- ✓Ana sipariş, satıcı alt siparişi ve finansal snapshot yapısını kurabilir.
- ✓Başarısız ödeme, tekrar callback ve orphan payment senaryolarını yönetebilir.
- ✓Kısmi refund ve ödeme mutabakatı için kabul testleri oluşturabilir.
Pazaryeri Checkout'u Tek Sepet Görünümünün Arkasında Çoklu Operasyon Yönetir
Müşteri tek sepet ve tek ödeme deneyimi beklerken arka planda ürünler farklı satıcılara, kargo koşullarına ve sipariş alt akışlarına ayrılabilir. Kurulumun görevi bu karmaşıklığı müşteriye taşımadan doğru sipariş ve ödeme kayıtlarına dönüştürmektir.
Not — Temel ilke
1. Sepet Veri Modeli
- Sepet.
- Satıcı grubu.
- Ürün/varyant.
- Adet.
- Birim fiyat.
- İndirim.
- Kargo koşulu.
- Vergi/fiyat bileşenleri iş modeline göre.
Sepette satıcı kimliği her kalemle ilişkilendirilmelidir. Böylece checkout, sipariş ve finans tarafında ayrıştırma mümkün olur.
2. Sepete Ekleme Anındaki Kontroller
- Ürün yayında mı?
- Satıcı satışa açık mı?
- Varyant geçerli mi?
- Stok yeterli mi?
- Fiyat güncel mi?
- Teslimat bölgesine uygun mu?
- Adet limiti var mı?
Sepete eklenen veri checkout'a kadar değişebilir. Bu nedenle kritik bilgiler ödeme öncesinde tekrar doğrulanmalıdır.
3. Çok Satıcılı Sepetin Sunumu
Müşteri ürünleri tek sepet içinde görürken satıcı bazlı teslimat veya kargo farklılıklarını anlayabilmelidir.
- Satıcı adı.
- Ürünler.
- Tahmini teslimat.
- Kargo ücreti/koşulu.
- Satıcıya özgü kampanya varsa.
- Toplam sipariş özeti.
4. Checkout Adımlarını Sadeleştirin
- Müşteri/iletişim.
- Teslimat adresi.
- Kargo/teslimat seçenekleri.
- Ödeme.
- Sipariş özeti ve gerekli onaylar.
- Ödeme ve sipariş sonucu.
Gereksiz alanları kaldırın; ancak siparişin yerine getirilmesi ve geçerli süreç için gerekli bilgileri eksiltmeyin.
5. Üyelik Zorunluluğunu İş Modeline Göre Değerlendirin
Misafir checkout kullanılacaksa sipariş takibi, iletişim doğrulaması, iade ve destek süreçlerinin üyelik olmadan nasıl çalışacağı tasarlanmalıdır.
6. Adres ve Teslimat Doğrulaması
- Teslimat bölgesi.
- Posta/il/ilçe alanları.
- Telefon/iletişim.
- Satıcı veya ürün bazlı teslimat kısıtı.
- Kargo servis uygunluğu.
Adres hatası ödeme sonrasında fark edilirse sipariş operasyonunu ve müşteri deneyimini bozabilir.
7. Kargo Ücretini Satıcı Bazında Hesaplayın
Tek sepet içinde farklı satıcılar farklı paketler oluşturabilir. Kargo ücretinin sepet toplamına nasıl yansıyacağını açık bir kuralla belirleyin.
Örnek
8. Kampanya ve İndirim Dağıtımı
Sepet indirimi finansal kayıtlara dağıtılabiliyor olmalıdır. İndirimin platform mu satıcı mı tarafından karşılandığı hakediş hesabını etkiler.
- Platform kuponu.
- Satıcı indirimi.
- Kategori kampanyası.
- Ücretsiz kargo desteği.
- Ortak finansmanlı kampanya.
9. Ödeme Öncesi Son Doğrulama
- Stok yeniden kontrol edilir.
- Fiyat yeniden doğrulanır.
- Satıcı durumu kontrol edilir.
- Kargo/teslimat yeniden hesaplanır.
- İndirim geçerliliği kontrol edilir.
- Nihai tahsilat tutarı oluşturulur.
Müşteriye gösterilen nihai tutar ile ödeme sağlayıcısına gönderilen tutar aynı güvenilir sunucu hesabından üretilmelidir.
10. Ödeme Kaydı ile Siparişi Ayırın
Ödeme girişimi ve sipariş aynı kavram değildir. Bir sipariş için başarısız ve başarılı birden fazla ödeme girişimi oluşabilir.
- payment_attempt_id.
- Sipariş/checkout referansı.
- Tutar.
- Para birimi.
- Sağlayıcı işlem ID.
- Durum.
- Başlangıç/bitiş zamanı.
- Hata kodu.
11. Ödeme Durumları
- Başlatıldı.
- Doğrulama bekliyor.
- Başarılı.
- Başarısız.
- İptal.
- İade edildi/kısmi iade.
- İnceleme/istisna.
Sağlayıcı terminolojisini doğrudan kullanıcıya yansıtmak yerine platformun ortak durum modeline eşleyin.
12. 3D Secure / Ek Doğrulama Akışı
Kullanılan ödeme yönteminde ek doğrulama gerekiyorsa yönlendirme, geri dönüş ve sunucu tarafı doğrulama adımları kesintiye dayanıklı olmalıdır.
Uyarı — Tarayıcı sonucu tek başına yeterli değildir
13. Callback/Webhook İşleme
- Bildirimi al.
- Kaynağı/imzayı doğrula.
- İşlem referansını bul.
- Tutar ve para birimini kontrol et.
- Mevcut durumu kontrol et.
- Idempotent biçimde güncelle.
- Sipariş/finans olayını tetikle.
- Sonucu logla.
14. Idempotency
Ödeme sağlayıcısı aynı bildirimi tekrar gönderebilir. Aynı işlem ikinci kez işlendiğinde yeni sipariş, komisyon veya hakediş oluşturmamalıdır.
Örnek
15. Sipariş Ne Zaman Oluşmalı?
İş modeline göre geçici sipariş rezervasyonu ödeme öncesi oluşturulabilir; ancak 'ödenmiş sipariş' statüsü yalnız doğrulanmış ödeme sonucuyla verilmelidir.
Stok rezervasyon süresi ve başarısız ödeme sonrası rezervasyonun nasıl serbest bırakılacağı ayrıca tanımlanmalıdır.
16. Ana Sipariş ve Satıcı Alt Siparişleri
Başarılı checkout sonrasında müşteri için bir ana sipariş; operasyon için satıcı bazlı alt siparişler oluşturulabilir.
Örnek
17. Sipariş Kalemi Finansal Snapshot'ı
Sipariş anındaki fiyat, indirim, komisyon kuralı ve satıcı bilgisi daha sonra değişse bile geçmiş işlem yeniden hesaplanmamalıdır.
- Birim fiyat.
- Adet.
- İndirim payı.
- Komisyon oranı/kuralı.
- Komisyon tutarı.
- Satıcı payı.
- Kargo/diğer paylar uygun olduğunda.
18. Başarılı Ödeme Sonrası İşlemler
- Ödemeyi başarılı işaretle.
- Siparişi kesinleştir.
- Alt siparişleri oluştur/kesinleştir.
- Stok hareketini tamamla.
- Finansal kayıtları oluştur.
- Satıcılara bildirim gönder.
- Müşteriye onay göster/gönder.
- Analitik olayı kaydet.
Bu zincirde bir adım başarısız olursa görünür retry/istisna mekanizması olmalıdır.
19. Başarısız Ödeme Deneyimi
Müşteriye teknik hata yerine anlaşılır sonuç ve yeniden deneme yolu sunun.
- Sipariş iki kez oluşmamalı.
- Stok sonsuza kadar rezerve kalmamalı.
- Başarısız girişim kaydedilmeli.
- Yeni ödeme girişimi eski kayda bağlanabilmeli.
20. Ödeme Başarılı, Sipariş Oluşmadı Senaryosu
Bu kritik finansal istisna otomatik olarak tespit edilebilmelidir.
- Başarılı sağlayıcı işlemini tespit et.
- Yerel sipariş kaydını ara.
- Eksikse istisna kuyruğuna al.
- Güvenli yeniden işleme uygunsa çalıştır.
- Değilse finans/operasyon incelemesine yönlendir.
- Müşteri etkisini çöz.
21. İade ve Kısmi İade
İade sipariş kalemi seviyesinde yönetilebilmelidir. Bir satıcının ürünü iade edildiğinde diğer satıcıların kalemleri etkilenmemelidir.
- İade edilebilir tutar.
- Daha önce iade edilen tutar.
- Sağlayıcı refund ID.
- İade nedeni.
- Finansal ters kayıt.
- Durum.
22. Ödeme Mutabakatı
Platform ödeme kayıtları ile ödeme sağlayıcısının işlem kayıtları düzenli karşılaştırılmalıdır.
- Platformda başarılı / sağlayıcıda yok.
- Sağlayıcıda başarılı / platformda yok.
- Tutar farkı.
- Çift işlem.
- Refund farkı.
- Durum farkı.
Farklar otomatik kapanmamalı; açıklanabilir sonuca bağlanmalıdır.
23. Checkout KPI'ları
- Sepet → checkout.
- Checkout → ödeme başlatma.
- Ödeme başarı oranı.
- 3D doğrulama başarı oranı uygun olduğunda.
- Teknik ödeme hata oranı.
- Sepet terk.
- Orphan payment sayısı.
- Çift işlem engelleme.
- Refund başarı süresi.
24. Uçtan Uca Test Senaryoları
- Tek satıcı / tek ürün başarılı ödeme.
- İki satıcı / tek ödeme.
- Stok ödeme öncesi tükendi.
- Fiyat checkout sırasında değişti.
- Ödeme başarısız → yeniden deneme.
- Callback iki kez geldi.
- Başarılı ödeme → callback gecikti.
- Başarılı ödeme → sipariş kayıt hatası.
- Tek kalem kısmi iade.
- Tam iade.
Uygulama: Checkout ve Ödeme Akış Haritası
- Sepet veri modelini yazın.
- Checkout adımlarını belirleyin.
- Satıcı bazlı kargo hesabını tanımlayın.
- Kampanya maliyet sahibini kaydedin.
- Ödeme girişimi durumlarını belirleyin.
- Callback doğrulama adımlarını yazın.
- Idempotency anahtarını belirleyin.
- Ana sipariş/alt sipariş modelini çizin.
- Finansal snapshot alanlarını seçin.
- Başarısız ve orphan payment akışını yazın.
- 10 test senaryosunu uygulama planına ekleyin.
Şimdi Uygulayın
Ders Çıktısı
Elinizde tek sepet deneyimini güvenilir ödeme, ana sipariş, satıcı alt siparişi, finansal snapshot, hata yönetimi ve mutabakatla birleştiren Checkout ve Ödeme Akış Haritası bulunmalıdır.
Siparişin tahsilat tarafını kurduk. Sonraki derste bu tahsilatı satıcı bazında komisyon, hakediş, mahsup ve mutabakat kayıtlarına dönüştüreceğiz.
Bu Derste Ne Öğrendik?
- ✓Çok satıcılı checkout müşteriye tek sepet ve tek ödeme sunarken arka planda satıcı bazlı sipariş, kargo ve finans kayıtlarını ayrıştırmalıdır.
- ✓Güvenilir ödeme doğrulaması, idempotency, finansal snapshot ve istisna yönetimi bu yapının temelidir.