Я пытаюсь создать несколько этапов с помощью Stripe для очень специфического c варианта использования. Выполнение приведенного ниже кода с использованием Stripe Billings API на самом деле не создает нескольких этапов. Он создает только одну фазу (последнюю).
$schedule = \Stripe\SubscriptionSchedule::create([
'customer' => 'cus_HMDwmb8iAV0X7k',
'start_date' => 'now',
'end_behavior' => 'cancel',
'phases' => [
[
'end_date' => 1592910720,
'proration_behavior' => 'none',
'plans' => [
[
'price_data' => [
'unit_amount' => 5000,
'currency' => 'usd',
'product' => 'prod_HMrCxIwor5bbjO',
'recurring' => [
'interval' => 'year',
],
],
],
],
],
],
'phases' => [
[
'end_date' => 1594850400,
'proration_behavior' => 'none',
'plans' => [
[
'price_data' => [
'unit_amount' => 6000,
'currency' => 'usd',
'product' => 'prod_HMrCxIwor5bbjO',
'recurring' => [
'interval' => 'year',
],
],
],
],
],
],
]);
Аналогичный запрос с использованием Curl отлично работает:
curl https://api.stripe.com/v1/subscription_schedules \
-u sk_test_xxx: \
-d customer=cus_HMDwmb8iAV0X7k \
-d start_date=now \
-d end_behavior=cancel \
-d phases[0][plans][0][price_data][product]=prod_HMrCxIwor5bbjO \
-d phases[0][plans][0][price_data][currency]=usd \
-d phases[0][plans][0][price_data][unit_amount]=1000 \
-d phases[0][plans][0][price_data][recurring][interval]=year \
-d phases[0][end_date]=1592043010 \
-d phases[0][proration_behavior]=none \
-d phases[1][plans][0][price_data][product]=prod_HMrCxIwor5bbjO \
-d phases[1][plans][0][price_data][currency]=usd \
-d phases[1][plans][0][price_data][unit_amount]=15000 \
-d phases[1][plans][0][price_data][recurring][interval]=year \
-d phases[1][end_date]=1592910720 \
-d phases[1][proration_behavior]=none \
-d phases[2][plans][0][price_data][product]=prod_HMrCxIwor5bbjO \
-d phases[2][plans][0][price_data][currency]=usd \
-d phases[2][plans][0][price_data][unit_amount]=20000 \
-d phases[2][plans][0][price_data][recurring][interval]=year \
-d phases[2][end_date]=1594850400 \
-d phases[2][proration_behavior]=none \
-d phases[3][plans][0][price_data][product]=prod_HMrCxIwor5bbjO \
-d phases[3][plans][0][price_data][currency]=usd \
-d phases[3][plans][0][price_data][unit_amount]=35000 \
-d phases[3][plans][0][price_data][recurring][interval]=year \
-d phases[3][end_date]=1595851200 \
-d phases[3][proration_behavior]=none \
-d phases[4][plans][0][price_data][product]=prod_HMrCxIwor5bbjO \
-d phases[4][plans][0][price_data][currency]=usd \
-d phases[4][plans][0][price_data][unit_amount]=21000 \
-d phases[4][plans][0][price_data][recurring][interval]=day \
-d phases[4][end_date]=1597021320 \
-d phases[4][proration_behavior]=none
Единственная разница, которую я вижу, заключается в том, что в запросе Curl я Я явно передаю номер фазы.
Любая помощь приветствуется.