【问题标题】:payfast not redirecting to notify_urlpayfast没有重定向到notify_url
【发布时间】:2018-08-17 06:48:19
【问题描述】:

我正在测试环境中使用 payfast 集成。我已经定义了所有必需的标准,例如。

  • merchant_id
  • merchant_key
  • 金额
  • item_name
  • return_url
  • cancel_url
  • notify_url

问题:我已经定义了 notify_url,但 payfast 没有调用我的 notify_url。它只是调用我的返回 url。

通知网址:

  • 我的 notify_url 可公开访问

  • 它也响应 200 OK

但是 payfast 不会重定向到 notify_url 只会重定向到 'return_url'

【问题讨论】:

  • 一开始就不应该重定向。他们的服务器会向那个 URL 发出请求。
  • @CBroe - 我修改了我的问题,payfast 没有重定向到 notify_url 只重定向到 'return_url'
  • 您是如何验证的?
  • @CBroe - 我用邮递员测试它给出了 200 OK
  • 首先检查您的服务器日志,看看这些请求是否真正到达您的系统。

标签: payment-gateway


【解决方案1】:

付款成功后,PayFast 会向您的notify_url 发送 ITN(Payment Confirmation)。

他们会将 ITN 发送到您的 notify_url用户被重定向到您的 return_url

当 ITN 被发送到您的 notify_url 时,您必须将返回变量保存在您的数据库中。

通过这样做,当用户被重定向到您的return_url 时,您可以从数据库中获取信息并相应地更新您的系统。

您还必须确保根据他们的documentation 使用正确的端口。

【讨论】:

  • 正如@Shepard_ZA 所说-您不会被重定向到notify_url,只会被重定向到return_url。 “入门”部分对此进行了解释 -developers.payfast.co.za/documentation
  • @Daniel_ZA 我不明白“PayFast 仅使用端口 80、8080、8081 和 443。”我是否必须将 notify_url 重定向到 myurl:8080/notify_url
  • @JAMES,如果您的 notify_url 没有使用这 4 个端口之一,那么您需要将其更改为使用其中之一,否则您将不会收到来自 PayFast 的 ITN 回调
  • 如何将payfast返回的签名与我在javascript通知url中的服务器上的参数匹配
【解决方案2】:

如果您在本地进行测试,则需要有一个可公开访问的 URL (notify_url) 才能接收通知,请考虑使用 NGROK 或 Expose 等工具将您的本地开发服务器公开到 Internet。

【讨论】:

    猜你喜欢
    • 2017-05-25
    • 2014-02-19
    • 1970-01-01
    • 2018-08-20
    • 2015-10-17
    • 2019-08-06
    • 2019-07-03
    • 2017-07-14
    • 2018-07-02
    相关资源
    最近更新 更多