Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Paypal Angeleye DoExpressCheckout-数据不匹配_Php_Paypal - Fatal编程技术网

Php Paypal Angeleye DoExpressCheckout-数据不匹配

Php Paypal Angeleye DoExpressCheckout-数据不匹配,php,paypal,Php,Paypal,我刚刚开始在php中使用Angeleye库,特别是调用DoExpressCheckoutPayment的SetExpressCheckout 我已经建立了我的购物车,并使用SetExpressCheckout功能发布到Paypal 看起来一切都正常进行,但我将DoExpressCheckoutPayment与演示中的原始篮保持原样。这是这个篮子,通过贝宝,而不是我的篮子 这是正确的吗?我想它会注意到原来的篮子不是最终处理的篮子,并抛出一个错误。我知道我可以在DoExpressCheckoutPa

我刚刚开始在php中使用Angeleye库,特别是调用DoExpressCheckoutPayment的SetExpressCheckout

我已经建立了我的购物车,并使用SetExpressCheckout功能发布到Paypal

看起来一切都正常进行,但我将DoExpressCheckoutPayment与演示中的原始篮保持原样。这是这个篮子,通过贝宝,而不是我的篮子

这是正确的吗?我想它会注意到原来的篮子不是最终处理的篮子,并抛出一个错误。我知道我可以在DoExpressCheckoutPayment中重建购物篮,但我认为他们应该匹配以捕获我的网站和Paypal之间可能发生的任何干扰-或者这是我要检查的工作?(如果是就好了!)

顺便说一句,当货币代码不匹配时,它确实抛出了一个错误——我不得不将它们都更改为英镑


如果我误解了它的工作原理,我深表歉意。

在一般实践中:

SetExpressCheckout中的内容和值需要在允许的范围内匹配DoExpressCheckoutPayment(您可以在合理范围内更改用户的购买值和项目)

为什么它可能没有抱怨:

它可能没有完全抱怨的原因是“演示数据”和“实际数据”之间的差异在允许卖方更改的范围内。它只是接受了最终交易的差异(除非您注意到,货币代码不能更改!)

请参阅,当您最初向paypal发送用户时,会显示以下信息:

  • 购买产品#4
  • 9.99美元
  • 美元
然后该用户“同意这些条件并授权交易”。您获得了继续捕获的授权代码。然而,在这一点上,卖方有改变的余地(尽管不建议这样做,因为你很容易让客户不安)。您可以进行以下最终交易:

  • 购买产品#9282(在用户身上切换产品)
  • 11.99美元(稍微提高一点价格,声称“加税”或其他)
  • 美元(必须与您指出的保持一致)
虽然这对于贝宝系统来说仍然是“可以接受的”。。。这可能不是正确的客户业务

对干扰的担忧:

你对“可能发生的干扰”的担忧不应该是其中之一。交易代码、商户id和密码都是用来防止中间人干预的。由于SetDo操作都是服务器端(而不是javascript),用户无法自己直接更改这些值以获得价格更低的不同产品

希望这有助于澄清您的担忧/问题