2017-09-28 11 views
0

フレンド。 私はPHPサイトにquickpayを統合しようとしています。 私quickpayの支払いフォームPHPサイトでQuickpayを統合する方法

<form method="POST" action="https://payment.quickpay.net"> 
<input type="hidden" name="version" value="v10"> 
<input type="hidden" name="merchant_id" value="43215429"> 
<input type="hidden" name="agreement_id" value="114267437"> 
<input type="hidden" name="order_id" value="0001"> 
<input type="hidden" name="amount" value="100"> 
<input type="hidden" name="currency" value="INR"> 
<input type="hidden" name="continueurl" value="http://shop.domain.tld/continue"> 
<input type="hidden" name="cancelurl" value="http://shop.domain.tld/cancel"> 
<input type="hidden" name="callbackurl" value="http://shop.domain.tld/callback"> 
<input type="hidden" name="checksum" value="ed93f788f699c42aefa8a6713794b4d347ff493ecce1aca660581fb1511a1816"> 
<input type="submit" value="Continue to payment..."> 
</form> 

しかし、私はコードをテストしようとすると、それは

無効なチェックサムのようなエラーが

成功支払い 感謝するために、フォームのチェックサムを生成する方法友達を助けてください示し

答えて

0

QuickPayフォームは、チェックサムメカニズムを使用して、あなたとあなたのシステムを認証し、データが絡まっていないことを保証します。

<?php 
function sign($base, $private_key) { 
    return hash_hmac("sha256", $base, $private_key); 
} 

$request_body = file_get_contents("php://input"); 
$checksum  = sign($request_body, "your_account_private_key"); 

if ($checksum == $_SERVER["HTTP_QUICKPAY_CHECKSUM_SHA256"]) { 
    // Request is authenticated 
} else { 
    // Request is NOT authenticated 
} 
?> 

生のコールバック要求本体全体のチェックサム - SHA256を暗号ハッシュ関数として使用するHMACを使用します。チェックサムは、アカウントの秘密鍵を使用して署名されます。

+0

ありがとうございました@JaydeepSir、もう一度説明してください、どうすればこのコードをどこで使用できますか? –

関連する問題