Herkese merhaba,
Yeni çıkaracağım webscripte Paytr ve shopier entegresi yaptım, paytr düzgün çalışıyor fakat shopierin callbackinde sorun yaşıyorum
CodeIgniter3 frameworkünü kullanıyorum.
Size callback için tuttuğum kodu atıyorum.
public function shopierCallback()
{
if($_POST){
$this->load->model('PaymentM');
$gateway = $this->db->query("SELECT paymentGateway, debugMode FROM Settings")->row_array();
$payment = $this->db->query("SELECT PS.*, S.paymentGateway FROM PaymentSettings PS INNER JOIN Settings S ON S.paymentGateway = PS.id WHERE PS.id = " . $gateway['paymentGateway'])->row_array();
$variables = json_decode($payment['variables'], true);
$shopier = new Shopier($variables['shopierAPIKey'], $variables['shopierAPISecretKey']);
if($shopier->verifyShopierSignature($_POST)){
$paymentHistory = $this->db->where("paymentID", $_POST['platform_order_id'])->get("PaymentHistory")->row_array() or $paymentHistory = false;
if($paymentHistory && $paymentHistory['status'] == 0) {
$data = explode('_', $_POST['platform_order_id']);
$accountID = (int) $data[0];
$amount = (int) $data[1];
completePayment($accountID, $amount, $_POST['platform_order_id']);
$this->PaymentM->addBalance($accountID, $amount);
$this->PaymentM->statusUpdate($_POST['platform_order_id'], '1');
}
}else {
die('Shopier notification failed: bad hash');
}
}
}
kod böyle.
completePayment fonksiyonu:
function completePayment($accountID, $amount, $paymentID)
{
    $a = get_instance();
    $query = $a->db->where("paymentID", $paymentID)->get("PaymentHistory");
    $exist = $query->num_rows();
    if($exist > 0){
        $a->db->where('id', $accountID)->update('Accounts', array('balance' => 'balance+'.$amount));
        $a->db->where('paymentID', $paymentID)->update('PaymentHistory', array('status' => '1'));
        if($a->db->affected_rows() > 0) {
            redirect(base_url('/bakiye/basarili'));
        }else {
            redirect(base_url('/bakiye/basarisiz'));
        }
    }
}
birisi ödeme yaptığında veritabanından ne status'u 1 yapıyor ne de kullanıcıya kredisi ekleniyor.
Duyduğuma göre shopierin callback'i farklıymış fakat bu konuda tecrübesi olan veya bilgisi olan varsa lütfen yardımcı olabilir mi? teşekkür ederim.