Ghost/ghost/members-importer/lib
Kevin Ansfield ae1ac83fc5
Fixed members import-with-tier alpha creating unexpected invoices (#20695)
ref https://linear.app/tryghost/issue/ONC-199

The `updateSubscriptionItemPrice()` method in our Stripe library used by the importer when moving a subscription over to a Ghost product/price was setting `proration_behavior: 'always_invoice'`. This resulted in invoices being created when changing the subscription (even though no prices were changing as far as the customer is concerned) and in some cases where a customer previously had a one-off discount the customer was incorrectly charged the proration difference because the discount was no longer applied to the new invoice.

- updated `updateSubscriptionItemPrice()` to accept an `options` param allowing the `proration_behavior` property passed to the Stripe API to be overridden on a per-call basis
- updated the `forceStripeSubscriptionToProduct()` method used by the importer to pass an options object with `prorationBehavior: 'none'` when updating the subscription item price so that no invoice and no unexpected charges occur when importing
2024-07-31 11:16:25 +01:00
..
email-template.js 🎨 Added number formatting to members import email 2022-09-16 11:13:12 +02:00
MembersCSVImporter.js Fixed misc JSDoc types 2024-05-07 11:44:07 +02:00
MembersCSVImporterStripeUtils.js Fixed members import-with-tier alpha creating unexpected invoices (#20695) 2024-07-31 11:16:25 +01:00