Support for Source and SourceTransaction models has been removed. The models remain
accessible in the codebase for compatibility, but have to be explicitly imported via
djstripe.models.payment_methods. They will be removed in a future version.
Remove unsupported method Customer.add_card.
Remove admin support for deprecated Plan model.
Support for legacy webhooks (not stored in the database) has been removed.
Support APPEND_SLASH = False setting in the webhook config. You will need to
update your Stripe webhook to remove the ending slash in such a configuration.
Version support
The minimum Stripe SDK version is now 8.0.0.
Support for Python versions older than 3.10 has been dropped.
Support for Django versions older than 4.2 has been dropped.
Support for EOL'd versions of Postgres and MariaDB has been dropped.
Added support for pure-python Psycopg 3 (psycopg) package
Deprecations
The setting DJSTRIPE_WEBHOOK_VALIDATION has been deprecated in favour of the new
djstripe_validation_method field on the WebhookEndpoint model. You may configure
it through the admin panel on a per-endpoint basis.
Bugfixes
Assorted fixes to Stripe Identity support
Fix TaxId support for non-customer-linked Tax IDs
Fix issue processing Refund objects for connected accounts
Default webhook endpoint version to the configured setting
Fix crash when syncing an invoice with null discounts
Fix Subscription.reactivate() if plan is None
Fix long receipt numbers not being supported correctly
Other changes
A new stripe_data field has been added to all models. This field will contain a copy
of all the data in the Stripe model, including a duplicated version of most fields.
This has been done to offer forwards-compatibility with dj-stripe 3.0 which includes
significant changes to the model structure, and removes the duplicated fields. If you
are using specific SQL lookups into the djstripe models, we recommend updating those
to look in the stripe_data JSON field to minimize future compatibility updates.
All enums are now set to 255 max length to fix forwards-compatibility issues.
Some superfluous and unused admin actions and filters have been removed.
Added individual tolerance configuration to database webhook.
The unique_together constraint on the Customer model has been removed as it was
causing issues in certain setups. You may add it back via SQL if you do need it.
Removed a noisy check when configuring a custom stripe api version.
Removed default value of WebhookEndpoint.api_version