【问题标题】:Paypal amount_x / amount precision issuePaypal amount_x / 金额精度问题
【发布时间】:2013-09-28 12:23:56
【问题描述】:

我遇到了与 Paypal 标准集成的问题,我真的不知道如何解决。假设我有一个价格为 0.019 的产品,我要购买 100 个。对于这种情况,表单应该如下所示:

<input type="hidden" name="amount" value="1.9">
<input type="hidden" name="amount_1" value="0.019">
<input type="hidden" name="quantity_1" value="100">

但是,由于 Paypal 双精度,amount_1 字段不正确。 我可以做四舍五入,这会给我这个:

<input type="hidden" name="amount" value="1.9">
<input type="hidden" name="amount_1" value="0.02">
<input type="hidden" name="quantity_1" value="100">

但另一方面,这会给我提供错误的总数,为 2(因为金额字段将被忽略)。

是否有任何明智的方式来处理这个问题(除了对我出售的物品进行分组)?我认为我没有看到任何与 Paypal 精度相关的问题:/


编辑:我可以(并且我)对订单总额的金额值进行四舍五入。但是,我需要显示用户购买了多少商品。

【问题讨论】:

    标签: paypal


    【解决方案1】:

    您的问题是您处理的不是标准金额。我不相信我见过有人给你在这里展示的东西定价。您真的有 0.019 美元的商品标价吗?我认为这会让买家非常困惑。您可以简单地考虑调整价格,使其符合标准。

    或者,您也可以像您说的那样继续前进,这样您总共可以获得 2.00 美元,但您可以添加 10 美分的折扣以恢复到 1.90 美元。

    【讨论】:

    • 同意 - 问题在于处理大量的非标准定价:虽然管理员指定单个项目的定价,但用户最终可以批量购买。我可以在amount 字段中安全地将四舍五入的价格显示到小数点后两位(我用来在网站上显示,就像你说的不要混淆最终用户),但是我不能向用户收费由于 Paypal 表单属性而导致的数量/金额,因为 amount_1 * quantity_1 优先于 amount
    【解决方案2】:

    当我为大批量商品(电阻器、LED、二极管等)的定价编写一个小数点后 3 位的商店时,我们不得不使用总行数(和四舍五入)来处理 PayPal。

    因此,我们自己的内部系统负责处理数量(这对于订单跟踪、发票、包装、库存控制等很有意义),而 PayPal 只收取现金,而我们仍然可以跟踪 什么如果我们也有通过 PayPal 出售(已付款但内部出错)。

    PayPal 示例发票:

    | Qty | Desc                          |  Price  | Line Total |
    |  1  | Green LED 100 Units at $0.019 |  $1.90  |   $1.90    |
    

    大型电子产品经销商 digikey.com 使用此方法。

    【讨论】:

    • 最后我决定使用这种方法,但是,正如我在问题中所写的那样,我希望有一些方法不需要对对象进行分组(因为 - 使amount 更重要)。我想如果它是 1 x“100 件”或 100 x“1 件”对最终用户没有任何影响,但对我来说,5 美元(例如)做 1 件“3 个二极管”很漂亮诡异的。显然,该解决方案需要为多于 2 位小数位的值创建输入字段。
    猜你喜欢
    • 2014-01-14
    • 2019-04-23
    • 2013-11-12
    • 2021-11-22
    • 2018-10-31
    • 1970-01-01
    • 2012-06-02
    • 2018-04-21
    • 2011-11-03
    相关资源
    最近更新 更多