对于之前使用过无卡牌的人来说,这是一个非常快速而简单的问题。
我已经阅读了文档(我认为 - 可能错过了这个:-P)而且我只是苦苦挣扎一点:
发送了新的预授权 - 很好
返回我的服务器 - 很好
但是 - 根据发回的信息,除了客户唯一ID之外,它不会返回客户的任何识别信息。
Soooo - 我如何确认该人有有效的订阅/预授权?
我知道我可以通过会话执行此操作,然后将返回的ID链接到客户,但如果会话因任何原因失败,那么这似乎充满了安全问题和问题。
这样做的正确方法是什么?
我猜我不知何故可以使用返回的唯一ID然后请求客户实际信息,但我也找不到如何做到这一点!
https://developer.gocardless.com< - 这是该公司的文件。
请告诉我,我只是很厚,并且错过了一个明显的步骤。
以下是成功付款/订阅后返回的内容
GoCardless_PreAuthorization Object
(
[client] => GoCardless_Client Object
(
[account_details] => Array
(
[app_id] => XXXXXXX
[app_secret] => XXXXXXX
[merchant_id] => XXXXXXX
[access_token] => XXXXXXX
)
[base_url] => https://sandbox.gocardless.com
[redirect_uri] =>
)
[max_amount] => 100.0
[setup_fee] => 0.0
[currency] => GBP
[interval_length] => 1
[interval_unit] => month
[name] =>
[description] =>
[status] => active
[remaining_amount] => 100.0
[next_interval_start] => 2014-06-01T00:00:00Z
[expires_at] =>
[created_at] => 2014-05-01T07:04:20Z
[merchant_id] => XXXXXXXXXXXX
[user_id] => XXXXXXXEE54543 // this is the unique ID for user
[id] => XXXXX83854943 // // this is the unique ID for this preauthorisation.
[uri] => https://sandbox.gocardless.com/api/v1/pre_authorizations/XXXXXXX
[sub_resource_uris] => Array
(
[bills] => https://sandbox.gocardless.com/api/v1/merchants/XXXXXXXX/bills?source_id=XXXXXXXX
)
)
修改
我通过以下内容:
$payment_details = array(
'max_amount' => '100.00',
'interval_length' => 1,
'interval_unit' => 'month',
'user' => array(
'first_name' => 'xxxx',
'last_name' => 'yyyy',
'email' => 'test@test.com'
),
'state' => 'abc123456789',
'setup_fee' => '40.00'
);
state
应该传回来 - >但我不确定为什么它不是????
提前致谢!
P.S。不知道这是什么标签因为API太可怕了 - PHP和go-cardless是我能做的最好的!## Heading ## !!!!
答案 0 :(得分:0)
"状态"通过GET参数传回。
设置自定义重定向页面,在客户确认订阅并登陆自定义页面后,您将在URL中看到GET参数。
使用这些GET参数获取您看到的对象。