我使用 gocardless 网关来处理付款。当我使用任何类型的支付网关时,我曾经依赖网络挂钩。但我觉得自己暴露在使用 gocardless 的情况下,原因如下:正如我所见,无法将支付与应用程序实体连接起来。让我们看看下一个流程:
- 用户在我的网站上按下“使用 gocardless 付款”按钮
- 用户在 gocardless 网站上填写表格
- 用户确认付款但没有访问redirect_url(我可以在redirect_url参数中插入我的参数并获取相关实体。所以让我们认为它丢失了)
- Gocardless 向我发送 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"
}
}
除价格外,没有与数据库实体相关的数据。因此我无法处理数据。我无法嵌入有关买家或产品的信息。是否有另一种方式来获得买方-有效载荷-产品关系?
在检查了完整的系统工作流程几个小时后,我意识到这可能是在 gocardless 网关上确认购买的另一种方式。如果我没记错的话,我可以依靠 redirect_url 操作,因为我的应用程序必须确认付款。在其他情况下,将不会应用付款,不会发送任何款项,并且会在短时间内从 gocardless 中删除记录。您能否确认我的想法或提出另一种付款处理方式?