我有按比例分配的订阅。因此,前几个月向客户收取 10 欧元,最后一个月向客户收取 9.99 欧元。有时,使用一些优惠券并向客户收取 5 欧元。我怎样才能获得该客户为此订阅支付的所有金额的总和?我需要得到10 x(月数)+ 9.99 + 5 x(使用优惠券的月数)的总和。换句话说,我需要得到他之前支付的所有金额到现在为止.
您可以检索给定
Customer
https://stripe.com/docs/api/invoices/list 的所有发票。如果您想要特定 Subscription
的发票,请传入 subscription
参数。
然后您可以遍历所有发票并对支付的金额求和。请注意,您最多只能检索 100 张发票。
以下是获取所有状态为已付款的发票列表的方法:
def get_all_invoices(start_timestamp, end_timestamp):
all_invoices = []
has_more = True
starting_after = None
while has_more:
params = {
'created': {
'gte': start_timestamp,
'lt': end_timestamp,
},
'status': 'paid',
'limit': 100
}
if starting_after:
params['starting_after'] = starting_after
invoices = stripe.Invoice.list(**params)
all_invoices.extend(invoices['data'])
has_more = invoices['has_more']
if has_more:
starting_after = invoices['data'][-1]['id']
return all_invoices