条带发票项目未添加到待处理发票

时间:2016-03-06 19:20:16

标签: api stripe-payments invoice

我在Stripe有一个现有客户,我们计划为客户添加订阅。首先,我想添加一个发票项目,以便订阅在创建时选择它并将其添加到待处理发票中。以下代码按顺序运行,但条带中的发票项目立即显示为已付款,而不是添加到订阅的待处理发票中。文档说我的说法是正确的,我知道为什么发票项目没有添加到待处理的发票中?

try {
    \Stripe\InvoiceItem::create(
        array(
            "customer" => $customer['stripe_customer_id'],
            "amount" => $invoice_item_amount,
            "currency" => "usd",
            "description" => $product['description']
        )
    );
} catch(Error $e) {
    // do something
}

try {
    $result = $stripe_customerObj->subscriptions->create(
        array(
            "coupon"    => $coupon,
            "plan"      => $plan_id,
            "quantity"  => $quantity,
            "trial_end" => $trial_end_timestamp,
            "metadata"  => $metadata
        )
    );
} catch(Error $e) {
    // do something
}

在创建订阅后我将InvoiceItem::create移动到了它。

1 个答案:

答案 0 :(得分:1)

这是预期的行为。您拥有的代码会创建一个发票项目,然后创建一个包含试用版的订阅。该试用版会创建一个$ 0发票,该发票会自动选择待处理的发票项目(包括您刚刚创建的发票项目)。如果您想在试用期内收取费用,这就是您要使用的流程。

如果您希望将待处理发票项目添加到下一个发票中,则可以在订阅后创建它。