首页 文章

PayPal已收费,但付款响应为“无效”

提问于
浏览
1

我们客户的几家网上商店通过PayPal提供结账服务 . 实际上我们遇到了问题,当我们强制结账时,我们会得到答案,说明出了问题 . 但是,如果我们检查PayPal帐户,那么我们就会看到收费仍然存在 . 现在我们正在寻找原因,并想出以下结论: - 如果我们使用PayPal沙盒帐户,一切正常 - 付款状态为“已完成”(在两种情况下) - www.sandbox.paypal.com返回“已验证” “ - www.paypal.com返回”无效“

在这种情况下,有人可以帮助我们吗?

我将附上两个文件,其中包含来自服务器的响应 .

网上商店请求参数:

cmd = _notify-validate&mc_gross = 0.01&invoice = zz_zzzzzzzz&protection_eligibility = Ineligible&item_number1 = zzzzzzzz&payer_id = CCCCCCCCCCCCC&tax = 0.00&payment_date = 05%3A10%3A46 Apr 29%2C 2015 PDT&payment_status =已完成&charset = UTF-8&mc_shipping = 0.00&mc_handling = 0.00&first_name = JOHN&mc_fee = 0.01&notify_version = 3.8和定制= 2&payer_status =验证和业务=约翰%40doe.com&num_cart_items = 1&mc_handling1 = 0.00&PAYER_EMAIL =约翰%40aol.com&verify_sign = GiPC9Bj ...&mc_shipping1 = 0.00&tax1 = 0.00&txn_id = CCCCCCCCCCCCCCCCC&payment_type =即时与姓氏= Doe的item_name1 = 00000000&RECEIVER_EMAIL =约翰%40doe.com&payment_fee = 0.01 &数量1 = 1&receiver_id = CCCCCCCCCCCCC&txn_type =购物&mc_gross_1 = 0.01&mc_currency = USD&residence_country = US&transaction_subject = 2&payment_gross = 0.01&AUTH = AHMdYo7nB ...

... =哈希算法

响应是标准的PayPal-Header加上“INVALID”

一些支持 - 来自PayPal支持团队的响应:

1.您需要将您的PayerID作为用户代理包含在HTTP标头中2.使用URL https://ipnpb.paypal.com/cgi-bin/webscr进行回发以绕过AKAMAI .

两种解决方案均未成功

下一个PayPal支持解决方案

•检查您是否将响应发布到正确的URL,即https://www.sandbox.paypal.com/cgi-bin/webscr(对于沙箱IPN)或https://www.paypal.com/cgi-bin/webscr(对于实时IPN) . 如果您在沙盒中进行测试并且您的监听器回发到实际站点(反之亦然),您将收到INVALID .

•验证您对测试IPN消息的响应是否包含与测试消息完全相同的变量和值,并且它们的顺序与测试消息中的顺序相同 . 最后,验证原始变量前面是cmd = _notify-validate变量 .

•验证您对IPN的响应:◦包含与原始IPN完全相同的变量和值 . ◦以与原始IPN相同的顺序放置这些变量和值 . ◦使用cmd = _notify-validate变量来扩展这些变量 .

•确保对响应字符串使用与原始IPN邮件的charset字段中指定的编码相同的字符编码 . 使用IPN Simulator进行测试时,字符编码将始终为UTF-8 .

......也没有成功

3 回答

  • 1

    我购买了顾客后,我今天收到了PayPal邮寄回复的一些问题 . 他们中的一些人从未来过,有些人在实际付款后迟到了 . 目前它已经解决但我认为我们正在调试PayPal服务器上的问题 . 我想最好的解决方案是等待其他具有类似问题的建筑师和PayPal响应 .

  • 0

    问题是由帐户设置上设置的错误字符集计算出来的 . 在“我的帐户”设置中(在“更多编码选项”下),必须为应用程序发送的内容设置Econding . (在我们的案例中,它必须从paypal帐户安装默认更改为UTF-8)

  • 1

    关于这个问题的更新:问题是,paypal实际上收费,所以请求是有效的 . 但是结帐过程显示为无效,因此响应无效 . Paypal支持表示,他们不知道我们发送给他们的请求(来自我们网站的其他人)的不同之处,并且请求已正确完成 . 所以我们有其他网站使用相同的技术和请求,没有人知道什么是错的 .

相关问题