VibeFox Datatrans 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.
Datatrans hesabı: Merchant ID'ye, sunucudan sunucuya API parolasına ve webhook'lar için önerilen HMAC-SHA256 imza anahtarına ihtiyacınız vardır. Sandbox kimlik bilgileri Datatrans sandbox Web Admin'den (admin.sandbox.datatrans.com), canlı ortam kimlik bilgileri canlı Web Admin'den (admin.datatrans.com) alınır. Sandbox ve canlı ortam, farklı Merchant ID'lere ve anahtarlara sahip ayrı Datatrans hesaplarıdır.
Erişilebilir mağaza: Datatrans webhook'ları kendi sunucularından gönderir; bu nedenle mağazanıza internetten erişilebilmelidir.
VibeFox lisans anahtarı: vibefox.net üzerinden satın alınır. Bir anahtar 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 Datatrans Gateway öğesini bulup Configure düğmesine tıklayın.
3. VibeFox lisans anahtarınızı Configure sayfasının üstündeki lisans bloğunda License key alanına yapıştırın ve Activate düğmesine tıklayın (bkz. Lisans anahtarı).
4. Datatrans sandbox Web Admin'den aldığınız sandbox kimlik bilgilerini girin (bkz. Yapılandırma).
5. Enable/Disable seçeneğini açın ve Save düğmesine tıklayın. Sandbox modunda bir test ödemesi yapın. Her şey çalıştığında canlı ortam kimlik bilgilerini girin ve Sandbox mode seçeneğini kapatın.
Kurulumda modül Datatrans payment on hold sipariş durumunu oluşturur. PrestaShop, yeni ödeme modülünü tüm para birimleri, ülkeleri ve müşteri gruplarında varsayılan olarak etkinleştirir. Bunları Payment > Preferences bölümünde sınırlayabilirsiniz; Datatrans yalnızca orada izin verilen para birimleri için gösterilir.
Yapılandırma
Tüm ayarlar modül sayfasındadır: Modules > Module Manager > VibeFox Datatrans Gateway > Configure. Her bölümün kendi Save düğmesi vardır ve bu düğme tüm sayfayı kaydeder. Ödeme yöntemi etkin olduğu halde geçerli ortamda Merchant ID veya API parolası yoksa, sayfa eksik alanlarla birlikte Datatrans is hidden at checkout until these settings are filled in: mesajını gösterir. Sandbox modu açıkken sayfa Sandbox mode is on: payments go to the Datatrans sandbox, no real money is charged. mesajını gösterir.
Datatrans
Enable/Disable: Enable Datatrans Payment ödeme yöntemini açar veya kapatır. Varsayılan: kapalı.
Title: müşterinin ödeme adımında gördüğü ödeme yöntemi adı. Siparişte kaydedilen ödeme yöntemi adı da budur. Varsayılan: Datatrans. Zorunlu.
Description: ödeme adımında ödeme yönteminin altında gösterilen metin. Varsayılan: Pay securely via Datatrans.
Sandbox mode: Datatrans sandbox'ını kullanır: test ödemeleri, gerçek para alınmaz. Bu anahtar hem Datatrans sunucularını hem de yeni ödemeler için kullanılan kimlik bilgilerini değiştirir. Varsayılan: açık. Gerçek ödeme almak için kapatın. Açık olduğu sürece müşteriler ödeme yönteminin altında Sandbox mode: no real payment is taken. mesajını görür. İadeler ve tahsilatlar, bu anahtarın konumu ne olursa olsun, her zaman ödemenin yapıldığı ortamı kullanır.
Sandbox kimlik bilgileri
Bunları Datatrans sandbox Web Admin'den (admin.sandbox.datatrans.com) kopyalayın. İmza anahtarı orada, güvenlik ayarlarında bulunur.
Sandbox merchant ID: sandbox hesabınızın Merchant ID'si.
Sandbox API password: sandbox hesabının sunucudan sunucuya API parolası.
Sandbox HMAC sign key: webhook'ların Datatrans-Signature başlığını doğrulamak için kullanılan onaltılık anahtar. Bu anahtar olmadan her webhook, Datatrans durum API'si üzerinden yeniden kontrol edilir.
Canlı ortam kimlik bilgileri
Bunları Datatrans canlı Web Admin'den (admin.datatrans.com) kopyalayın.
Production merchant ID: canlı hesabınızın Merchant ID'si.
Production API password: canlı hesabın sunucudan sunucuya API parolası.
Production HMAC sign key: canlı ortam webhook'larının Datatrans-Signature başlığını doğrulamak için kullanılan onaltılık anahtar. Bu anahtar olmadan her webhook, Datatrans durum API'si üzerinden yeniden kontrol edilir.
Kaydedilmiş parolalar ve imza anahtarları bir daha gösterilmez. Alan boş kalır ve Saved — leave empty to keep it. mesajını gösterir. Yalnızca değiştirmek istediğinizde yeni bir değer girin. İmza anahtarı, Datatrans'ın verdiği gibi onaltılık bir dize olmalıdır. Başka bir değer kaydedilmez: sayfa bir hata gösterir ve önceki değeri korur; diğer ayarlar kaydedilir.
Clear saved secrets: bir parolayı veya imza anahtarını işaretleyin ve kaldırmak için Save düğmesine tıklayın. Boş bir alan kayıtlı değeri korur.
Webhook URL'si
Bu bölüm mağazanızın webhook URL'sini gösterir. Dostça URL'ler açıkken şu biçimde olur: https://your-shop/module/wcp_datatrans_gateway/webhook; başına /en/ gibi bir dil kodu da eklenmiş olabilir. Modül bu URL'yi her işlemde Datatrans'a gönderir; bu nedenle onu hiçbir yere girmeniz gerekmez. Datatrans Web Admin'deki webhook ayarlarına da girebilirsiniz; böylece orada yapılan tahsilat ve iptaller hakkında güncellemeler alırsınız. Ayarların gösterdiği biçimde birebir kopyalayın. Datatrans Web Admin'de yapılan iadeler siparişe yansıtılmaz.
Webhook, işlemin durumunu bildirir. Modül bu durumlarda şu işlemleri yapar:
HMAC imza anahtarı varsa her webhook, ödemenin yapıldığı ortamın imza anahtarıyla Datatrans-Signature başlığı üzerinden kontrol edilir. Geçerli imzası olmayan webhook'lar reddedilir. İmza anahtarı yoksa modül webhook içeriğine güvenmez ve her webhook'u Datatrans durum API'si üzerinden kontrol eder. Webhook olmadan sipariş, yalnızca müşteri ödemeden sonra mağazaya döndüğünde oluşturulur.
Ödeme işleme
Auto settle: ödemeleri hemen tahsil eder (settle). Kapalıysa ödemeler yalnızca yetkilendirilir: sipariş Datatrans payment on hold durumuna alınır ve siparişin Datatrans bloğundaki Capture Datatrans payment ile daha sonra tahsil edersiniz veya Cancel Datatrans authorization ile serbest bırakırsınız. Varsayılan: açık.
Order status after payment: ödeme tahsil edildikten sonraki sipariş durumu.
Yalnızca yetkilendirilmiş ödemeler ve tutar veya para birimi uyuşmazlıkları her zaman Datatrans payment on hold durumuna gider.
Gelişmiş
Logging: ödeme olaylarını ve API çağrılarını modül klasöründeki logs/datatrans_p_debug.log.php dosyasına yazar. Dosya web üzerinden açılamaz. Bu anahtar kapalı olsa bile hatalar her zaman kaydedilir. Anahtar, kart verisi veya müşteri verisi yazılmaz. Varsayılan: kapalı.
Log: günlüğün boyutunu ve en son kayıtlarını, ayrıca günlüğü temizlemek için bir düğme gösterir.
Delete data on uninstall: açık olduğunda modül kaldırılırken modül ayarları ve günlük silinir. Siparişlerdeki Datatrans ödeme kayıtları (işlemler, iadeler) ve sipariş durumu her zaman kalır. Varsayılan: kapalı.
Ödeme
Ödeme adımında müşteri ödeme yöntemini seçer (varsayılan olarak Datatrans) ve You will be redirected to the Datatrans payment page to complete the payment securely. notunu görür. Onaylandıktan sonra modül, sepet toplamı için sepet para biriminde bir Datatrans işlemi oluşturur ve müşteriyi Datatrans ödeme sayfasına gönderir. Mağaza dili Almanca, İngilizce, Fransızca veya İtalyanca ise sayfa bu dillerden biriyle açılır. Müşteri orada Datatrans hesabınızda etkin olan herhangi bir yöntemle öder. Bu noktada henüz bir sipariş yoktur.
Ödemeden sonra müşteri mağazanıza döner. Sipariş, yalnızca Datatrans onayladığında ödenmiş olarak işaretlenir: webhook ile veya müşteri geri döndüğünde Datatrans durum API'sine yapılan sunucu tarafı bir istekle. Dönüş adresi sepetin güvenli anahtarını taşır; dönüşün kendisi hiçbir zaman sipariş oluşturmaz. Ardından sipariş oluşturulur ve müşteri Your payment with Datatrans has been received. mesajını içeren standart sipariş onay sayfasını görür. Yalnızca yetkilendirilmiş bir ödemede sayfa Your payment with Datatrans has been authorized. The amount will be charged when your order is processed. mesajını gösterir. Datatrans ödemeyi henüz onaylamadıysa, Payment confirmation sayfası Your payment is being confirmed by Datatrans. You will receive an e-mail as soon as it is confirmed. Please do not pay again. mesajını ve Check again düğmesini gösterir; webhook geldiği anda siparişi oluşturur.
Müşteri Datatrans sayfasında iptal ederse, ödeme adımına The payment was canceled. You can try again or choose another payment method. mesajıyla döner. Ödeme başarısız olduysa mesaj The payment was not completed. Please try again or choose another payment method. olur. Sepet korunur. Yeni bir deneme yeni bir Datatrans işlemi oluşturur; önceki bir denemenin geç gelen ödemesi yine tanınır.
Datatrans ödemeyi başlatamazsa, müşteri The payment could not be started. Please try again or choose another payment method. mesajıyla ödeme adımında kalır. Teknik neden günlüğe yazılır.
Webhook, mağaza bakım modundayken de çalışır ve mağazanızın ülke kısıtlamasıyla engellenmez.
Modül, Datatrans ödeme sayfasında tek seferlik ödemeleri kabul eder. Sitenizde kayıtlı kart veya takma ad, abonelik, Lightbox veya Secure Fields, ayarlarda ödeme yöntemi seçimi ve bir yetkilendirmenin kısmi tahsili desteklenmez.
Siparişler ve iadeler
Sipariş durumları
Henüz sipariş yok: müşteri Datatrans'a yönlendirildi ve ödeme yapmadı, ödeme başarısız oldu veya iptal edildi ya da Datatrans henüz onaylamadı. Yalnızca sepet vardır.
Payment accepted, Delivered veya Datatrans payment on hold: ödeme tahsil edildi. Durum Order status after payment ayarını izler. Ödeme, Datatrans işlem kimliğiyle kaydedilir; bir not tutarı, ödeme yöntemini, ortamı ve onay şeklini (webhook veya dönüş) gösterir.
Yetkilendirmeden sonra Datatrans payment on hold: Auto settle kapalıdır ve ödeme yalnızca yetkilendirilmiştir. Siparişin bloğunda tahsil edin veya iptal edin.
Ödemeden sonra Datatrans payment on hold: Datatrans, sepet toplamından farklı bir tutar veya para birimi bildirdi (örneğin ödeme başladıktan sonra sepet değiştirildi), ya da ödeme, sipariş iptal edildikten sonra geldi. Not bunu açıklar. İşlemi Datatrans Web Admin'de kontrol edin ve siparişi tamamlayın veya ödemeyi iade edin.
Canceled: yetkilendirme, sipariş bloğunda veya Datatrans Web Admin'de serbest bırakıldı.
Refunded: ödeme modül üzerinden tamamen iade edildi.
Zaten ödenmiş veya yetkilendirilmiş bir sepet için ikinci bir ödeme gelirse sipariş değişmez. Bir not, bunu kontrol etmenizi ve mükerrer ödemeyi Datatrans'ta iade etmenizi ister. Başarısız veya iptal edilmiş bir işlem, ödenmiş bir siparişi asla düşürmez.
Datatrans payment bloğu
Sipariş sayfasında işlem kimliği, Datatrans durumu, ödeme yöntemi, tutar, ödenen ve iade edilen tutarlar, sandbox ödemeleri için bir Sandbox rozeti, iade geçmişi ve siparişin Datatrans notes bölümünü içeren bir Datatrans payment bloğu gösterilir. Bloğun eylemleri sipariş düzenleme iznini gerektirir; modül sayfalarına erişim gerekmez.
Tahsil etme ve iptal
Yalnızca yetkilendirilmiş bir ödemede blok Capture Datatrans payment ve Cancel Datatrans authorization seçeneklerini gösterir. Tahsilat, ödemeyi yetkilendirilmiş tutarı aşmayacak şekilde mevcut sipariş toplamı için tahsil eder; ardından sipariş Order status after payment durumuna geçer. İptal yetkilendirmeyi serbest bırakır ve siparişi Canceled durumuna getirir. İkisi de ödemenin ortamına gider. Datatrans reddederse blok hatayı gösterir ve bir not eklenir.
İadeler
Datatrans payment bloğunda tutarı girin (henüz iade edilmemiş tutar otomatik doldurulur), isteğe bağlı olarak bir neden yazın ve Refund via Datatrans düğmesine tıklayın. Refund this amount through Datatrans? This cannot be undone. sorusunu onaylayın. Tam ve kısmi iadeler desteklenir; en fazla Datatrans'ın gerçekten tahsil ettiği tutar eksi önceki iadeler kadar iade yapılabilir. İade, ödemenin ortamına gönderilir; bu nedenle o ortamın Merchant ID'si ve API parolası girilmiş olmalıdır. Yeniden denenen bir iade iki kez alacaklandırılmaz. Datatrans iadeyi kabul etmezse blok hatayı gösterir ve hiçbir iade kaydedilmez. Başarılı bir iade, Datatrans iade işlem kimliğiyle birlikte geçmişe ve notlara eklenir. Tam iade siparişi Refunded durumuna getirir; kısmi iade durumu değiştirmez.
Yalnızca yetkilendirilmiş bir ödemede henüz hiçbir tutar tahsil edilmemiştir: yalnızca tam tutar "iade edilebilir" ve bu işlem yetkilendirmeyi iptal eder. İadeler, Datatrans ödemeyi tahsil ettikten sonra kullanılabilir; tutarı uyuşmayan bir yetkilendirme tahsil edilene kadar iade edilemez.
Modül kredi notası oluşturmaz. Sipariş sayfasındaki PrestaShop'un standart iade düğmeleri Datatrans üzerinden para geri göndermez. Datatrans Web Admin'de yapılan iadeler PrestaShop'ta kaydedilmez.
Lisans anahtarı
Modül, vibefox.net üzerinden alınan bir VibeFox lisans anahtarıyla çalışır. License — VibeFox Datatrans Gateway lisans bloğu, Modules > Module Manager > VibeFox Datatrans Gateway > Configure sayfasında ayarların üstündeki ilk bloktur. Anahtarı License key alanına yapıştırın ve Activate düğmesine tıklayın. Bundan sonra blok, anahtarı maskelenmiş olarak, durumu (örneğin lisansın geçerli olduğu son tarih ve alan adınız) ve şu düğmeleri gösterir: 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. Bunların altında Product: presta-payment-datatrans satırı ile vibefox.net hesabınızı açan Manage licenses and domains in your account bağlantısı bulunur. Anahtarı yalnızca modül için Configure yetkisine sahip çalışanlar değiştirebilir. Bloğun metinleri yönetim 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 bir tarihle birlikte 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 tek 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ızdan serbest bırakın.
Etkin bir anahtar olmadan Datatrans, ödeme adımında müşterilere gösterilmez. Yine de bir ödeme başlatılırsa müşteri This payment method is not available. Please choose another one. ibaresini 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 adımında test edemezsiniz. Modules > Module Manager içinde Alerts sekmesinde bir hatırlatma görünür. Mevcut siparişler etkilenmez: zaten başlatılmış ödemeler yine onaylanır ve iadeler çalışır.
Bir lisans süresi dolduğunda modül çalışmaya devam eder, ancak güncellemeler ve destek için yenileme gerekir. Durum, yönetim panelinde çalışırken otomatik olarak yeniden kontrol edilir: anahtar girildikten sonraki ilk 14 gün boyunca günde bir kez, ardından haftada bir kez. Cron işi gerekmez. Modülü kaldırmak veya sıfırlamak her zaman lisans anahtarını ve lisans durumunu siler.
Sorun giderme
Datatrans does not appear at checkout: lisansın etkin olduğunu, Enable/Disable seçeneğinin açık olduğunu ve geçerli ortamda Merchant ID ile API parolasının bulunduğunu kontrol edin: sandbox modundaysanız sandbox alanları, değilse canlı ortam alanları. Ayarlar sayfası eksik alanları listeler. 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.
The payment went through, but no order was created: Datatrans webhook URL'sine ulaşamadı ve müşteri mağazaya dönmedi. Mağazanın internetten erişilebilir olduğunu ve bir güvenlik duvarının webhook URL'sine yapılan istekleri engellemediğini kontrol edin. Ayarlardaki imza anahtarının ödemenin ortamına ait olduğunu kontrol edin. Modül sayfasındaki Log alanına bakın.
Webhook answers Invalid signature: ayarlardaki HMAC imza anahtarı, Datatrans Web Admin'deki anahtarla eşleşmiyor ya da diğer ortama ait. Anahtarı yeniden kopyalayın.
Webhook answers Not configured or Verification failed: webhook'un Datatrans durum API'si üzerinden kontrol edilmesi gerekiyordu; ancak o ortamın kimlik bilgileri eksik ya da Datatrans yanıt vermedi. Datatrans webhook'u yeniden dener.
Webhook answers Busy, retry: sipariş aynı anda başka bir istek tarafından onaylanıyordu ya da sipariş oluşturulamadı (örneğin modül devre dışı). Datatrans webhook'u yeniden dener. Günlük nedeni gösterir.
The webhook URL shows Method not allowed in the browser: bu normaldir. URL yalnızca Datatrans'tan gelen istekleri kabul eder.
The HMAC sign key is not saved: anahtar onaltılık bir dize olmalıdır. Datatrans Web Admin'den yeniden kopyalayın.
The customer sees Datatrans payments are not configured yet: geçerli ortamın Merchant ID'si veya API parolası eksik.
The customer sees The payment could not be started: Log alanına bakın. Yanlış Merchant ID veya API parolası ya da yanlış ortamın kimlik bilgileri en yaygın nedenlerdir.
Order is Datatrans payment on hold after payment: sipariş bloğundaki Datatrans notes bölümünü okuyun (bkz. Sipariş durumları), ardından siparişi tamamlayın veya ödemeyi iade edin.
Capture is refused: sipariş toplamı yetkilendirilen tutardan yüksek. Datatrans yetkilendirilenden fazlasını tahsil edemez.
Refund or capture fails with a message about missing credentials: ödeme diğer ortamda yapıldı ve o ortamın Merchant ID'si veya API parolası girilmemiş. Bunları girin ve yeniden deneyin.
Kaldırma
Modules > Module Manager bölümüne gidin, VibeFox Datatrans Gateway 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. Delete data on uninstall açıksa modül ayarları ve günlük silinir. Kapalıysa tüm ayarlar sonraki bir yeniden kurulum için saklanır. Datatrans işlemleri ve iadeleri ile Datatrans payment on hold sipariş durumu her zaman korunur; böylece daha önce ödenmiş siparişler yeniden kurulumdan sonra da iade edilebilir veya tahsil edilebilir. Mevcut siparişler ödeme notlarını ve işlem kimliklerini korur.
Datatrans, sahibinin ticari markasıdır. Bu modül Datatrans ile bağlantılı değildir ve Datatrans tarafından onaylanmamıştır.
