通过Stripe API

时间:2017-07-24 18:30:22

标签: php api stripe-payments

我正在尝试使用PHP从Stripe API获取订阅current_period_end值。 (我认为我使用的PHP API库已经过时(1.13.0),但我无法更新它。)

我想打电话给:

$subscription = Stripe_Subscription::retrieve($pram)

不幸的是,我的API库只有订阅方法:

Stripe_Subscription::instanceUrl()
Stripe_Subscription::cancel()
Stripe_Subscription::save()
Stripe_Subscription::deleteDiscount()

如果我选择使用instanceUrl()方法,则会返回订阅的“API网址”。这是我可以用来获取Subscription对象和current_period_end值吗?

由于 麦克

2 个答案:

答案 0 :(得分:1)

我相信这应该对你有帮助。 Stripe并不容易找到。我认为你的错误是错误的检索。

https://stripe.com/docs/api?lang=php#retrieve_subscription

您应该可以使用$subscription = Stripe_Subscription::retrieve($pram);,然后$subscription->current_period_end应该包含您想要的值。

如果您的api库确实太旧而无法检索该数据,您可以使用cURL库直接请求该对象。这可以通过

完成
shell_exec('curl https://api.stripe.com/v1/subscriptions/'.$pram.'\ -u '.$api_key.':')

或使用更安全的php cURL库。

注意: 前面假设您的$ pram包含订阅ID。如果它具有客户ID或其他价值,您需要共享,以便我或我可以告诉您要传递的内容以获取您正在寻找的订阅ID。

答案 1 :(得分:1)

顶级Subscription对象是API和库的新增功能。

您希望执行此类操作以检索订阅,从客户处获取订阅。

$customer = \Stripe\Customer::retrieve("cus_84Dxgo0C1lgDEI");
$subscription = $customer->subscriptions->retrieve("sub_84FobhEyhtlQw1");

您可能会发现旧版本的API文档或库的v1.13.0分支中的测试有用的参考点。

https://github.com/stripe/stripe-php/blob/v1.13.0/test/Stripe/SubscriptionTest.php#L28

https://web.archive.org/web/20160312073633/https://stripe.com/docs/api/php