PayPal Sandbox Classic API Express Checkout NVP内部服务器错误(500)

Jef*_*ble 6 php paypal paypal-sandbox paypal-nvp express-checkout

快速摘要:

我正在使用PHP开发一个电子商务网站.它使用PayPal进行付款.我已成功使用(从通过SetExpressCheckout发送请求字符串到DoExpressCheckoutPayment到GetExpressCheckoutDetails以在MySQL数据库中存储付款细节)PayPal的Sandbox模式及其经典API快速结账(NVP)从去年年底到现在.直到昨晚一切正常,并且没有对网站的PayPal部分进行重大更改.现在,我在每次付款请求时都会在https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=[TOKEN]上收到"内部服务器错误" .

演练:

我看到了什么:

Paypal SetExpressCheckout返回:

Array
(
    [TOKEN] => XX-XXXXXXXXXXXXXXXXX
    [TIMESTAMP] => 2015-03-28T20:27:25Z
    [CORRELATIONID] => XXXXXXXXXXXXX
    [ACK] => Success
    [VERSION] => 109.0
    [BUILD] => 15840636
)
Run Code Online (Sandbox Code Playgroud)

上面列出的链接上的PayPal Sandbox错误消息:

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, webmaster@paypal.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.
Run Code Online (Sandbox Code Playgroud)

为什么我找不到答案:

  • 通用的"内部服务器错误"消息意味着我不知道从哪里开始查找,因为我不确定问题是否与我(这是我的默认假设)或PayPal.
  • 大多数解决方案都指向生产和沙箱URL/API凭据之间的不匹配.这不是问题.我已成功使用Sandbox链接的Sandbox凭据已有一段时间了.
  • 我发现的所有PayPal内部服务器错误问题都是针对使用REST API(或使用IPN)的人员.我使用Classic-API驱动的Express Checkout,我没有看到任何debug_id返回或我如何得到它.
  • 过去的所有问题都可以通过查看返回的错误消息(ACK = Failure&L_ERRORCODE0 = ['some error code']&L_SHORTMESSAGE0 = ['short error message']&L_LONGMESSAGE0 = ['详细错误消息'])来解决.这里没有错误消息,因为它注册成功.
  • 我已尝试更改API凭据并获取标准安全标头错误(然后我切换回来,错误消失并返回重定向时的内部服务器错误).
  • 我已经尝试过修改请求字符串,但我觉得这不是问题,因为当我故意弄乱它时,我得到了标准的错误消息.

Phi*_*ury 2

在通过日志向 PayPal 报告此问题后,他们确认这是他们的已知问题。

亲爱的菲利普,

感谢您就沙箱环境中的内部服务器错误问题联系 PayPal 商家技术服务部。这是目前正在调查的已知问题,希望很快就能得到解决。当我确认问题已解决时,我会通知您。谢谢。

真挚地,

麦克风

商户技术支持

PayPal,一家 eBay 公司

贝宝更新:

亲爱的 Philip, 沙盒问题现在应该已经解决,您应该不会看到内部服务器 500 错误。如果您有任何其他问题,请告诉我们,https://www.paypal.com/mts

真挚地,

麦克风

商户技术支持

PayPal,一家 eBay 公司

我已经测试过,它似乎已修复。