VibeFox Flutterwave for OpenCart — Yardım
Gereksinimler
OpenCart: 3.0.x (3.0.5.0 üzerinde test edildi) veya 4.0.2 ve üzeri (4.1.0.3 üzerinde test edildi).
PHP: 8.0 veya üzeri.
Flutterwave hesabı: Flutterwave panelinde Settings, API keys altında yer alan Flutterwave hesabınızın gizli anahtarlarına ihtiyacınız var: test modu için FLWSECK_TEST-… ve canlı mod için FLWSECK-…. Yalnızca gizli anahtarlar kullanılır. Genel anahtarlar ve şifreleme anahtarları gerekli değildir. Ayrıca seçtiğiniz bir gizli hash ile bir webhook kurarsınız (bkz. Yapılandırma).
Para birimleri: Sipariş her zaman sipariş para biriminde tahsil edilir. Eklenti ülkeleri veya para birimlerini kendi başına sınırlamaz; hesabınız para birimini desteklemiyorsa Flutterwave bir hata gösterir. Flutterwave'in nerede sunulacağını Geo Zone ve Total ile sınırlayabilirsiniz.
VibeFox lisans anahtarı: vibefox.net üzerinden satın alınır. Bir anahtar tek bir alan adında çalışır.
Kurulum
İndirme, her iki OpenCart sürümünün paketlerini içeren tek bir zip dosyasıdır. Bilgisayarınızda arşivden çıkarın. İçinde README.txt, OpenCart 3 paketi wcp_flutterwave_payment-oc3-(version).ocmod.zip ve OpenCart 4 paketi wcp_flutterwave_payment.ocmod.zip bulunur. Yalnızca OpenCart sürümünüze uygun paketi kurun. Lisans anahtarı her iki sürüm için aynıdır.
OpenCart 3
1. Yönetim panelinde Extensions > Installer bölümüne gidin, Upload düğmesine tıklayın ve wcp_flutterwave_payment-oc3-(version).ocmod.zip dosyasını seçin. Eklentide OCMOD değişikliği yoktur, bu nedenle Extensions > Modifications bölümünü yenilemeniz gerekmez. Yükleyici yerine, bu paketteki upload klasörünün içeriğini mağazanızın kök klasörüne de kopyalayabilirsiniz.
2. Extensions > Extensions bölümüne gidin ve türü Payments olarak seçin. VibeFox Flutterwave Payment eklentisini bulun ve Install düğmesine (yeşil + düğmesi) tıklayın. Yönetici kullanıcınızın ödeme eklentileri listesini değiştirme iznine sahip olması gerekir.
3. Ayarlar sayfasını açmak için Edit düğmesine (kalem düğmesi) tıklayın. VibeFox lisans anahtarınızı, sayfanın üst kısmındaki lisans bloğunda bulunan License key alanına yapıştırın ve Activate düğmesine tıklayın (bkz. Lisans anahtarı).
4. Gizli anahtarlarınızı girin, Flutterwave panelinde webhook'u kurun ve eklentide aynı gizli hash'i girin (bkz. Yapılandırma).
5. Enable/Disable seçeneğini açın ve Save düğmesine tıklayın. Test modunda bir ödeme deneyin, ardından Live mode seçeneğini açın.
OpenCart 4
1. Yönetim panelinde Extensions > Installer bölümüne gidin, Upload düğmesine tıklayın ve wcp_flutterwave_payment.ocmod.zip dosyasını seçin. Dosyanın adını değiştirmeyin: OpenCart 4 eklenti kodunu dosya adından alır ve adı değiştirilmiş bir paket çalışmaz.
2. Paket, aynı sayfada kurulu eklentiler listesinde görünür. Yanındaki Install düğmesine (yeşil + düğmesi) tıklayın.
3. Extensions > Extensions bölümüne gidin ve türü Payments olarak seçin. VibeFox Flutterwave Payment eklentisini bulun, Install düğmesine (yeşil + düğmesi) ve ardından Edit düğmesine (kalem düğmesi) tıklayın.
4. Lisans anahtarını, gizli anahtarları ve webhook'u OpenCart 3 için 3 ila 5. adımlarda olduğu gibi girin. Ayarlar sayfası ve alanları her iki sürümde aynıdır. Yalnızca webhook URL'si farklıdır (bkz. Webhook).
Yeni bir kurulum, ödeme yöntemi kapalı ve test modunda olarak başlar.
Yapılandırma
Tüm ayarlar eklenti sayfasındadır: Extensions > Extensions > Payments > VibeFox Flutterwave Payment > Edit. Bölümler solda listelenir; listenin altındaki Save düğmesi tüm sayfayı kaydeder. Ayarların üstünde sayfa Live mode: real payments are accepted. veya Test mode: no real money is charged. gösterir. Mevcut modun gizli anahtarı boşsa, canlı modda canlı anahtar alanında bir test anahtarı (FLWSECK_TEST-…) varsa veya test modunda test anahtarı alanında bir canlı anahtar (FLWSECK-…) varsa uyarır; bu sorun giderilene kadar ödeme yöntemi ödeme sayfasında gizlenir. Ayrıca bir webhook gizli hash'i ayarlanmamışsa da uyarır: bu durumda webhook'lar reddedilir ve ödemeler yalnızca müşteri mağazanıza döndüğünde onaylanır. Eklentiyi değiştirme izniniz yoksa sayfa ayarları gösterir ancak kaydedemez.
Kaydederken Title alanı 1 ila 128 karakter olmalıdır, Sort Order boş veya tam sayı olmalıdır, Total boş veya 0 ya da daha büyük bir sayı olmalıdır ve seçilen coğrafi bölge ile sipariş durumları mevcut olmalıdır. Aksi halde hiçbir şey kaydedilmez ve sayfa neyin düzeltileceğini gösterir. Anahtarlarla ilgili sorunlar kaydetmeyi engellemez.
Flutterwave
Enable/Disable: Enable Flutterwave Payment ödeme yöntemini açar veya kapatır. Varsayılan: kapalı.
Title: müşterilerin ödeme sayfasında gördüğü ödeme yöntemi başlığı. Siparişte kaydedilen ödeme yöntemi adı da budur. Varsayılan: Flutterwave. Zorunlu, 128 karaktere kadar.
Description: onay düğmesinin üstünde, Confirm Order adımında gösterilen ödeme yöntemi açıklaması. Varsayılan: Pay securely via Card, Bank Transfer, USSD, Mobile Money via Flutterwave.
Sort Order: Flutterwave'in ödeme sayfasındaki ödeme yöntemleri arasındaki konumu. Boş bırakın veya bir tam sayı girin.
Geo Zone: Flutterwave'i yalnızca seçilen coğrafi bölgedeki ödeme adresleri için sunun. Varsayılan: All zones. Coğrafi bölgeler System > Localisation > Geo Zones bölümünde ayarlanır.
Total: Flutterwave'in sunulması için bir siparişin ulaşması gereken, mağazanın varsayılan para birimindeki sepet tutarı. Flutterwave'i her tutarda sunmak için boş bırakın.
API anahtarları
Gizli anahtarları Flutterwave panelinde Settings, API keys bölümünden kopyalayın (bu bölümde bir bağlantı bulunur). Test modu ve canlı modun anahtarları farklıdır.
Live mode: gerçek ödemeleri kabul eder. Test modu için kapatın. Test modu test gizli anahtarını kullanır ve gerçek para tahsil edilmez. Canlı mod canlı gizli anahtarı kullanır. Varsayılan: kapalı (test modu). Test modu açık olduğu sürece müşteriler Confirm Order adımında TEST MODE - no real payments will be processed. ifadesini görür.
Test Secret Key: Flutterwave test gizli anahtarınız (FLWSECK_TEST-...).
Live Secret Key: Flutterwave canlı gizli anahtarınız (FLWSECK-...).
Kaydedilmiş anahtarlar ve gizli hash bir daha gösterilmez. Alan boş kalır ve Saved — leave empty to keep it. ifadesini gösterir. Yalnızca değiştirmek istediğinizde yeni bir değer girin. Kayıtlı bir değeri kaldırmak için alanın altındaki Clear the saved value kutusunu işaretleyin ve Save düğmesine tıklayın.
Webhook
Webhook, müşteri mağazanıza dönmese bile ödemeleri onaylar. Flutterwave panelinde Settings, Webhooks bölümüne, bu bölümdeki Webhook URL alanında gösterilen URL'yi ve seçtiğiniz bir gizli hash'i, hem test modunda hem de canlı modda girin. OpenCart 3'te URL şöyledir: https://your-store/index.php?route=extension/payment/wcp_flutterwave_payment/webhook, OpenCart 4'te ise şöyledir: https://your-store/index.php?route=extension/wcp_flutterwave_payment/payment/wcp_flutterwave_payment.webhook. URL, mağazanızın adresinden oluşturulur. İnternet üzerinden HTTPS ile erişilebilir olmalıdır. URL'yi ayarların gösterdiği gibi birebir kopyalayın. Eklenti bu olaya tepki verir:
Diğer olaylar yok sayılır.
Secret Hash: webhook gizli hash'i. Flutterwave panelindeki webhook ayarlarındaki değerle eşleşmelidir. Flutterwave bunu her webhook ile gönderir ve test ile canlı modda aynı değer kullanılır. Geçerli bir gizli hash içermeyen webhook'lar reddedilir. Webhook olmadan bir ödeme yalnızca müşteri mağazanıza döndüğünde onaylanır.
Ödeme
Payment Options: Flutterwave sayfasında gösterilecek virgülle ayrılmış ödeme yöntemleri, örneğin card, banktransfer, ussd, mobilemoney. Hesabınızda etkin olan tüm yöntemleri göstermek için boş bırakın. Liste kaydedilirken temizlenir (küçük harf, yinelenen yok).
Autocomplete Orders: ödenmiş siparişler Paid Order Status yerine Complete Order Status alır. Varsayılan: kapalı.
Siparişler
OpenCart siparişi Confirm Order adımında durumsuz olarak oluşturur (eksik sipariş). Sipariş, Flutterwave ödemeyi API üzerinden onaylayana kadar bir durum almaz. Aşağıdaki her alan, OpenCart sipariş durumlarınızı listeler.
Paid Order Status: onaylanmış bir ödemeden sonraki durum. Varsayılan: İşleniyor.
Complete Order Status: Autocomplete Orders açıkken onaylanmış bir ödemeden sonraki durum. Varsayılan: Tamamlandı.
Awaiting Payment Status: müşteri, ödeme Flutterwave'de hâlâ beklemedeyken geri döndü (banka havalesi, USSD, mobil ödeme). Webhook onaylayana kadar sipariş bu durumu korur. Varsayılan: Beklemede.
On Hold (Review) Status: tutarı veya para birimi siparişle uyuşmayan ya da sipariş iptal edildikten sonra gelen ödemeler bu durumu ve nedenini açıklayan bir not alır. Varsayılan: Beklemede, çünkü OpenCart'ta On hold durumu yoktur. System > Localisation > Order Statuses bölümünde kendi durumunuzu oluşturabilir ve burada seçebilirsiniz.
Failed Status: beklemedeki bir siparişin bekleyen ödemesi Flutterwave'de başarısız oldu. Varsayılan: Başarısız.
Refunded Status: ödeme sipariş sayfasından tamamen iade edildikten sonra ayarlanır. Varsayılan: Geri Ödendi.
Gelişmiş
Debug log: hata ayıklama için Flutterwave API olaylarını OpenCart günlük klasöründeki (storage/logs) flwv_debug.log.php dosyasına kaydeder. Dosya web üzerinden açılamaz; 5 MB'a ulaştığında flwv_debug.old.log.php olarak taşınır. Hatalar ve uyarılar her zaman kaydedilir. Anahtarlar, gizli hash ve müşteri verileri hiçbir zaman günlüğe yazılmaz. Varsayılan: kapalı.
Log: günlüğün boyutunu ve en son kayıtlarını gösterir. Boşaltmak için Clear log düğmesine tıklayın.
Delete data on uninstall: eklenti kaldırıldığında eklentinin ayarlarını ve günlüklerini siler. Siparişlerde kaydedilen ödeme verileri her zaman korunur. Varsayılan: kapalı.
İçe / Dışa Aktarma
Export: Download JSON ayarları bir JSON dosyası olarak kaydeder. Gizli anahtarlar ve gizli hash dışa aktarılmaz.
Import: daha önce dışa aktarılmış JSON'u yapıştırın ve ayarları geri yüklemek için Import düğmesine tıklayın. Kayıtlı anahtarlar ve gizli hash korunur.
Ödeme
Payment Method adımında müşteri ödeme yöntemini seçer (varsayılan olarak Flutterwave). Confirm Order adımında müşteri açıklamanızı ve You will be redirected to the Flutterwave checkout page. notunu görür. OpenCart siparişi bu adımda, hâlâ durumsuz olarak oluşturur. OpenCart 4'te müşteri, ödeme yöntemi bloğundaki Choose düğmesiyle ve Payment method options penceresinde ödeme yöntemini seçer; ödeme sayfasının altındaki Confirm Order düğmesine tıklar. Müşteri Confirm Order düğmesine tıkladığında eklenti, sipariş tutarı için sipariş para biriminde bir Flutterwave ödemesi oluşturur; müşterinin e-posta adresi, ödeme adresindeki telefon ve ad, mağaza adınız ve logonuz ile Payment for order ve sipariş numarası eklenir, ardından müşteriyi Flutterwave ödeme sayfasına yönlendirir. Geçerli bir e-posta adresi gerekir. Orada müşteri, hesabınızda etkin olan yöntemlerden biriyle öder (veya Payment Options bölümünde listelenenlerle).
Ödemeden sonra müşteri mağazanıza geri döner. Sipariş yalnızca Flutterwave onayladığında ödenmiş olarak işaretlenir: webhook ile veya müşteri döndüğünde sunucu tarafı bir kontrol ile. Ardından sipariş, OpenCart'ın standart yöntemiyle, olağan sipariş e-postaları ve stok güncellemesiyle durum alır ve müşteri OpenCart sipariş başarı sayfasını görür. Ödeme hâlâ beklemedeyse, örneğin banka havalesi, USSD veya mobil ödeme ise, sipariş Awaiting Payment Status durumunu alır ve sayfa ayrıca Your payment is being confirmed by Flutterwave. You will receive an e-mail as soon as it is confirmed. mesajını gösterir. Flutterwave ödemeyi onayladığında sipariş ödenmiş duruma geçer ve müşteriye e-posta ile bildirilir. Sipariş, örneğin ödenen tutar siparişle uyuşmadığı için incelemeye alındıysa sayfa Your payment was received and your order is being reviewed. We will contact you if anything is needed. mesajını gösterir. Bekleyen bir ödeme daha sonra başarısız olur ve müşteri siparişe geri dönerse sayfa Your Flutterwave payment was not completed. Please contact us about this order. mesajını gösterir.
Müşteri döndüğünde Flutterwave'e ulaşılamazsa, bir Payment confirmation sayfası Your payment is being confirmed by Flutterwave. Your order will be confirmed as soon as Flutterwave confirms it — please do not pay again. mesajını ve Check again ile Back to checkout düğmelerini gösterir. Webhook, ulaştığı anda sipariş durumunu ayarlar.
Ödeme reddedilirse müşteri Your payment was declined. You can try again or choose another payment method. mesajıyla ödeme sayfasına döner. Müşteri Flutterwave sayfasında iptal ederse mesaj Payment was cancelled. You can try again or choose another payment method. olur. Ödeme tamamlanmadıysa mesaj The payment was not completed. You can try again or choose another payment method. olur. Ödeme doğrulanamadıysa mesaj Payment verification failed. Please contact support. olur. Sipariş durumsuz kalır ve sepet korunur, böylece müşteri yeniden ödeme yapabilir. OpenCart 4'te bu mesajlar ödeme sayfasının üstünde gösterilir.
OpenCart 3, Confirm Order adımı her gösterildiğinde yeni bir sipariş oluşturur; OpenCart 4 ise ödemedeki siparişi günceller, bu nedenle yeni bir deneme aynı siparişi öder. Her deneme kendi referansını alır. Yeni bir ödemeden önce, bu siparişin ve aynı sepetteki diğer siparişlerin son 24 saatteki açık ve bekleyen ödemeleri Flutterwave ile kontrol edilir. Bunlardan biri ödenmişse siparişini onaylar ve müşteri yeniden ödeme yapmak yerine başarı sayfasına gider. Aynı sepetteki başka bir sipariş zaten Flutterwave ile ödenmişse yeni bir ödeme de başlatılmaz. Daha sonra ödenen eski bir ödeme bağlantısı yine de kabul edilir. Aynı sepet, örneğin iki tarayıcı sekmesinde, iki kez ödenirse yalnızca ilk ödeme siparişine durum verir: diğer sipariş durumsuz kalır ve ödenmiş sipariş, ikinci ödemeyi Flutterwave panelinden iade etmeniz için bir not alır.
OpenCart 4, başarı sayfası gösterilene kadar siparişi ödeme sürecinde tutar. Bu sipariş bu arada ödeme yapılmadan kapatılmışsa (örneğin bekleyen ödemesi başarısız olduysa veya siz iptal ettiyseniz), müşteri reddedilen ödemeyle ilgili mesajla birlikte ödeme sayfasına geri gönderilir ve bir sonraki Confirm Order tıklamasında sepetin yeni bir siparişi ödenir. Siparişi ödendikten sonra kapattıysanız mesaj This order can no longer be paid (it was closed by the store). Please confirm your order again. olur. Sipariş zaten ödenmişse ama o zamandan beri sepet değiştiyse (yeni bir adet dahil), mesaj Your previous order is already paid. Please confirm the order again: the cart will be paid with a new order. olur. Ödenmiş bir sipariş, başka bir sepet için asla ödenmiş olarak gösterilmez.
Flutterwave ödemeyi başlatamazsa müşteri Confirm Order adımında kalır ve kısa bir mesaj görür, örneğin Flutterwave is temporarily unavailable. Please try again in a moment or choose another payment method. Teknik neden günlüğe yazılır.
Mağaza bakım modundayken de webhook ve dönüş URL'si çalışır, çünkü OpenCart 3 ödeme eklentilerinin isteklerini geçirir ve eklenti OpenCart 4'te bunlar için bir başlangıç eylemi ekler.
Eklenti yalnızca tek seferlik ödemeleri destekler. Sitenizde satır içi veya modal bir ödeme sayfası, kayıtlı kart, abonelik, bölünmüş ödeme veya ödeme planı yoktur. Barındırılan ödeme bağlantıları Flutterwave API üzerinden iptal edilemez; bu nedenle eski bir bağlantı hâlâ ödenebilir.
Siparişler ve iadeler
Sipariş durumları
Durumsuz (missing order): müşteri Flutterwave'e yönlendirildi ve ödeme yapmadı, ödeme reddedildi veya iptal edildi ya da Flutterwave henüz ödemeyi onaylamadı. Sales > Orders bölümünde bu siparişler yalnızca Order Status filtresi Missing Orders olarak ayarlandığında gösterilir.
Paid Order Status (varsayılan İşleniyor) veya Complete Order Status (varsayılan Tamamlandı): ödeme onaylandı. Complete Order Status, Autocomplete Orders açıkken kullanılır. Bir not tutarı, ödeme yöntemini, Flutterwave referansını, işlemi ve modu gösterir.
Awaiting Payment Status (varsayılan Beklemede): müşteri, ödeme Flutterwave'de hâlâ beklemedeyken geri döndü. Flutterwave ödemeyi onayladığında sipariş ödenmiş duruma geçer.
On Hold (Review) Status (varsayılan Beklemede): doğrulanan tutar veya para birimi siparişle uyuşmadı ya da ödeme, siparişe ödeme olmadan bir durum verildikten sonra geldi, örneğin İptal Edildi. Gerçekten ödenen tutar ve para birimi kaydedilir ve not bunu açıklar. Siparişi tamamlayın veya ödemeyi iade edin. Sipariş zaten başka bir işleme durumundaysa yalnızca bir not eklenir.
Failed Status (varsayılan Başarısız): Flutterwave, beklemedeki bir siparişin son ödeme denemesinin başarısız olduğunu veya iptal edildiğini bildirdi. Not nedeni gösterir. Önceki denemeler ve ödenmiş siparişler değiştirilmez.
Refunded Status (varsayılan Geri Ödendi): ödeme eklenti üzerinden tamamen iade edildi.
Zaten ödenmiş bir sipariş için ikinci bir ödeme alınırsa sipariş değişmez. Bir not, kopyayı Flutterwave panelinden iade etmenizi ister.
Notlar, müşterinin görmediği siparişin History kısmındaki kayıtlardır.
VibeFox Flutterwave Payment sekmesi
Sales > Orders bölümünde Flutterwave ile ödenmiş bir siparişi açın. Sipariş sayfasının altında, History ve Additional yanındaki VibeFox Flutterwave Payment sekmesi; Transaction reference, Mode (Test veya Live), ödemenin Status bilgisi, Transaction ID, Flutterwave reference, Payment type, Paid / refunded tutarları, iade formu, iade geçmişi ve siparişin Flutterwave notes bölümünü gösterir. Sekme, eklentiye erişimi olan kullanıcılara gösterilir.
İadeler
Sekmede Amount alanına tutarı girin (henüz iade edilmemiş tutar otomatik doldurulur), isterseniz bir Reason (optional) girin ve Refund via Flutterwave düğmesine tıklayın. Refund this amount through Flutterwave? This cannot be undone. sorusunu onaylayın. Tam ve kısmi iadeler desteklenir. Eklentiyi değiştirme izniniz olması gerekir (System > Users > User Groups bölümünde ayarlanır). İadeler, Flutterwave'in tahsil ettiği tutar ve para biriminde yapılır; dolayısıyla tutar veya para birimi uyuşmazlığından sonra sipariş toplamını değil, müşterinin gerçekten ödediği tutara kadar iade yapabilirsiniz. İade, ödemenin yapıldığı modun (test veya canlı) gizli anahtarıyla gönderilir, bu nedenle bu anahtar ayarlanmış olmalıdır. Flutterwave iadeyi reddederse sekme hatayı gösterir ve hiçbir iade kaydedilmez. Başarılı bir iade, iade kimliği ve durumuyla (tamamlandı ya da Flutterwave'in bildirdiği durumla başlatıldı) iade geçmişine ve notlara eklenir. Tam iade, müşteriye bildirim göndermeden ve ürünleri stoğa geri eklemeden siparişi Refunded Status durumuna alır; tıpkı elle yapılan bir durum değişikliği gibi. Kısmi iade durumu değiştirmez. İadeler, Flutterwave ödemeyi onayladıktan sonra kullanılabilir.
Sales > Returns bölümündeki ürün iadeleri Flutterwave üzerinden para geri göndermez. Flutterwave panelinde yapılan iadeler OpenCart'a geri senkronize edilmez. Gerekirse sipariş durumunu elle güncelleyin.
Lisans anahtarı
Eklenti, vibefox.net üzerinden alınan bir VibeFox lisans anahtarıyla çalışır. License — VibeFox Flutterwave Payment lisans bloğu, Extensions > Extensions > Payments > VibeFox Flutterwave Payment > Edit 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ı maskeli olarak, durumu (örneğin lisansın geçerli olduğu tarih ve alan adınız) ve 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üğmelerini gösterir. Bunların altında Product: opencart-payment-flutterwave satırı ve vibefox.net hesabınızı açan Manage licenses and domains in your account bağlantısı bulunur. Anahtarı yalnızca eklenti için Modify izni olan yönetici kullanıcılar değiştirebilir. Bloğun metinleri yönetim paneli dilini izler (İngilizce ve Rusça dahildir).
Anahtar kabul edilmezse blok nedenini belirtir, örneğin Key not found, This key belongs to another product, Domain limit reached veya tarihiyle birlikte License expired on. Mağaza adresini değiştirdikten 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şılamıyorsa eklenti, bilinen son durumla çalışmaya devam eder.
Bir anahtar tek bir alan adında çalışır: OpenCart yapılandırmasındaki mağaza adresinde. 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 Flutterwave, ödeme sayfası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. mesajını görür. Aynı tarayıcıda yönetim paneline giriş yapmış bir yönetici kullanıcı, ödeme yöntemini mağazada (unlicensed — visible to admins only) işaretiyle görmeye devam eder; böylece anahtarı satın almadan önce eklentiyi kurup test edebilirsiniz. OpenCart 4'te bu önizleme yoktur: mağaza yönetici girişini görmez, bu nedenle etkin bir anahtar olmadan ödeme yöntemi herkes için gizlenir. Edit sayfasını bir kez açtıktan sonra yönetim paneli Dashboard ekranında bir hatırlatma belirir. Bunu × ile kapatırsanız 7 gün gizlenir. Mevcut siparişler etkilenmez: zaten başlatılmış ödemeler onaylanmaya devam eder ve iadeler çalışır.
Bir lisansın süresi dolduğunda eklenti çalışmaya devam eder, ancak güncellemeler ve destek için yenileme gerekir. Yönetim paneli Dashboard veya Edit sayfası açıldığında durum otomatik olarak yeniden kontrol edilir: anahtar girildikten sonraki ilk 14 gün boyunca günde bir kez, sonrasında haftada bir kez. Cron işi gerekmez. Eklentiyi kaldırmak her zaman lisans anahtarını ve lisans durumunu siler.
Sorun giderme
Flutterwave ödeme sayfasında görünmüyor: lisansın etkin olduğunu, Enable/Disable seçeneğinin açık olduğunu ve mevcut modun gizli anahtarının dolu olup moda uyduğunu kontrol edin: test modunda test anahtarı (FLWSECK_TEST-…), canlı modda canlı anahtar (FLWSECK-…). Aksi halde ayarlar sayfası bir uyarı gösterir. Ayrıca ödeme adresinin seçilen Geo Zone içinde olduğunu ve siparişin ayarlarda belirlenen Total tutarına ulaştığını kontrol edin.
Ödeme gerçekleşti, ancak sipariş durumsuz kaldı: webhook çalışmıyor. Flutterwave panelinde webhook URL'sinin Webhook URL alanında gösterilenle birebir aynı olduğunu, kullandığınız modda (test veya canlı) ve gizli hash'inin eklentideki Secret Hash ile aynı olduğunu kontrol edin. Bekleyen banka havaleleri, USSD ve mobil ödemeler, Flutterwave onaylayana kadar beklemede kalır. Sipariş, müşteri ödemeden sonra mağazaya döndüğünde de durum alır. Debug log seçeneğini açın ve eklenti sayfasındaki Log alanına bakın.
Webhook şu yanıtı veriyor: Invalid hash veya Secret hash not configured: Flutterwave panelindeki gizli hash, eklentidekinden farklı veya eklentide hiç hash yok. Her iki yere de aynı değeri girin.
Webhook şu yanıtı veriyor: Verification failed, Busy, retry later veya Order could not be updated, retry later: ödemeyi doğrulamak için Flutterwave'e ulaşılamadı, işlem henüz görünmüyor, sipariş başka bir istek tarafından işleniyordu veya durumu ayarlanamadı. Flutterwave webhook'u yeniden dener. Günlük nedeni gösterir.
Webhook URL'si tarayıcıda Empty body gösteriyor: bu normaldir. URL yalnızca Flutterwave'den gelen webhook'ları kabul eder.
Müşteri şunu görüyor: Payment gateway is not properly configured: mevcut modun gizli anahtarı eksik veya diğer moda ait.
Müşteri şunu görüyor: This payment method is not available: ödeme oturumu artık siparişle eşleşmiyor veya ödeme yöntemi bu arada kapatıldı. Müşteri ödeme sayfasını yeniden yükler.
Müşteri şunu görüyor: We could not match this payment to an order: dönüş bağlantısı bu siparişe ait bir ödemeye ait değil. Müşteriden tahsilat yapıldıysa ödemeyi Flutterwave panelinde bulun.
Flutterwave kendi sayfasında hata gösteriyor veya müşteri şunu görüyor: Flutterwave could not start the payment: Flutterwave hesabınız sipariş para birimini veya seçilen ödeme seçeneklerini desteklemiyor olabilir.
Sipariş ödemeden sonra beklemede durumunda: VibeFox Flutterwave Payment sekmesindeki notları okuyun (bkz. Sipariş durumları), ardından siparişi tamamlayın veya ödemeyi iade edin.
Sekmede iade formu yok: sekme nedenini belirtir: ödeme henüz onaylanmadı, tamamen iade edildi, kullanıcı grubunuzun eklentiyi değiştirme izni yok veya ödemenin modunun gizli anahtarı yapılandırılmamış.
İade, modla ilgili bir mesajla başarısız oluyor: ödeme test veya canlı modda yapıldı ve o modun gizli anahtarı yapılandırılmamış. Anahtarı girin ve yeniden deneyin.
İade şu yanıtı veriyor: Another operation on this payment is running: aynı siparişin başka bir iadesi o anda gönderiliyordu. Bir süre bekleyin, iade geçmişini kontrol edin ve gerekirse yeniden deneyin.
Geliştiriciler için: eklenti, OpenCart olaylarını tetikler: flwv_payment_request (Flutterwave'e gönderilen veriler) ve flwv_currency_decimals (para birimi hassasiyeti).
Kaldırma
Extensions > Extensions bölümüne gidin, türü Payments olarak seçin ve VibeFox Flutterwave Payment yanındaki Uninstall düğmesine (kırmızı − düğmesi) tıklayın. Bu eklentinin lisans anahtarı ve lisans durumu her zaman kaldırılır. OpenCart, eklentinin kendi ayarlarını her zaman kaldırır: Enable/Disable, Sort Order, Geo Zone, Total ve Orders bölümündeki sipariş durumları; bunlar yeniden kurulumda varsayılan değerlerine döner. Eklentinin OpenCart olayı da kaldırılır (OpenCart 4'te olayları ve webhook ile dönüş URL'sini bakım modunda geçiren başlangıç eylemi de kaldırılır). Delete data on uninstall açıksa diğer ayarlar (başlık, açıklama, mod, anahtarlar, gizli hash, ödeme seçenekleri, otomatik tamamlama, hata ayıklama günlüğü anahtarı) ve günlük silinir. Kapalıysa, daha sonraki bir yeniden kurulum için saklanırlar. Flutterwave ödeme ve iade kayıtları her zaman korunur; bu nedenle daha önce ödenmiş siparişler yeniden kurulumdan sonra da iade edilebilir. Mevcut siparişler ödeme notlarını korur.
OpenCart 4'te eklentinin dosyalarını da kaldırmak için kaldırdıktan sonra Extensions > Installer bölümüne gidin, kurulu eklentiler listesinde VibeFox Flutterwave Payment yanındaki Uninstall düğmesine (turuncu − düğmesi) tıklayın, ardından yüklenen paketi silmek için Delete düğmesine (kırmızı çöp kutusu düğmesi) tıklayın.
Flutterwave, ilgili sahibinin ticari markasıdır. Bu eklenti Flutterwave ile bağlantılı değildir ve Flutterwave tarafından onaylanmamıştır.
