GoCardless webhook

时间:2013-08-19 17:58:37

标签: api security payment-gateway payment webhooks

我使用无卡通网关来处理付款。当我使用任何类型的支付网关时,我曾经依赖网络钩子。但我觉得自己暴露在使用gocardless,这就是原因:因为我看到没有办法将支付与应用程序实体连接起来。让我们看下一个流程:

  1. 用户在我的网站上按“使用无卡付费”按钮
  2. 用户填写无gothless网站上的表格
  3. 用户确认付款但未访问redirect_url(我可以在redirect_url参数中插入我的参数并获取相关实体。所以我们认为它已丢失了)
  4. Gocardless发给我webhook
  5. 所有步骤似乎都很完美。你会说“他可以从webhook获得实体支付关系”,但我不能。这是webhook数据:

    { 
      "payload" => 
        {
          "bills" => [
            {
              "id" => "0DZGWZ2VF6", 
              "status"=>"pending",
              "uri"=>"https://sandbox.gocardless.com/api/v1/bills/0DZGFV2VF6", 
              "amount"=>"90.0", 
              "amount_minus_fees"=>"89.1", 
              "source_type"=>"subscription", 
              "source_id"=>"0DZGY8VW5E"
            }
          ], 
          "resource_type"=>"bill", 
          "action"=>"created",      
          "signature"=>"92072347ad478b...db84b80f0b9"
        }
    }
    

    除价格外,没有数据与数据库实体相关。因此我无法处理数据。我无法嵌入有关买家或产品的信息。是否有其他方式来获得买方 - 有效负载 - 产品关系?

    经过几个小时检查完整系统工作流程后,我意识到这可能是无卡尔网关的另一种购买确认方式。如果我没有弄错,我可以依赖redirect_url操作,因为我的应用程序必须确认付款。在另一种情况下,付款将不会被应用,将不会发送任何款项,并且记录将在短时间内从gocardless中删除。您能否确认我的想法或提出另一种付款方式?

2 个答案:

答案 0 :(得分:2)

如果用户未访问您的重定向网址,则不会付款。从该重定向网址中,您“确认使资金付款的资源”。

答案 1 :(得分:0)

据我所知,当您将用户传递给无卡的URL时,您可以为"状态"指定一个值。您可以将数据库ID或uniqueidentifier传递给它。

当用户填写完表格后,Go cardless会将它们传回给您(或您提供的URL),并且您可以获得州的价值,以及有关授权/订阅/账单的信息。他们传递给你的一件事是id

然后,id可以绑定到原始设置请求的Web挂钩中给出的信息。