Sagepay 5006 错误代码修复

2023-12-02

谁能告诉我为什么 sagepay 会抛出 5006(无法重定向到供应商的网站。),我可以将交易发布到 sagepay,并且可以在 sagepay 端提供信用卡信息。但是,我的问题是,一旦它返回到我的通知页面,它就会抛出错误 5006。

我最终无法到达成功或失败的网址。


请参阅以下有关您的交易失败错误 5006 问题的建议:无法重定向到供应商的网站。供应商未能提供重定向 URL。

错误消息本身并不总是完全准确,因为当他们在回复您的NotificationURL 的帖子时收到的通知响应存在任何类型的问题时,就会显示错误消息。以下是您可以调查的各种已知问题的列表:

1) 您可以确认收到状态为 OK、INVALID 或 ERROR 的交易响应

2) 在将上述三个字段写入 POST 的 Response 对象之前,请确保清除响应缓冲区以删除任何标头代码、注释或 HTML。 Sage Pay 服务器期望“Status=”作为响应中的第一个字符。如果它没有看到这些,它会将响应视为错误并导致事务失败!

3) 您的通知页面应该只响应 Status 字段、RedirectURL 字段和可选的 StatusDetail 字段。这些字段之前或之后不应包含其他 HTML、标题、注释或文本。 Sage Pay 服务器会将所有此类文本视为错误并使交易失败

4) 无论状态如何,都必须将包含有效、完全限定 URL(即以 http:// 或 https:// 开头的地址)的 RedirectURL 发送到您网站上的最终完成页面,Sage Pay 会将您的客户发送到该页面

5) 编码必须为“名称=值”字段,并用回车换行符 (CRLF) 分隔

6) 您服务器上的通知页面可能会“崩溃”,您应该检查以确保服务器上的通知页面可以正确处理 Sage Pay 发送的所有消息(OK、ABORT、NOTAUTHED、REJECTED、PENDING 和 ERROR)。

7) 在验证通知 POST 时没有发生错误的所有情况下,您都应该发送 OK,因此即使 Sage Pay 向您发送 ABORT 或 NOTAUTHED 状态,您也应该回复 OK 和指向通知客户的页面的 RedirectURL交易未完成。

8) Sage Pay网关运行在多种固定IP地址上,它们通常使用单独的IP地址来响应所有交易请求。

请确保您的服务器或防火墙允许以下所有 IP 地址:

对于我们网关的出站流量:

195.170.169.9 – live.sagepay.com 195.170.169.8 – test.sagepay.com

对于入站流量,如果您使用 SERVER,则只需将 IP 列入白名单,因为这是启动回调的唯一解决方案。您不需要将此应用于我们的 FORM 和 DIRECT 集成。我们回调的IP是:

195.170.169.14 195.170.169.18 195.170.169.15

Sage Pay 使用的子网掩码是 255.255.255.000。

确保您的防火墙允许出站端口 443(仅限 HTTPS!)和入站端口 443(以及可选的 80 HTTP)访问,以便与我们的服务器(在模拟器/测试/实时)进行通信。 然而,这种情况总是有改变的余地。 Sage Pay 拥有整个 195.170.169.0/255 范围(256 个 IP)。

9) 您是否使用我们通过 NextURL 传递到您的通知页面的“SecurityKey”在数据库上正确匹配交易

10) 如果 MD5 签名匹配,您的通知脚本应以 OK 状态和指向订单完成页面(如果状态为 OK)或相应订单失败页面(如果状态为 NOTAUTHED 或 ERROR)的 RedirectURL 进行响应。您可能希望 ABORT 消息将客户重定向到为他们提供替代付款方式的页面,或询问他们为什么选择取消。如果签名不匹配,您应该检查您的代码是否正确重建消息,如果您确定是这样,则所有此类消息都应该使用 INVALID 进行响应,并使用 RedirectURL 将用户指向失败页面。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Sagepay 5006 错误代码修复 的相关文章

随机推荐