dj-stripe 2.5.0 (2021-06-06)


It is not possible to upgrade to dj-stripe 2.5.0 from versions older than 2.2.2. To upgrade from an older version, first upgrade to dj-stripe 2.2.2.

Release notes

  • Minimum Python version is now 3.6.2.
  • Support for Python 3.9 and Django 3.2.
  • In keeping with upstream's cycle, Django 3.0 is no longer officially supported. (Note that it will still work, because Django 2.2 LTS is still supported.)
  • SQLite versions older than 3.26 are no longer supported.
  • New models: FileLink, Mandate
  • Cards and Bank Accounts are now visible in the admin interface.
  • Lots of model sync fixes since 2.4.0.

Deprecated features

  • The FileUpload model has been renamed File, for consistency with Stripe's SDK. Although the old name is still supported, it will eventually be removed.
  • Deprecate charge_immediately argument to Customer.subscribe(). It did not behave as expected on recent versions of Stripe. If you were using it set to charge_immediately=False, you can instead pass collection_method="send_invoice", which will send the Customer the invoice to manually pay, instead.

Breaking changes

  • When calling Customer.delete() in prior versions of dj-stripe, the Customer object would be deleted in the upstream API and the Customer object would be retained but with a date_purged attribute. This was the only model behaving this way, and it is no longer the case. If you wish to purge a customer like before, you may call Customer.purge() instead, though that method may be removed in future versions as well.
  • Remove deprecated DRF integration (djstripe.contrib.rest_framework)
  • Remove deprecated djstripe.decorators module
  • Remove deprecated djstripe.middleware module
  • Remove deprecated fields Account.business_vat_id and Subscription.tax_percent
  • Remove deprecated method Account.get_connected_account_from_token(). Use Account.get_or_retrieve_for_api_key() instead.
  • Remove deprecated Charge.account property. Use Charge.on_behalf_of instead.
  • Remove deprecated Customer.has_active_subscription() method. Use Customer.is_subscribed_to(product) instead.
  • FileUploadPurpose enum has been renamed FilePurpose.
  • FileUploadType enum has been renamed FileType.