1

对于以前使用过 go-cardless 的人来说,这是一个非常快速和简单的问题。

我已经阅读了文档(我认为 - 可能错过了这个 :-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应该传回 -> 但我不知道为什么它不是????

提前致谢!

ps 不知道这属于什么标签,因为 API 太可怕了 - PHP 和 go-cardless 是我能做的最好的事情!## Heading ##!!!!

4

1 回答 1

0

“状态”通过 GET 参数传回。

设置自定义重定向页面,在客户确认订阅并登陆自定义页面后,您将在 URL 中看到 GET 参数。

您看到的对象是使用这些 GET 参数获取的。

于 2014-07-24T13:45:34.660 回答