【问题标题】:google checkout html api - get payment status without HTTPS?google checkout html api - 在没有 HTTPS 的情况下获取付款状态?
【发布时间】:2012-06-03 10:10:59
【问题描述】:

当我登录我的商家帐户时,我可以在“设置”选项卡中设置回调 URL。

问题在于,如果没有 HTTPS,唯一的选择就是将序列号发送回回调 URL。

回调内容:
[x] 通知序列号
例如序列号=123-456-7
[ ] XML 形式的通知(需要 HTTPS URL)
例如123...
[ ] HTML 形式的通知(名称/值对)(需要 HTTPS URL)
例如google-order-number=123&...

那么从这个序列号中,我的服务器端脚本是否有可能获得订单的状态?

我需要获取订单的付款状态(已付款或未付款,已付款金额)以及发送回我的(自定义)购物车的订单号,以便我可以更新我的数据库。

(我目前无法获取 HTTPS,因为它所在网站的人不想获取它)

【问题讨论】:

  • 我认为答案是否定的——任何与付款相关的事情都应该在加密会话中完成。
  • 网站所在的人不想获得它 - 你的意思是他们不想为 SSL 证书付费吗?我相信现在它们非常便宜。
  • 是的,我知道他们每年最低只需 60 英镑!我正在为一个朋友制作这个网站(免费),而这个人真的不想为证书付费(直到他们收到一些订单)
  • 所以如果没有 HTTPS,我肯定无法将我的自定义订单处理与 google checkout 集成?
  • @halfer 是的,我认为你是对的。这并不是一个真正的大问题,只是有点令人沮丧的是,非谷歌订单将在自定义购物车中查看,但谷歌订单必须在谷歌结帐中单独查看。

标签: php html forms google-checkout


【解决方案1】:

我会提醒您注意您接受的答案。

  1. continue_url 不是“自动重定向”。您完全依赖用户实际点击该链接而不是页面中的任何其他链接 - 特别是,Google 自己的链接可以转到用户的电子钱包页面,他/她可以访问他/她的所有订单.

    因此,您可能会因为自己的系统中没有所有订单而冒着运营风险。

  2. 所有 Google Checkout 订单都有您真正应该注意的 order statuses。您已经在 #1 中假设用户实际上会点击您的 continue_url 链接 - 此外,您还向自己敞开心扉,即您跟踪的订单可能实际上并未被 Google 批准,或者未能获得一些金钱/风险授权或检查。

    如果用户确实点击了您提供的链接,但 Google 对订单有问题,则您的系统在不应该的地方有“钱”。

  3. 实现 Google Checkout API 并将其与您的系统集成的唯一可靠方法是遵循文档/说明 - 在这种情况下,您必须实现 Notification API。

  4. 是的,您可以使用 serial number notification 获取所有订单数据,而无需为您的服务器安装/购买 SSL 证书 - 这就是您所描述的。

    • XML/名称-值通知是一种“推送”模型 - Google 会将数据“推送”给您。您将验证 Google 的基本身份验证请求(这就是需要 SSL 的原因)。
    • 序列号通知是“拉”模型 - 您将从 Google 中“拉”数据(给定序列号 - 这就是为什么不需要 SSL 在您的端 - 您将验证您的拉请求并使用 SSL 发送您的请求)。 Google 不会向您发送任何数据,只是向您发送序列号。您将使用此序列号获取与其关联的数据并向 Google 提供身份验证 - 您的请求将使用 SSL。
  5. 您将使用带有Notification History API 的序列号通知来获取数据。

以上链接应引导您完成文档/参考。如果您有任何问题,请在此处发表评论,或发送至Google Checkout Product Forums

第……

【讨论】:

    猜你喜欢
    • 2017-04-15
    • 2019-10-24
    • 2023-03-27
    • 2013-02-19
    • 2015-01-07
    • 2012-11-24
    • 2014-05-30
    • 2012-10-31
    • 2023-04-10
    相关资源
    最近更新 更多