Sayfa Reklamı

Browsing Tag

ücretsiz whmcs modül

PHP

Payu WHMCS Entegrasyonu / Modülü

Alternatif SanalPOS hizmeti veren PayU sitesinin verdiği hizmete ait WHMCS Entegrasyonu aşağıdaki gibidir. Bu entegrasyonda ödeme otomatik olarak onaylanamamaktadır. Çünkü PayU kullandığı sistemde backPost/refferer bilgisi göndermemekte ve kullanmamaktadır. Bu nedenle ödeme güvenli bir şekilde onaylanamamaktadır. PayU ile görüşmelerim neticesinde kısa bir süre sonra bu problemi halledeceklerini ilettiler. Bu problem giderilene kadar kullanacağınız alternatif entegrasyonda müşteriler ödemeden sonra ödeme bildirim formu doldurmaları gerekmektedir. Zaten aşağıda vermiş olduğum entegrasyon kodlarında müşteriler ödemelerini yaptıktan sonra otomatik olarak ödeme bildirim formuna yönlenmektedir.

GATEWAY
[php]<?php
require_once ‘callback/payu_class.php’;
function payu_config() {
$configarray = array(
"FriendlyName" => array(
"Type" => "System",
"Value" => "PayU"
),
"kodlama_anahtari" => array("FriendlyName" => "Payu Kodlama Anahtarı", "Type" => "text", "Size" => "40", ),
"entegrasyon_ismi" => array("FriendlyName" => "İşyeri Entegrasyon İsmi", "Type" => "text", "Size" => "40", ),
"muhasebe_maili" => array("FriendlyName" => "Raporların Gönderileceği Mail", "Type" => "text", "Size" => "80", ),
);
return $configarray;
}
[/php]

[php]
function payu_link($params) {
$_SESSION[‘payu’][‘guvenlik’] =strtoupper(substr(md5(uniqid(rand())),0,18));
$_SESSION[‘payu’][‘faturaid’] = $params[‘invoiceid’];
$_SESSION[‘payu’][‘guvenlik2’] = substr($_SESSION[‘payu’][‘guvenlik’],4,-4);
$_SESSION[‘payu’][‘amount’] = $params[‘amount’];
$_SESSION[‘payu’][‘siparis’] = $params[‘description’];
$liveUpdate = new PayuLu($params[‘entegrasyon_ismi’], $params[‘kodlama_anahtari’]);
$liveUpdate->setDebug(PayuLu::DEBUG_ALL);
$urun = new PayuProduct($params[‘description’], ‘SNC’, ‘SNC’, $params[‘amount’], PayuProduct::PRICE_TYPE_GROSS, ‘1’,’18’);
// $urun = new PayuProduct($params[‘description’], ‘SNC’, ‘SNC’, ‘1’, PayuProduct::PRICE_TYPE_GROSS, ‘1’,’18’);
$liveUpdate->addProduct($urun);
$billing = new PayuAddress();
$billing->setFirstName($params[‘clientdetails’][‘firstname’]); //mandatory
$billing->setLastName($params[‘clientdetails’][‘lastname’]); //mandatory
$billing->setEmail($params[‘muhasebe_maili’]); //mandatory
$billing->setPhone($params[‘clientdetails’][‘phonenumber’]);
$billing->setAddress($params[‘clientdetails’][‘address1’]);
$billing->setAddress2($params[‘clientdetails’][‘address1’]);
$billing->setZipCode($params[‘clientdetails’][‘postcode’]);
$billing->setCity($params[‘clientdetails’][‘city’]);
$billing->setState($params[‘clientdetails’][‘state’]);
$liveUpdate->setBillingAddress($billing); //mandatory
$delivery = new PayuAddress();
$delivery->setFirstName($params[‘clientdetails’][‘firstname’]);
$delivery->setLastName($params[‘clientdetails’][‘lastname’]);
$delivery->setEmail($params[‘muhasebe_maili’]);
$delivery->setPhone($params[‘clientdetails’][‘phonenumber’]);
$delivery->setAddress($params[‘clientdetails’][‘address1’]);
$delivery->setAddress2($params[‘clientdetails’][‘address2’]);
$delivery->setZipCode($params[‘clientdetails’][‘postcode’]);
$delivery->setCity($params[‘clientdetails’][‘city’]);
$delivery->setState($params[‘clientdetails’][‘state’]);
$liveUpdate->setDeliveryAddress($delivery);
$liveUpdate->setLanguage(‘TR’);
$liveUpdate->setInstalments("2,3,4,5,6,7,8,9,10,11,12");
$liveUpdate->setOrderShipping("");
$liveUpdate->setBackRef(‘http://siteniz.com/odemebildirimformu.php”);
$liveUpdate->setButtonName(‘Kredi Kartı ile Ödeme Yapmak İçin Tıklayın’);
$t = $liveUpdate->renderPaymentForm();
}
?>[/php]