All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Check our main developer changelog for information about changes to the Paddle Billing platform, the Paddle API, and other developer tools.
- Added
on_resume
support to subscription resume and pause operations
- Adjustment type in responses is now the correct type
- Support for adjustment type, see related changelog
- Added Vietnamese Dong (
VND
) as a supported currency for payments related changelog
- Subscription discount now supports null
starts_at
- Subscription IDs can be omitted when creating customer portal sessions
- Customer portal session customer ID will always be returned as string
Client.notifications.replay
now calls correct endpoint
- Support for customer portal sessions, see related changelog
Client.customer_portal_sessions.create
paddle_billing.Notifications.Entities.Subscription
andpaddle_billing.Notifications.Entities.SubscriptionCreated
current_billing_period
would returnNone
ifbilling_details
wasNone
.current_billing_period
will now returnTimePeriod
when set.
- Added missing
traffic_source
property topaddle_billing.Entities.NotificationSetting
entity
paddle_billing.Entities.PaymentMethod
type
property is required
- Support for saved payment methods, see related changelog
Client.payment_methods.list
Client.payment_methods.get
Client.payment_methods.delete
Client.customers.create_auth_token
paddle_billing.Resources.Discounts.Operations.CreateDiscount
expires_at
is nowpaddle_billing.Entities.DateTime
paddle_billing.Resources.Discounts.Operations.UpdateDiscount
expires_at
is nowpaddle_billing.Entities.DateTime
- Transaction and Subscription operation items now allow optional properties to be omitted.
- The following property types have changed (See UPGRADING.md for further details)
paddle_billing.Resources.Subscriptions.Operations
:UpdateSubscription.items
PreviewUpdateSubscription.items
CreateOneTimeCharge.items
PreviewOneTimeCharge.items
paddle_billing.Resources.Transactions.Operations
:CreateTransaction.items
UpdateTransaction.items
PreviewTransactionByAddress.items
PreviewTransactionByCustomer.items
PreviewTransactionByIP.items
- The following property types have changed (See UPGRADING.md for further details)
- Transaction and Subscription preview responses now support preview products and prices without IDs (see UPGRADING.md for further details)
get_parameters()
method on request operation classes is now removed or replaced byto_json()
(see UPGRADING.md for further details)
paddle_billing.Entities.Shared.TransactionLineItemPreview
proration
can now be None
- Added missing initialization file for
paddle_billing.Resources.IPAddresses
- Added
product
tosubscription.items[]
, see related changelog - Support custom prices when updating and previewing subscriptions, see related changelog
- Support for
custom_data
on discounts - Support notification settings pagination, see related changelog
- Support notification settings
active
filter TransactionsClient.get_invoice_pdf
now supportsdisposition
parameter, see related changelogSubscriptionClient
preview_update
andpreview_one_time_charge
responses now haveimport_meta
property- Support for
tax_rates_used
on Adjustments - Added
IPAddressesClient.get_ip_addresses
to support retrieval of Paddle IP addresses - Support for
proration
on subscriptionrecurring_transaction_details.line_items[]
andnext_transaction.details.line_items[]
- Added
AdjustmentsClient.get_credit_note
, see related changelog
paddle_billing.Entities.Shared.CustomData
is no longer adataclass
NotificationSettingsClient.delete
now returnsNone
for204 No Content
responseTimePeriod
is now aligned to API specification:- Existing shared
TimePeriod
was renamed toDuration
(with propertiesinterval
andfrequency
) - New shared
TimePeriod
was added (with propertiesstarts_at
andends_at
)
- Existing shared
- Replaced
AdjustmentTimePeriod
,SubscriptionTimePeriod
andTransactionTimePeriod
with sharedTimePeriod
- Replaced
AdjustmentProration
,SubscriptionProration
andTransactionProration
with sharedProration
paddle_billing.Entities.Event
data
will now bepaddle_billing.Notifications.Entities.SubscriptionCreated
forsubscription.created
eventspaddle_billing.Entities.Event
data
will now bepaddle_billing.Notifications.Entities.UndefinedEntity
for unknown event typespaddle_billing.Resources.Reports.Operations.CreateReport
is replaced by report specific operationsCreateAdjustmentsReport
|CreateDiscountsReport
|CreateProductsAndPricesReport
|CreateTransactionsReport
paddle_billing.Entities.Notification
payload
is nowpaddle_billing.Entities.Notifications.NotificationEvent
paddle_billing.Entities.Shared.BillingDetails
is no longer used forbilling_details
in request operationsCreateTransaction
now usespaddle_billing.Resources.Transactions.Operations.Create.CreateBillingDetails
UpdateTransaction
now usespaddle_billing.Resources.Transactions.Operations.Update.UpdateBillingDetails
UpdateSubscription
|PreviewUpdateSubscription
now usespaddle_billing.Resources.Subscriptions.Operations.Update.UpdateBillingDetails
PreviewPrice
operation no longer allows emptyitems
CustomersClient.credit_balances
can now be filtered bycurrency_code
- Transaction payments
payment_method_id
can bestring
orNone
paddle_billing.Notifications.Verifier
verify()
now expectsrequest
to bepaddle_billing.Notifications.Requests.Request
protocol- Client connection errors will be raised as
requests.exceptions.ConnectionError
instead of anAttributeError
AvailablePaymentMethods
- replaced byPaymentMethodType
- Removed
receipt_data
fromCreateOneTimeCharge
andPreviewOneTimeCharge
subscription operations - Removed
receipt_data
fromTransaction
- Removed
paddle_billing.Resources.Transactions.Operations.PreviewTransaction
- replaced byPreviewTransactionByAddress
|PreviewTransactionByCustomer
|PreviewTransactionByIP
- Fixed bug - set default timeout.
- Fix
setup.py
version
PaddleStrEnum
has been re-implement to gracefully handle non-existent values, it is no longer using native enums- The
paddle_billing.Entities.Subscriptions.SubscriptionItem
price entity is now using the mainpaddle_billing.Entities.Price
entity - Updated the version of
pytest
supported to accept 8.4.0
- The
paddle_billing.Notifications.Entities.Subscriptions.SubscriptionPrice
entity has been updated to include support for allPrice
properties - Improved IDE support for Collections, IDEs will now know the variable type when iterating through the collection
- Entity factory methods are consistently static now where previously there were implementations as class methods
- The
paddle_billing.Entities.Subscriptions.SubscriptionPrice
entity which has been removed in favour of reusingpaddle_billing.Entities.Price
entity.
- Fixed bug - raise Paddle API errors
- Fixed bug - corrected import in
NotificationSettingCollection
.
- Fixed a bug with
UpdateBusiness
operation.
- Initial release.