0

我正在开发一个基于 JSF 2.0 的 Web 应用程序。该应用程序会自动生成报价以销售服务,因此小计是不可预测的。

我想集成 PayPal Payments,但我需要以动态方式设置小计值。我使用 HTML 按钮的标准集成成功地通过 payPal 沙箱进行了固定金额的支付。我还尝试将小计值添加到包含生成按钮的表单中,但它似乎不起作用。就像是:

<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
    <input type="hidden" name="cmd" value="_s-xclick"></input>
    <input type="hidden" name="hosted_button_id" value="3V8S6DNHUQ58C"></input>
    <input type="hidden" name="subtotal" value="88"> </input>
    <input type="image"
        src="https://www.sandbox.paypal.com/it_IT/IT/i/btn/btn_buynow_LG.gif"
        name="submit"
        alt="PayPal - Il metodo rapido, affidabile e innovativo per pagare e farsi pagare."></input>
    <img alt="" border="0"
        src="https://www.sandbox.paypal.com/it_IT/i/scr/pixel.gif" width="1"
        height="1"></img>
</form>

有没有办法通过 HTML 标准集成从应用程序中设置小计值,优先从 bean 属性中获取值?
我是否必须使用更高级的方式进行集成?谢谢你的帮助,像往常一样.. :)

4

1 回答 1

1

您当前使用的按钮是托管按钮。因此,您无法按照您想要的方式动态调整它。

您必须编辑您的按钮并禁用“保存在 PayPal”选项才能使其成为非托管按钮。这样您就可以直接访问实际的请求参数,并且可以相应地调整它们的值。

也就是说,它不是很安全,因为这样用户可以在使用它进行付款之前看到您的按钮代码、复制它并对其进行调整。

我建议您改用Express Checkout API。这包括SetExpressCheckoutGetExpressCheckoutDetailsDoExpresscheckoutPayment。由于您正在使用 Web 服务,因此这涉及更多一点,但它可以让您根据需要自定义它并且是安全的。

于 2013-02-15T08:23:15.133 回答