4

我正在尝试集成 payu 支付网关,并且我已经包含了所有必填字段,但是在重定向到 payu 的官方网站后它向我显示了一个错误。

Error. We are sorry we are unable to process your payment.
Checksum Failed. Please contact your merchant.

我包括以下字段:

<input type="hidden" name="key" value="key here" />
<input type="hidden" name="txnid" value="67c778f0eed" />
<input type="hidden" name="hash" value="sdfdsfsdfsdfgsdrgsdf"/>
<input type="hidden" class="user2" name="firstname" value="sunil">
<input type="hidden" name="surl" value="abc.com" size="64" />
<input type="hidden" name="furl" value="abc.com" size="64" /></td>
<input type="hidden" name="service_provider" value="payu_paisa" size="64" /> 
<input id="pay_amoumt" type="hidden" name="amount" value="10">
<input id="pay_amoumt" type="hidden" name="productinfo" value="general">

我已经为哈希键分配了一个静态字符串。这是一个问题吗?或者我还有什么需要做的吗?

4

4 回答 4

6

您的校验和不是所有强制性的精确检查变量。交易前校验和公式:

sha512 (key|txnid|amount|productinfo|firstname|email|udf1|udf2|udf3|udf4|udf5||||||<SALT>)

SALT 将由 PayUMoney 提供。使用的算法是 SHA2,它是全球知名的算法。使用 Google 为您的实现找到所需的函数库。下面还提到了一些示例代码:

PHP 的示例代码:

$output = hash("sha512", $text);

http://softbuiltsolutions.com/uploads/readme/sZuRrXnkRVQXqv47f3hgy4LCmekcry-1443511890.pdf

于 2016-09-02T11:58:27.183 回答
3

不确定这是否已解决,但在任何地方都找不到答案,所以想分享对我有用的方法。请确保金额是像 10.00 这样的浮点数。这对我有用。谢谢

于 2016-03-23T03:16:44.197 回答
1

POST 必须强制包含以下键

“key” “txnid” “amount” “productinfo” “firstname” “email” “phone” “surl” “furl” “hash” “service_provider”

此信息在文档中。

于 2015-12-03T15:15:12.463 回答
0

检查对象的前端和后端字段名称是否相互匹配。如果不匹配,则会在生成哈希码时出错。

于 2020-01-22T05:55:06.507 回答