我创建了一个网站,需要使用 payfast 作为支付网关。我已成功发送数据并进行测试付款,但它似乎没有将任何内容发送回通知网址。要么它正在发送,但存在一个我无法调试的错误,因为您无法使用本地计算机作为返回网址。或者根本没有发送,所以很难说。我正在使用他们页面上示例中的 c# 代码,因此它应该很简单。谁能建议我如何测试我的通知页面,或者是否有人可以检查代码,也许我在做一些愚蠢的事情。
此问题最可能的原因是 PayFast 无法击中您的
notify_url
。
notify_url
必须可公开访问,并返回标头200
响应,以便 PayFast 能够根据其文档将返回变量回发到您的系统。
测试 ITN 回调方法的最佳方法是创建一个沙盒帐户。使用创建帐户后提供的沙盒凭据,您可以执行测试付款,之后 ITN 将发送到您的
notify_url
。
沙盒交易成功后发送的ITN将显示在沙盒仪表板上。然后,您将能够查看 PayFast 在尝试将返回变量回发到您的notify_url
时收到的响应。此信息可以帮助您确定您的
notify_url
是否存在问题(例如 404、500 等)。
旁注:
您可以使用隧道服务(例如ngrok)来测试与本地系统上 PayFast 的集成。根据他们的文档(很简单):
ngrok 允许您公开在本地计算机上运行的 Web 服务器 到互联网