• 14-03-2022, 23:10:08
    #1
    Merhaba php ile bir paytr sistemi yaptım fakat bildirim ekranında "PAYTR notification failed: bad hash" ifadesi yazıyor sorunu şu paytrden post verisi gelmiyor, print_r($_POST); yapıyorum hiç bir post gelmiyor
  • 14-03-2022, 23:11:57
    #2
    bildirim sayfasına keyleri manuel olarak girip sonucu atarmısınız?
  • 14-03-2022, 23:12:26
    #3
    Gold üye
    Post gelir ama ekrana yansımaz, sqle json olarak kayıt edebilirsin
  • 14-03-2022, 23:16:48
    #4
    wisex adlı üyeden alıntı: mesajı görüntüle
    bildirim sayfasına keyleri manuel olarak girip sonucu atarmısınız?
    hocam keyleri manuel girdim , ödeme yap dedim başarılı urlsine yönlendirdi belirlediğim ama paytr panelinde başarısız diyor
  • 14-03-2022, 23:21:01
    #5
    tasarimbey adlı üyeden alıntı: mesajı görüntüle
    hocam keyleri manuel girdim , ödeme yap dedim başarılı urlsine yönlendirdi belirlediğim ama paytr panelinde başarısız diyor
    Hem PayTR mağazanızı hem de iframe.php yi test moduna alıp deneyin hocam.
  • 14-03-2022, 23:25:59
    #6
    wisex adlı üyeden alıntı: mesajı görüntüle
    Hem PayTR mağazanızı hem de iframe.php yi test moduna alıp deneyin hocam.
    evet test modunda hocam zaten
  • 14-03-2022, 23:27:58
    #7
    tasarimbey adlı üyeden alıntı: mesajı görüntüle
    evet test modunda hocam zaten
    iframe kodlarınızı paylaşırmısınız
  • 14-03-2022, 23:33:04
    #8
    wisex adlı üyeden alıntı: mesajı görüntüle
    iframe kodlarınızı paylaşırmısınız
            $config = $this->default_model->get('config',['config_id'=>1]);
            $payment = json_decode($config->config_payment);
    
            $post = $_POST;
            $merchant_key     = $payment->key;
            $merchant_salt    = $payment->salt;
            $hash = base64_encode( hash_hmac('sha256', $post['merchant_oid'].$merchant_salt.$post['status'].$post['total_amount'], $merchant_key, true) );
            #
            ## Oluşturulan hash'i, paytr'dan gelen post içindeki hash ile karşılaştır (isteğin paytr'dan geldiğine ve değişmediğine emin olmak için)
            ## Bu işlemi yapmazsanız maddi zarara uğramanız olasıdır.
            if( $hash != $post['hash'] )
                die('PAYTR notification failed: bad hash');
            ###########################################################################
    
    
            if( $post['status'] == 'success' ) { ## Ödeme Onaylandı
     
    
            } else { 
     
            }
    
            echo "OK";
            exit;
  • 14-03-2022, 23:34:54
    #9
    tasarimbey adlı üyeden alıntı: mesajı görüntüle
            $config = $this->default_model->get('config',['config_id'=>1]);
        ....
    Bu bildirim hocam iframe.php yi paylaşırmısınız belki orda hata vardır