SagePay V4.0 CHALLENGE 已停止为我工作

SagePay V4.0 CHALLENGE has stopped working for me

我正在开发一个使用 sagepay V4.0 协议的 c# 服务。我试图通过传入 CHALLENGE 作为持卡人姓名来模拟 3DAUTH 请求。 本周早些时候它运行良好,但今天返回的响应状态正常,3DSecureStatus 为错误。 查看测试 MySagePay 欺诈结果屏幕,有一个带有消息 "The Authentication callback message was Malformed..." 的红色盾牌 我已将 ThreeDSNotificationURL 设置为一个不存在的页面,但错误可能是 Sage 以某种方式试图验证此页面吗? 我期待“3DAUTH”的状态响应。 非常感谢任何帮助,包括有关从 mysagepay 控制台错误获取更多信息的任何提示。 这是我发送的消息的一部分

&ThreeDSNotificationURL= http://test.somepage.com/testpage.aspx
&UseDefaultValues=True
&BrowserAcceptHeader=Unknown
&BrowserLanguage=en-GB
&ChallengeWindowSize=03
&BrowserJavascriptEnabled=1
&BrowserJavaEnabled=1
&BrowserColorDepth=16
&BrowserScreenHeight=800
&BrowserScreenWidth=1500
&BrowserTZ=-60
&VPSProtocol=4.00
&TxType=PAYMENT
&Vendor=mycompany
&Currency=GBP
&ClientIPAddress=127.0.0.1
&BrowserUserAgent=Unknown
&Apply3DSecure=0

感谢

您需要 ThreeDSNotificationURL。这是银行 post 挑战后返回的页面。

您必须从表单中获取 cres、VPSTxID 和 threeDSessionData 的 post 值,并将它们 post 发送到 SagePay。然后处理 SagePay 响应以查明支付是成功还是失败或者是否发生错误。

我们有同样的问题。我们的代码运行良好。我们将 "CHALLENGE" 作为 CardHolder 传递,我们将获得预期的状态,但在某个时候,我们开始收到“3DSecureStatus=ERROR”。

沙盒有什么变化吗?

我认为它(测试沙箱)现在又能正常工作了。

现在似乎又开始工作了。收到此回复

VPSProtocol=4.00
Status=3DAUTH
StatusDetail=2021 : Please redirect your customer to the ACSURL, passing CReq.
VPSTxId={2FD68707-9DDC-76B8-2002-FBAE65F}
3DSecureStatus=OK
ACSURL=https://test.sagepay.com/3ds-simulator/html_challenge
CReq=ewogICJtZXNzYWdlVHlwZSIgOiAiQ1JlcSIsCiAgIm1lc3NhZ2VW

一定是考场出了问题。请务必了解这些实例的 Sage post 发行说明,以便跟踪部署历史。

有关信息,当 post 使用 Cardholder=Challenge 时,您不需要有效的 ThreeDSNotificationURL。

谢谢大家