我正在构建一个软件交付平台。我有一个用 PayPal 编写的完全可用的自定义 IPN 脚本,用 PHP 编写,但我遇到的问题是确认价格。
简而言之,将实际产品价格与来自 PayPal IPN 的字段进行比较的算法是什么?
我将产品价格标记为 1.00 美元,但来自英国的 IPN(使用美元货币)显示 mc_gross 为 1.20 美元,mc_fee 显示为 0.34(并且没有 mc_shipping 值)。请注意,这是一个简单的产品——没有订阅、运输、税收和其他复杂性。
因此,由于 1.00 美元与 1.20 美元不匹配,并且 ($1.00 - $0.34 = $0.86 !== $1.00),我真的不知道确认该价格的公式是什么。这意味着有人可以拿 PP 按钮代码,更改价格,然后购买。然后 IPN 会耸耸肩接受这个价格,除非我能找到验证这个价格的窍门。
请注意,我确实传递了一个自定义字段,该字段告诉我产品 ID 是什么以及购买的数量,例如 4pk 小部件。
我研究了使用 PHP 即时制作加密支付按钮需要什么,它需要一个具有完整根功能的专用托管计划,因为它涉及安全证书和其他几个因素。所以,这看起来不太可能在这里使用。