次のようにすると Stripeには影響のない任意のパラメーター(metadata)を渡すことができます。
$stripe_invoice = $user->invoiceFor($item->name, $item->price_withtax_no, [
'metadata' => [
'myparam01' => 'アイテムごとの任意のパラメーター01' ,
'myparam02' => 'アイテムごとの任意のパラメーター02' ,
]
],[
'metadata' => [
'myparam01' => 'インボイスごとの任意のパラメーター01' ,
'myparam02' => 'インボイスごとの任意のパラメーター02' ,
]
]);
3番目の引数にに渡すと、「インボイスアイテムごと」4番目の引数にに渡すと、「インボイスごと」になります。
なお、インボイスとインボイスアイテムの関係は次のようにインボイスの下にインボイスアイテムがぶら下がる感じになっています。
インボイス
├── インボイスアイテム1
└── インボイスアイテム2
Stripe API Invoiceitems( create ) : https://stripe.com/docs/api/invoiceitems/create
Stripe API Invoices( create ) : https://stripe.com/docs/api/invoices/create
サブスクリプション時に metadata を渡すには
->withMetadata([
]);
が使用できますが、条件によってはうまくデータが渡らないことがあります。 anchorBillingCycleOn() と同時に使うとうまく渡らないことがあります。