You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Changelog: v9.0.0
Breaking Changes
SnapDay enum removed — The SnapDay class (which contained a single value END = 'end') has been deleted. The SubscriptionSnapDay container has also been removed. Subscription.snapDay is now typed as ?string. CalendarBilling.snapDay and UpdateSubscription.snapDay now accept string|int directly without SnapDay enum validation.
ComponentPricePointsController::readComponentPricePoint() return type changed — Now returns ComponentPricePointCurrencyOverageResponse instead of ComponentPricePointResponse.
CreateAllocation: credit type factory classes changed — The $downgradeCredit property now uses DowngradeCreditCreditType::checkValue and the $upgradeCharge property now uses UpgradeChargeCreditType::checkValue, replacing the previous shared CreditType::checkValue factory. Code that passes CreditType values for these fields must switch to the new dedicated enum types.
upgradeCharge / downgradeCredit doc comments removed from multiple models — The inline Available values: 'full', 'prorated', 'none'. comment was removed from getter/setter docblocks on AllocateComponents, Allocation, AllocationPreviewItem, AllocationSettings, Component, OnOffComponent, PrepaidUsageComponent, QuantityBasedComponent, SubscriptionComponent, PreviewAllocationsRequest, and UpdateComponent. No runtime behavior change, but IDE hints may differ.
Custom price point limit enforced — CreateSubscription, UpdateSubscription, SubscriptionCustomPrice, and SubscriptionGroupSignupItem now document a maximum of 30 custom price points per subscription; exceeding this limit returns an API error.
New Features
New SubscriptionRenewalsController — Full CRUD for scheduled renewal configurations, accessed via AdvancedBillingClient::getSubscriptionRenewalsController(). Endpoints include:
createScheduledRenewalConfiguration() — Create a scheduled renewal configuration for a subscription
listScheduledRenewalConfigurations() — List configurations with optional status filter
readScheduledRenewalConfiguration() — Read a single configuration
updateScheduledRenewalConfiguration() — Update an existing configuration
scheduleScheduledRenewalLockIn() — Schedule a future lock-in date
lockInScheduledRenewalImmediately() — Lock in a renewal immediately
unpublishScheduledRenewalConfiguration() — Return a configuration to editable state
cancelScheduledRenewalConfiguration() — Cancel a scheduled renewal configuration
createScheduledRenewalConfigurationItem() — Add product/component line items
updateScheduledRenewalConfigurationItem() — Update an existing line item
deleteScheduledRenewalConfigurationItem() — Remove a line item
ComponentPricePointsController::cloneComponentPricePoint() — New endpoint to clone an existing component price point
ProformaInvoicesController::deliverProformaInvoice() — New endpoint to deliver a proforma invoice via email
issue_invoice now supports "draft" status — The endpoint can now issue invoices that are in both "pending" and "draft" status.