Skip to content

Releases: maxio-com/ab-typescript-sdk

Release 9.0.0

13 Mar 15:43
28d0508

Choose a tag to compare

Changelog: v9.0.0

Breaking Changes

  • SnapDay enum removed — The SnapDay enum (which contained a single value End = 'end') has been deleted. Subscription.snapDay is now typed as string | null directly, and the SubscriptionSnapDay container has been removed. CalendarBillingSnapDay changed from number | SnapDay to number | string. UpdateSubscriptionSnapDay changed from number | SnapDay to string | number (note: order reversed). Replace any SnapDay.End references with the string "end".
  • readComponentPricePoint return type changedComponentPricePointsController.readComponentPricePoint() now returns ComponentPricePointCurrencyOverageResponse instead of ComponentPricePointResponse.
  • CreateAllocation credit type fields changeddowngradeCredit now uses DowngradeCreditCreditType and upgradeCharge now uses UpgradeChargeCreditType, replacing the shared CreditType enum. The accepted values (full, prorated, none) are unchanged.

New Features

  • New controller: SubscriptionRenewalsController — Full CRUD for scheduled renewal configurations, with 11 endpoints:
    • createScheduledRenewalConfiguration — Create a scheduled renewal config for a subscription
    • listScheduledRenewalConfigurations — List configs with optional status filter
    • readScheduledRenewalConfiguration — Read a single config
    • updateScheduledRenewalConfiguration — Update a config
    • scheduleScheduledRenewalLockIn — Schedule a future lock-in date
    • lockInScheduledRenewalImmediately — Lock in immediately
    • unpublishScheduledRenewalConfiguration — Return a config to editable state
    • cancelScheduledRenewalConfiguration — Cancel a config
    • createScheduledRenewalConfigurationItem — Add product/component line items
    • updateScheduledRenewalConfigurationItem — Update an item's pricing and quantity
    • deleteScheduledRenewalConfigurationItem — Remove an item
  • cloneComponentPricePoint — New method on ComponentPricePointsController. Clones a component price point including pricing scheme, price tiers, tax settings, currency prices, overage pricing, and event-based billing segments.
  • deliverProformaInvoice — New method on ProformaInvoicesController. Delivers a proforma invoice via email with support for direct recipients, CC, and BCC.
  • issueInvoice now supports "draft" status — The endpoint can now issue invoices that are in both "pending" and "draft" status.

New Models

  • AvailableActions
  • CloneComponentPricePoint
  • CloneComponentPricePointRequest
  • ComponentPricePointCurrencyOverageResponse
  • Contract
  • CurrencyOveragePrices
  • DeliverProformaInvoiceRequest
  • Register
  • ScheduledRenewalComponentCustomPrice
  • ScheduledRenewalConfiguration
  • ScheduledRenewalConfigurationItem
  • ScheduledRenewalConfigurationItemRequest
  • ScheduledRenewalConfigurationItemResponse
  • ScheduledRenewalConfigurationRequest
  • ScheduledRenewalConfigurationRequestBody
  • ScheduledRenewalConfigurationResponse
  • ScheduledRenewalConfigurationsResponse
  • ScheduledRenewalItemRequestBodyComponent
  • ScheduledRenewalItemRequestBodyProduct
  • ScheduledRenewalLockInRequest
  • ScheduledRenewalProductPricePoint
  • ScheduledRenewalUpdateRequest
  • SendEmail

New enum types:

  • DowngradeCreditCreditType — Values: Full, Prorated, None
  • Status — Values: Draft, Scheduled, Pending, Canceled, Active, Fulfilled
  • UpgradeChargeCreditType — Values: Full, Prorated, None

Model Enhancements

  • CancellationOptions — Added cancelAtEndOfPeriod (boolean), scheduledCancellationAt (string | null), refundPrepaymentAccountBalance (boolean).
  • ComponentCustomPrice — Added listPricePointId (number | null), useDefaultListPrice (boolean).
  • CreateAllocation — Added decimalQuantity (string), previousQuantity (number), decimalPreviousQuantity (string), customPrice (ComponentCustomPrice).
  • ProductFamily — Added archivedAt (string | null).
  • ProformaInvoice — Added availableActions (AvailableActions).
  • SendInvoiceRequest — Added attachmentUrls (string[]).
  • SubscriptionGroup — Added uid (string).
  • SubscriptionSort — New enum values: TotalPayments, Id, OpenBalance, ExpiresAt.

Internal / Non-functional Changes

  • Package version bumped from 8.0.0 to 9.0.0.
  • API documentation regenerated for all controllers and models.

8.0.0

10 Dec 12:49
65464a1

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 6.1.0...8.0.0

7.0.1

12 Sep 09:27

Choose a tag to compare

📝 Changelog: API Documentation Updates

We've made several updates to the API documentation to improve clarity, consistency, and accuracy. This release includes enhancements to the descriptions for various endpoints, corrections to example data, and updates to external links.


🌐 Webhooks API Improvements

  • Simplified descriptions: We've streamlined the descriptions for several webhook endpoints, including List Webhooks, Enable Webhooks, Replay Webhooks, Create Endpoint, Update Endpoint, and List Endpoints, to make them more concise and easier to understand.
  • Updated documentation links: All internal and external links within the webhook documentation have been updated to point to the correct, current resources.

💰 Billing and Subscription Updates

  • Enhanced Customer API: The Read Customer endpoint now includes a complete example response, providing a clearer picture of the data you'll receive from the API.
  • Component Price Point examples: We've added new examples for Volume and Tiered price points to the Create Component Price Point endpoint, providing clearer guidance for different pricing schemes. The Stairstep Price Point example was also corrected to include a valid ending_quantity.
  • Flexible Subscription Usage: The subscription_id path parameter for the Create Usage endpoint has been updated to subscription_id_or_reference. This allows you to use either the subscription's ID or its reference string, making the endpoint more flexible.
  • Updated documentation links: The links in the documentation for GoCardless, Stripe SEPA/BECS Direct Debit, and Chargify.js have been corrected to ensure they point to the latest and most relevant documentation.

🧰 General Enhancements

  • Concise descriptions: We've shortened descriptions for the Read Customer and Read Component endpoints to be more direct.
  • Improved link consistency: All external links, especially those referencing Chargify.js and various examples, have been reviewed and updated to the correct, canonical URLs.

7.0.0

25 Jul 14:20

Choose a tag to compare

  • List Service Credits: Added a new endpoint (GET /service_credits.json) to list service credits.
  • Invoice Consolidation: Introduced a consolidation_level parameter to the GET /invoices.json endpoint to control how invoices are grouped.
  • Filter by Coupon Code: Added a coupon_code parameter to filter subscriptions.
  • New Component Field: The product_family_handle field has been added to the Read/List Components endpoints.
  • New Payment Profile Fields: Added created_at and updated_at fields to the payment profile schema.
  • New Invoice Field: The received_on date has been added to the Read Invoice endpoint response.
  • Deferred Signup: Added support for defer_signup in payment examples.

6.1.0

21 Jan 10:08
f69f77e

Choose a tag to compare

What's Changed

  • Added scheduleSubscriptionCancellationEnabled property to the Site model

Full Changelog: 6.0.1...6.1.0

6.0.1

07 Jan 11:38
2c17ea1

Choose a tag to compare

  • Fixed errors when using some query parameters nested inside objects

Full Changelog: 6.0.0...6.0.1

6.0.0

07 Jan 11:36

Choose a tag to compare

  • AdvancedBillingClient was slightly reworked:

    • domain parameter has been removed.
    • subdomain parameter changed name to site
    • Environment has changed. Now it's either default US, or EU for Advanced Billing eu hosting. The default is US. SDK is now supporting EU hosted accounts.
  • Coupon fixes:

    • renamed CreateOrUpdateCoupon to CouponRequest
    • renamed CreateOrUpdatePercentageCouponPercentage to CouponPayloadPercentage
    • changed CreateOrUpdateCouponCoupon to CouponPayload
    • There're no longer 2 distinct models for Flat amount and Percentage coupon. They're merged into CouponPayload. Using it, specify either amount_in_cents or percentage property
    • code, name, description, amount_in_cents and percentage are not required properties in CouponPayload model. It means they're not send as nulls if unset. It enables patching coupon with updateCoupon without specifying these properties values. Previous version enforced setting them.
    • CouponPayload endDate changes type from ZonedDateTime to LocalDate. Response Coupon endDate is still ZonedDateTime (its calculated as end of the day)
    • updateCoupon now throws ErrorListResponseException
    • added currencyPrices for Coupon response. Note you need to specify suitable query parameters to access it
    • added currencyPrices query parameter for readCoupon and findCoupon
    • added some missing descriptions
    • changed Coupon amountInCents to Long
    • changed CouponCurrency price to nullable Double and id to nullable Integer
    • createOrUpdateCouponCurrencyPrices now throws ErrorStringMapResponseException
  • Subscription Fixes:

    • added SubscriptionResponse for purgeSubscription operation
    • purgeSubscription now throws SubscriptionResponseErrorException
    • updatePrepaidSubscriptionConfiguration now throws ApiException when the status code is 422
  • Components fixes:

    • removed PrepaidComponentPricePoint. Use CreatePrepaidComponentPricePoint when creating price points for PrepaidComponent together with component instead
    • added prepaid-specific properties to ComponentPricePoint (response model)
    • removed upgrade_charge and downgrade_credit from EbbComponent, OnOffComponent and MeteredComponent request models (not applicable for this type of component)
    • removed deprecated priceInCents from component request models
    • removed prices from OnOffComponent request model (unitPrice should be used)
    • Fixed ComponentPricePoint expirationIntervalUnit type
    • corrected some descriptions
    • Define exceptions for create component price points operations
  • Currency Prices fixes:

    • add currencyPrices query parameter to readComponentPricePoint
    • UpdateCurrencyPrice price is now double instead of int
    • Add PriceId and PricePointId to CurrencyPrice
    • Return verbose exception message for currency prices operations
  • Events fixes:

    • Added EventKey enum and filled it with missing event types
    • merged SubscriptionGroupSignupFailure and SubscriptionGroupSignupFailure and SubscriptionGroupSignupSuccess into SubscriptionGroupSignupEventData.
    • documented key to eventSpecificData mappings.
    • removed EventType used in events endpoints for filter. EventKey should be used instead.
  • Misc:

    • Added missing properties and types for Invoice
    • fixed recordEvent and bulkRecordEvents. Now they work with default environment, with subdomain specified during client initialization. They no longer need subdomain provided to the method execution
    • Fixed types for models required for update subscription group and add subscription to group operations
    • Make initiateDelayedCancellation and cancelDunning throw ErrorListResponseException on 422 error
    • added processing Invoice Status
    • Fix errors for Subscription Notes
    • Add error model for listOffers
    • Use date/dateTime instead of string for filtering when listing products and product families
    • Now it's possible to list archived product price points using archived property with listProductPricePoints

Full Changelog: 5.2.0...6.0.0

5.2.0

17 Oct 14:50
538dbe3

Choose a tag to compare

What's Changed

  • Added tax_exempt_reason and default_auto_renewal_profile_id to Customer
  • Added received_on to InvoicePayment and CreateInvoicePayment
  • Added product_price_point_id and product_price_point_handle to UpdateSubscription
  • Improved some properties descriptions

Full Changelog: 5.1.0...5.2.0

5.1.0

27 Sep 10:42
10cc113

Choose a tag to compare

What's Changed

  • Add imported to subscription cancellation_method
  • Add id filter to List Products API

Full Changelog: 5.0.0...5.1.0

5.0.0

21 Aug 14:29
bed2205

Choose a tag to compare

What's Changed

  • [DE-602] test CRUD for subcodes by @jumper2210 in #81
  • De-900: test crud for components part 1 by @jumper2210 in #82
  • DE-934 Setup tests on a new site by @michalpierog in #83
  • [DE-932] Release 5.0.0 by @maciej-nedza in #84
  • DE-921 DE-922 Fix problem with interval units - interval units now can be nullable in various contexts, ExtendedIntervalUnit was renamed to ExpirationIntervalUnit, now ExpirationIntervalUnit is used in SubscriptionCustomPrice, CreatePrepaidComponentPricePoint, CreateProductPricePoint, CreateOrUpdateProduct, PrepaidComponent, ProductPricePoint and Product for expirationIntervalUnit property. This enum has additional value of never (this has not changed)
  • DE-921 DE-924 Reworked vaults - CurrentVault enum was renamed to AllVaults and filled with previously missing values. BankAccountVault was filled with missing values. ApplePayVault was added with the vault supporting this payment method. CreditCardVault was added with vaults supporting this payment method. PayPalVault was added with vaults supporting this payment method. Models for respective payment profiles types now use respective enums.
  • DE-910 Distinguish response payment profiles based on the paymentType. PaymentProfileResponsePaymentProfile was renamed to PaymentProfile.ApplePayPaymentProfile, and PayPalPaymentProfile were added as possible PaymentProfile in PaymentProfileResponse. Fixed a bug, when response payment profile couldn't be deserialized due to missing fields.
  • Added publicUrlExpires_on to the Invoice
  • Added achLateReject to the InvoiceRefund
  • Added tax-related properties to InvoiceTaxComponentBreakout and InvoiceTax
  • SUB-4037 Add taxIncluded to ComponentCustomPrice. Added request model for Activate Event-Based Component endpoint, SubscriptionComponentActivateEventBasedComponent
    productFamilyId in endpoint paths parameters is now string, to enable searching by both handle and id
  • [DE-932] Rename Chargify API by @michalpierog in #85

New Contributors

Full Changelog: 4.0.0...5.0.0