PayTR Kart Modülü
PayTR kart ödeme formunu WHMCS faturalarıyla birleştirir ve doğrulanmış bildirimleri işler.
Ön koşullar
- WHMCS 8.x/9.x desteklenen sürüm
- PHP 7.4+, cURL, JSON, mbstring ve OpenSSL
- Geçerli HTTPS alan adı
- PayTR Merchant ID
- Merchant Key
- Merchant Salt
- PHP cURL/JSON/mbstring/OpenSSL
- HTTPS
Kurulum adımları
-
1
Yedek ve ön kontrol
WHMCS dosyaları ile veritabanını yedekleyin; işlemi önce staging ortamında uygulayın.
-
2
Dosyaları yükleyin
Paket dizin yapısını bozmadan şu hedeflere yükleyin: modules/gateways/CorePaytr.php, modules/CorePaytr/, modules/gateways/callback/CorePaytr.php
-
3
İzinleri doğrulayın
Klasörleri normalde 750/755, dosyaları 640/644 tutun; web sunucusu sahibini doğru ayarlayın ve 777 kullanmayın.
-
4
Bağımlılıkları kurun
Paket vendor klasörü içermiyorsa, composer.json bulunan modül klasöründe üretim bağımlılıklarını kurun.
Komutcomposer install --no-dev --optimize-autoloader -
5
Modülü etkinleştirin
WHMCS > Sistem Ayarları > Ödeme Yöntemleri bölümünde modülü etkinleştirin; önce sağlayıcının test ortamını seçin.
-
6
İlk yapılandırmayı kaydedin
Aşağıdaki modüle özel alanları doldurun; test tamamlanmadan canlı ortam/kimlik bilgilerine geçmeyin.
Yapılandırma
Banka/sağlayıcı ayarları
Test modu, taksit sınırı, sipariş öneki ve başarılı/başarısız dönüş sayfalarını yapılandırın.
Testler
- PayTR'nin güncel test prosedürüyle başarı ve ret senaryolarını çalıştırın.
- Callback URL'sinin POST isteğine açık, HTTPS ve WAF challenge dışında olduğunu doğrulayın.
- Tek bildirimin tek ödeme kaydı oluşturduğunu kontrol edin.
Güvenlik
- Kart numarası, CVC, banka parolası ve gizli anahtarları WHMCS veya web sunucusu loglarına yazmayın.
- Canlıda yalnız 3D Secure ve bankanızın/onaylı sağlayıcınızın izin verdiği modeli kullanın.
- Sabit test kartı yayımlamayın; sağlayıcının güncel test dokümanını izleyin.
Sorun giderme
Ödeme dönüyor ancak fatura ödenmiyor
Callback URL'sinin HTTPS, POST erişimi, WAF kuralı, imza doğrulaması, tutar ve para birimini kontrol edin.
Mükerrer ödeme
Sağlayıcı işlem kimliği için benzersizlik ve callback idempotency kaydını kontrol edin.