如何知道Recurly订阅是否会在期末续订?

时间:2016-02-11 05:41:43

标签: recurly

在Recurly网站上查看有效的,不续订的订阅时,例如

https://xxxxxx.recurly.com/subscriptions/xxxxxxxxba354d5b84812419xxxxxxxx

Recurly网站显示如下信息:

  

状态:有效
  开始日期:2016年2月9日下午7:44 UTC
  本期间:2016年2月9日 - 2016年3月9日
  下一个发票:不会续订
  结算周期: 0剩余续订(1)
  结束日期:2016年3月9日下午7:44 UTC

使用Recurly API查找相同的订阅,我无法弄清楚如何确定订阅是否会续订。这是PHP,但语言并不重要:

const TFORMAT = "D d M H:i:s \U\T\C Y";
$sub = Recurly_Subscription::get('xxxxxxxxba354d5b84812419xxxxxxxx');
echo $sub->state;
echo '<br>' . ($sub->activated_at ? $sub->activated_at->format(TFORMAT) : "nope");
echo '<br>' . ($sub->current_period_started_at ? $sub->current_period_started_at->format(TFORMAT) : "nope");
echo '<br>' . ($sub->current_period_ends_at ? $sub->current_period_ends_at->format(TFORMAT) : "nope");
echo '<br>' . ($sub->expires_at ? $sub->expires_at->format(TFORMAT) : "nope");
echo '<br>' . ($sub->canceled_at ? $sub->canceled_at->format(TFORMAT) : "nope");

输出:

  

活性
  2月9日星期二19:44:48 UTC 2016年   2月9日星期二19:44:48 UTC 2016年   3月9日星期三19:44:48 UTC 2016年   没了
  都能跟得上

如何确定此订阅是否会续订?

2 个答案:

答案 0 :(得分:2)

将我的请求发送给Recurly支持并获得此回复。希望它能在将来帮助某人:

  

具有固定的订阅   结算周期数不续订。订阅详细信息API   调用此类订阅会暴露以下内容   参数:

     
      
  • total_billing_cycles

  •   
  • remaining_billing_cycles

  •   
     

这些参数不会通过可续订订阅公开。

     

因此通过在细节中添加(PHP)这些行将调用ID   订阅是否为非续订订阅:

     

// test以确定total_billing_cycles参数是否为   暴露/本

  if (isset($subscription->total_billing_cycles)) {
    // If true...do something
    echo "This subscription will not renew";
  }
     

我希望这能回答你的问题。再次感谢你。的问候,

     

Ian Recurly Support

答案 1 :(得分:0)

我从未使用过Recurly,但您似乎首先必须获得订阅的发票。

如果您有发票,可以使用

<state>open</state>

<collection_method>automatic</collection_method>

计算,如果订阅将被续订。