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.
- New error code for payments
declined_not_retryable
, see related changelog.
Address
andBusiness
entities now includecustomer_id
property, see related changelog.- Two new report types
product_prices
anddiscounts
, see related changelog. Product
andPrices
entities now supportcreated_at
andupdated_at
properties
- Migrated away from native enums to reduce the risk of breaking changes
- Made entities consistent with
array<Entity>
usage where Collections were used instead - Notification classes are split from main API classes to allow for long term backwards compatability
- Subscription item
price
re-uses thePrice
entity - Dropped
@internal
on most entities to prevent IDE warnings, utilising private constructors instead - Events now utilise their type specific classes
- Update resume subscription
effective_from
field to accept RFC 3339 datetime orimmediately
- Subscription notifications support newly added price object fields
- Support for installing within Symfony 7 projects
EventTypeName
enum support forcustomer.imported
,address.imported
andbusiness.imported
ReportFilterName
enum support foraction
payment_method_id
toTransactionPaymentAttempt
entity for Transaction payments- List credit balances for a customer now supports filtering by
currency_code
- Support for
receipt_data
on create and preview of a one-time charge for Subscriptions - Support for
receipt_data
on Transactions - Support for
import_meta
on Subscription notifications - Support for
import_meta
andcustom_data
on Discount notifications
- Using the correct arguments for testing a Notification list
from
inNotificationsClientTest
- Refactored out duplicate entities where both
<Entity>
and<Entity>WithIncludes
existed - Renamed
AdjustmentsAdjustmentCollection
toAdjustmentCollection
so it aligns with naming conventions - Renamed Report objects for consistency within the SDK
- PHPCS has been upgraded and configured for
nullable_type_declaration
as well asordered_types
ListNotification
operation uses consistent naming conventions with other operations- Correct type of
current_billing_period
for Subscription notifications to be nullable - Subscription preview fields
immediate_transaction
,next_transaction
andrecurring_transaction_details
are optional Transaction
entity now re-usesAdjustment
entity for theadjustments
fieldSubscriptionNextTransaction
now mapsadjustments
toSubscriptionAdjustmentPreview
objects- Shared objects between
SubscriptionAdjustmentItem
andAdjustmentItem
have been consolidated into theShared
namespace - Conflicting request object
AdjustmentItem
has moved into the Operations namespace - Make
currentBillingPeriod
nullable for Subscription notifications - Status enums use consistent naming for
AdjustmentStatus
,TransactionStatus
andPaymentAttemptStatus
- Renamed
TotalAdjustments
toAdjustmentTotals
to align with naming conventions
stored_payment_method_id
onTransactionPaymentAttempt
, usepayment_method_id
instead
- Unused Subscription objects have been removed,
SubscriptionTransaction
,SubscriptionAdjustment
andSubscriptionsTransactionCollection
- Fixed PDF invoice for transaction endpoint to correctly hit
/transactions/{transaction_id}/invoice
- Added
importMeta
to product, price, address, business, customer, discount and subscription entities - Added
creditToBalance
totransaction.details.payoutTotals
andtransaction.details.totals
- Added
origin
query parameter to list transactions, see related changelog. - Added
available_payment_methods
to transaction with includes entity - Added
email
query parameter to list customers, see related changelog
- Operations have been renamed to reduce import conflicts and the use of aliases
- Unused and abandoned dependency
php-http/message-factory
was removed
- Resolved invalid streams being created for null payloads
- Added
available_payment_methods
to transaction preview and pricing preview - Added non-catalog items to subscriptions
- Added non catalog items to transactions
- Added
on_payment_failure
to subscriptions
- Correctly handle optional
ends_at
for discount under Subscriptions entity. - Correctly handle optional
resume_at
for scheduled change under Subscriptions entity.
- Added
reports->list()
to list reports - Added
reports->create()
to create a new report - Added
reports->get()
to get a report - Added
reports->getReportCsv()
to get a CSV file for a report
- Initial early access release. Added support for the most frequently used Paddle Billing entities and API operations. Check the README for more information.