VibeFox EveryPay for PrestaShop — Yardım
Gereksinimler
PrestaShop: 8.0 ile 9.x.
PHP: 8.0 veya üzeri. Modül, daha eski PHP sürümlerine kurulmayı reddeder.
EveryPay hesabı: mağazanızın API kullanıcı adına, API secret'ına ve işlem hesabı adına ihtiyacınız vardır. Bunları EveryPay Merchant Portal'da, mağazanızın ayarlarında bulabilirsiniz: test modu için demo portalı, gerçek ödemeler için canlı portal. Test ve canlı ortamların ayrı kimlik bilgileri vardır. Ayrıca mağazanızın callback URL'sini her iki portalda da ayarlarsınız (bkz. Yapılandırma).
Mağaza para birimi: işlem hesabı tahsil edilecek para birimini belirler; örneğin EUR3D1, EUR cinsinden tahsilat yapar. Ödeme yöntemi yalnızca bu para birimindeki sepetler için sunulur.
VibeFox lisans anahtarı: vibefox.net üzerinden satın alınır. Bir anahtar yalnızca bir alan adında çalışır.
Kurulum
1. Yönetim panelinde Modules > Module Manager bölümüne gidin ve Upload a module düğmesine tıklayın. Modülün ZIP dosyasını seçin.
2. Yükleme tamamlandığında Configure düğmesine tıklayın veya daha sonra modül listesinde VibeFox EveryPay Payment modülünü bulup Configure düğmesine tıklayın.
3. Configure sayfasının üstündeki lisans bloğundaki License key alanına VibeFox lisans anahtarınızı girin ve Activate düğmesine tıklayın (bkz. Lisans anahtarı).
4. Demo Merchant Portal'dan test API kullanıcı adını, test API secret'ını ve işlem hesabı adını girin. Test Mode seçeneğini açık bırakın.
5. Ayarlar sayfasında gösterilen callback URL'sini, Merchant Portal'daki mağazanızın Callback notification URL alanına kopyalayın.
6. Enable/Disable seçeneğini açın, Save düğmesine tıklayın ve bir test siparişi verin. Her şey çalıştığında canlı kimlik bilgilerini girin, callback URL'sini canlı portalda da ayarlayın ve Test Mode seçeneğini kapatın.
Kurulum sırasında modül EveryPay payment on hold sipariş durumunu oluşturur. PrestaShop, tüm para birimleri, ülkeler ve müşteri grupları için yeni bir ödeme modülü sunar. Bunları Payment > Preferences bölümünden sınırlayabilirsiniz.
Yapılandırma
Tüm ayarlar modül sayfasındadır: Modules > Module Manager > VibeFox EveryPay Payment > Configure. Her bölümün kendi Save düğmesi vardır ve bu düğme tüm sayfayı kaydeder. Alanların üstünde sayfa, test modu açıkken Test modu açık: ödemeler EveryPay demo ortamına gönderilir, gerçek para tahsil edilmez. uyarısını gösterir. Ödeme yöntemi etkinken geçerli modun API kullanıcı adı, API secret'ı veya işlem hesabı eksikse (bu durumda ödeme yöntemi ödeme sayfasında gizlenir) ve işlem hesabı mağazanın varsayılan para biriminden farklı bir para birimiyle tahsilat yapıyorsa da uyarır. Kimlik bilgileriyle birlikte yapıştırılan boşluklar ve satır sonları kaydedilirken silinir.
EveryPay
Enable/Disable: Enable EveryPay payment gateway ödeme yöntemini açar veya kapatır. Varsayılan: off.
Title: müşterilerin ödeme sayfasında gördüğü ödeme yöntemi adı. Siparişte kaydedilen ödeme yöntemi adı da budur. Varsayılan: EveryPay.
Description: ödeme sayfasında ödeme yönteminin altında gösterilen metin. Varsayılan: Pay securely by card or bank link on the EveryPay payment page.
EveryPay hesabı
API kullanıcı adı, API secret'ı ve işlem hesabı adı EveryPay Merchant Portal'da (mağaza ayarları) gösterilir: test modu için demo portalı, gerçek ödemeler için canlı portal. Bölümde her iki portala da bağlantılar bulunur.
Test Mode: açıkken ödemeler test kimlik bilgileriyle EveryPay demo ortamına gönderilir. Gerçek para tahsil edilmez. Varsayılan: on. Açıkken müşteriler ödeme yönteminin altında TEST MODU: EveryPay demo ortamı, gerçek para tahsil edilmez. ifadesini görür.
Test API Username: demo ortamının API kullanıcı adı.
Test API Secret: demo ortamının API secret'ı.
Live API Username: canlı ortamın API kullanıcı adı.
Live API Secret: canlı ortamın API secret'ı.
Kaydedilen gizli anahtarlar bir daha gösterilmez. Alan boş kalır ve Kaydedildi — korumak için boş bırakın. ifadesini gösterir. Yalnızca değiştirmek istediğinizde yeni bir değer girin.
Clear saved API secrets: bir gizli anahtarı işaretleyip Save düğmesine tıklayarak kaldırın. Boş bir alan kayıtlı değeri korur.
Processing Account Name: EveryPay işlem hesabı, örneğin EUR3D1. Hesap tahsil edilecek para birimini belirler: ödeme yöntemi yalnızca bu para birimindeki sepetler için sunulur. Aynı hesap adı her iki modda da kullanılır.
Ödeme bildirimleri (callback)
Callback, bir ödemenin tamamlandığını mağazanıza bildirir; böylece müşteri tarayıcıyı kapatsa bile siparişler oluşturulur. Callback notification URL altında gösterilen URL'yi, EveryPay Merchant Portal'daki mağazanızın Callback notification URL alanına hem demo hem de canlı için kopyalayın. SEO dostu URL'lerle şöyle görünür: https://your-shop/module/wcp_everypay_payment/callback. URL'yi ayarlarda gösterildiği gibi birebir kopyalayın. Ödeme isteği bir callback URL'si taşımaz, bu nedenle portalda ayarlanması gerekir.
Callback yalnızca ödeme referanslarını içerir. Geldiğinde modül, ödemenin oluşturulduğu ortamın kimlik bilgileriyle EveryPay API'den ödeme durumunu sorgular ve yanıtın bu sepete ait olduğunu kontrol eder. Mağazanızın oluşturmadığı bir ödemeye ait callback'ler, EveryPay'e istek gönderilmeden reddedilir. Callback olmadan sipariş, müşteri ödemeden sonra mağazaya döndüğünde veya EveryPay callback'i yeniden gönderdiğinde oluşturulur.
Gelişmiş
Debug log: ödeme olaylarını modül klasöründeki logs/wc_evp_debug.log.php dosyasına kaydeder. Dosya web üzerinden açılamaz. Hatalar ve uyarılar, kapalıyken bile her zaman kaydedilir. API secret'ları, kart verileri ve müşteri e-postaları hiçbir zaman kaydedilmez. Varsayılan: off.
Log: günlüğün boyutunu ve en son kayıtlarını gösterir. Temizlemek için Clear log düğmesine tıklayın.
Uninstall: modül kaldırıldığında ağ geçidi ayarlarını ve günlükleri siler. Siparişlerin EveryPay ödeme verileri her zaman korunur. Varsayılan: off.
Ödeme
Ödeme adımında müşteri ödeme yöntemini (varsayılan olarak EveryPay) seçer ve onaylar. Modül, sepet tutarı için sepet para biriminde, müşterinin e-posta adresi ve fatura adresiyle tek seferlik bir EveryPay ödemesi oluşturur ve müşteriyi EveryPay ödeme sayfasına gönderir. Bu sayfanın dili mağaza diline göre belirlenir (İngilizce, Estonca, Rusça, Letonca, Litvanca, Fince veya Almanca; diğer durumlarda İngilizce). Müşteri orada EveryPay hesabınız için etkin olan yöntemlerden biriyle öder. Bu aşamada henüz bir sipariş yoktur.
Ödemeden sonra müşteri mağazanıza geri döner. Sipariş, yalnızca EveryPay ödemeyi onayladıktan sonra ödenmiş olarak işaretlenir: modül, geri dönüşte ve callback'te EveryPay API'den ödemenin durumunu sorgular. Ardından sipariş oluşturulur ve müşteri standart sipariş onay sayfasını görür. EveryPay ödemeyi hâlâ işliyorsa veya API'sine o anda ulaşılamıyorsa, Payment confirmation sayfasında EveryPay ödemenizi onaylıyor. Sipariş onaylanır onaylanmaz size bir e-posta gönderilecektir. mesajı ve bir Check again düğmesi görünür; callback, EveryPay ödemeyi onayladığında siparişi oluşturur.
Ödeme başarısız olduysa müşteri ödeme sayfasına EveryPay ödemeniz başarısız oldu. Lütfen tekrar deneyin veya başka bir ödeme yöntemi seçin. mesajıyla döner. Müşteri ödeme yapmadan ödeme sayfasından ayrıldıysa mesaj şöyledir: EveryPay ödemesi tamamlanmadı. Tekrar deneyebilir veya başka bir ödeme yöntemi seçebilirsiniz. Sepet korunur. Her yeni deneme yeni bir EveryPay ödemesi oluşturur; önceki denemeler kaydedilir, bu nedenle eski bir bağlantıyla yapılan ödeme yine de tanınır.
EveryPay ödemeyi başlatamazsa müşteri ödeme sayfasında kalır ve kısa bir mesaj görür; örneğin EveryPay geçici olarak kullanılamıyor. Lütfen birazdan tekrar deneyin veya başka bir ödeme yöntemi seçin. Ayrıntılar günlüktedir.
Callback, mağaza bakım modundayken de çalışır ve mağazanızın ülke kısıtlamasıyla engellenmez.
Modül yalnızca tek seferlik ödemeleri destekler. PrestaShop üzerinden iade veya tahsilat yoktur, kayıtlı kart veya tek tıkla ödeme yoktur, abonelik veya yinelenen ödeme yoktur, gömülü kart alanı yoktur ve çoklu para birimi desteği yoktur.
Siparişler
Sipariş durumları
No order yet: müşteri EveryPay'e yönlendirildi ve ödeme yapmadı, ödeme başarısız oldu veya yarıda bırakıldı ya da EveryPay ödemeyi henüz onaylamadı. Yalnızca sepet vardır.
Payment accepted: EveryPay ödemenin tamamlandığını veya yetkilendirildiğini bildirdi. Ödeme, EveryPay ödeme referansı işlem kimliği olarak kaydedilir ve bir not tutarı, para birimini ve referansı gösterir. Yetkilendirilmiş bir ödeme için not, tutarın ayrıldığını belirtir: hesabınız otomatik tahsilat yapmıyorsa ödemeyi EveryPay Merchant Portal'da tahsil edin. Ödeme daha sonra tamamlandığında bir not bunu bildirir.
EveryPay payment on hold: ödemenin manuel incelemeye ihtiyacı vardır. Ödenen tutar veya para birimi sepetten farklıdır (örneğin ödeme başladıktan sonra sepet değiştirilmiştir), sipariş ödeme gelmeden önce iptal edilmiştir veya sipariş artık başka bir ödeme yöntemini kullanmaktadır. Not bunu açıklar ve siparişin ödenmiş olarak işaretlenmediğini belirtir. Ödemeyi Merchant Portal'da kontrol edin, ardından siparişi yerine getirin veya tutarı manuel olarak iade edin. Bu ödemeye ait sonraki callback'ler siparişi otomatik olarak tamamlamaz.
Zaten ödenmiş bir sipariş için ikinci bir ödeme tamamlanırsa sipariş değişmez. Bir not, mükerrer ödemeyi EveryPay Merchant Portal'da iade etmenizi ister.
EveryPay ödeme bloğu
Sipariş sayfasında, siparişin her EveryPay ödeme denemesini gösteren bir EveryPay payment bloğu bulunur: tarih, ödeme referansı (test ödemeleri için Test mode rozetiyle), sipariş referansı, tutar, EveryPay durumu ve sonuç. Altında siparişin EveryPay notes notları, en yenisi en üstte olacak şekilde yer alır.
Check EveryPay payment status: bloktaki düğme, siparişin her EveryPay ödemesini en yeniden en eskiye doğru API ile kontrol eder, sonucu yukarıda anlatıldığı gibi uygular ve her ödemenin durumunu içeren bir not ekler. Sonuç blokta gösterilir. Siparişleri düzenleme yetkisine ihtiyacınız vardır; Modül sayfalarına erişim gerekmez. Bir callback hiç gelmediğinde kullanın; örneğin daha sonraki bir tahsilatı veya iadeyi görmek için.
İadeler
PrestaShop üzerinden yapılan iadeler desteklenmez. EveryPay Merchant Portal'da iade yapın, ardından PrestaShop'ta sipariş durumunu güncelleyin. EveryPay bir ödemeyi iade edilmiş veya chargeback olarak bildirdiğinde modül siparişe yalnızca bir not ekler; sipariş durumu değişmez. Sipariş sayfasındaki PrestaShop'un standart iade düğmeleri EveryPay üzerinden para geri göndermez.
Lisans anahtarı
Modül, vibefox.net üzerinden alınan bir VibeFox lisans anahtarıyla çalışır. License — VibeFox EveryPay Payment lisans bloğu, Modules > Module Manager > VibeFox EveryPay Payment > Configure sayfasında, ayarların üstünde yer alan ilk bloktur. Anahtarı License key alanına girin ve Activate düğmesine tıklayın. Bundan sonra blokta anahtar maskelenmiş olarak, durum (örneğin lisansın geçerli olduğu son tarih ve alan adınız), durumu yeniden kontrol etmek için Check now, başka bir anahtar girmek için Change key ve anahtarı bu mağazadan kaldırmak için Remove key düğmeleri görünür. Bunların altında Product: presta-payment-everypay satırı ve Manage licenses and domains in your account bağlantısı bulunur; bu bağlantı vibefox.net hesabınızı açar. Anahtarı yalnızca modül için Configure yetkisine sahip çalışanlar değiştirebilir. Bloğun metinleri yönetici paneli dilini izler (İngilizce ve Rusça dahildir).
Anahtar kabul edilmezse blok nedenini gösterir; örneğin Key not found, This key belongs to another product, Domain limit reached veya tarihli License expired on. Mağaza adresi değiştikten sonra veya hesabınızda bir alan adı yuvasını serbest bıraktıktan sonra Check now düğmesine tıklayın. Lisans sunucusuna ulaşılamazsa modül son bilinen durumla çalışmaya devam eder.
Bir anahtar yalnızca bir alan adında çalışır: ana mağazanın alan adında, çoklu mağaza kurulumunda da. Anahtarı mağazadan kaldırmak alan adı yuvasını serbest bırakmaz. Yuvayı vibefox.net hesabınızda serbest bırakın.
Etkin bir anahtar olmadan EveryPay, ödeme sayfasında müşterilere gösterilmez. Yine de bir ödeme başlatılırsa müşteri Bu ödeme yöntemi kullanılamıyor. Lütfen başka bir yöntem seçin. ifadesini görür. PrestaShop vitrini yönetim paneline giriş yaptığınızı bilmez, bu nedenle ödeme yöntemi sizin için de gizlenir: modülü bir anahtar satın almadan önce kurabilirsiniz, ancak ödeme sayfasında test edemezsiniz. Modules > Module Manager bölümünde Alerts sekmesinde bir hatırlatma görünür. Mevcut siparişler etkilenmez: zaten başlatılmış ödemeler yine onaylanır ve durum kontrolü çalışır.
Bir lisans sona erdiğinde modül çalışmaya devam eder, ancak güncellemeler ve destek için yenileme gerekir. Yönetici panelinde çalışırken durum otomatik olarak yeniden kontrol edilir: anahtar girildikten sonraki ilk 14 gün boyunca günde bir kez, ardından haftada bir. Cron işi gerekmez. Modülü kaldırmak veya sıfırlamak her zaman lisans anahtarını ve lisans durumunu siler.
Sorun giderme
EveryPay ödeme sayfasında görünmüyor: lisansın etkin olduğunu, Enable/Disable seçeneğinin açık olduğunu, geçerli modun API kullanıcı adı, API secret'ı ve Processing Account Name bilgilerinin girildiğini ve sepet para biriminin işlem hesabının para birimi olduğunu kontrol edin. Bu durumlarda ayarlar sayfası bir uyarı gösterir. Payment > Preferences bölümünde modülün sepet para birimi, müşterinin ülkesi ve müşterinin grubu için izinli olduğunu kontrol edin.
Ödeme yapıldı ama sipariş oluşturulmadı: callback çalışmıyor. Ayarlardaki callback URL'sinin kullandığınız modun (demo veya canlı) Merchant Portal'ında Callback notification URL olarak girildiğini kontrol edin. Müşteri ödemeden sonra mağazaya döndüğünde de sipariş oluşturulur. Modül sayfasındaki Log alanına bakın: hatalar her zaman kaydedilir.
Callback Unknown payment, Unknown payment reference veya Payment does not belong to this order yanıtı veriyor: ödeme bu mağaza veya bu sepet tarafından oluşturulmadı ya da EveryPay yanıtı ile eşleşmiyor. Hiçbir şey değişmez.
Callback Not configured yanıtı veriyor: ödemenin oluşturulduğu ortamın kimlik bilgileri eksik; örneğin test kimlik bilgileri kaldırıldıktan sonra yapılan bir test ödemesi. Bunları yeniden girin; EveryPay callback'i yeniden dener.
Callback Payment status unavailable, Busy, please retry veya Order could not be created yanıtı veriyor: EveryPay API'sine ulaşılamadı, siparişi aynı anda başka bir istek oluşturuyordu ya da sipariş oluşturulamadı (örneğin modül devre dışıysa). EveryPay callback'i yeniden dener. Neden günlükte yazar.
Müşteri «EveryPay geçici olarak kullanılamıyor» mesajını görüyor: EveryPay kimlik bilgilerini reddetti ya da ona ulaşılamadı. Geçerli modun API kullanıcı adını ve API secret'ını kontrol edin.
Müşteri «Bu ödeme yöntemi sipariş para birimini desteklemiyor» mesajını görüyor: sepet para birimi, işlem hesabının para biriminden farklı.
Müşteri Payment confirmation sayfasında kalıyor: EveryPay ödemeyi henüz tamamlamadı. Sipariş, callback tarafından veya EveryPay ödemeyi onayladıktan sonra müşteri Check again düğmesine tıkladığında oluşturulur.
Sipariş EveryPay payment on hold durumunda: sipariş bloğundaki EveryPay notes notlarını okuyun. Tutar veya para birimi farklıydı ya da ödeme gelmeden önce sipariş iptal edilmişti. Ödemeyi Merchant Portal'da kontrol edin, ardından siparişi yerine getirin veya tutarı manuel olarak iade edin.
Geliştiriciler için: modülün README dosyası actionWcpEverypayOneoffRequest (ödeme isteğini değiştirme) ve actionWcpEverypayLocale (ödeme sayfasının dilini değiştirme) hook'larını listeler.
Kaldırma
Modules > Module Manager bölümüne gidin, VibeFox EveryPay Payment yanındaki menüyü açın ve Uninstall seçeneğini seçin. Bu modülün lisans anahtarı ve lisans durumu her zaman kaldırılır. Ayarlarda Uninstall (ağ geçidi ayarlarını ve günlükleri sil) açıksa ağ geçidi ayarları ve günlük kaldırılır. Kapalıysa tüm ayarlar sonraki bir yeniden kurulum için saklanır. Siparişlerin EveryPay ödeme verileri ve EveryPay payment on hold sipariş durumu her zaman korunur. Mevcut siparişler ödeme notlarını ve işlem kimliklerini korur.
EveryPay, ilgili sahibinin ticari markasıdır. Bu modül EveryPay ile bağlantılı değildir ve EveryPay tarafından onaylanmamıştır.
