October 9th, 2025

1.28.0 » 1.36.0

It’s been a little while since our last release roundup, so consider this another bumper edition. Over the past few months, we’ve shipped a series of updates across billing, automation, and the admin experience. Highlights include a new option to split contract products by units sold, support for iDEAL and SEPA payments via Stripe, staff impersonation for admin users, and a powerful new Monaco (VSCode) editor in the admin area.

Here are the full release notes, neatly categorised for convenience 🙂

Billing Updates

  • NEW: Option to 'split' items into separate contract products based on units sold

  • NEW: Surface 'payments' associated with a credit note, if applicable

  • NEW: Add 'Credit notes' tab for invoice view if document has been credited

  • NEW: Staff option to 'Issue credit note' when topping up account credit

  • NEW: Staff option to provide a 'Reason' when topping up account credit

  • NEW: 'Credit transactions' row design, including optional top-up reason

  • NEW: Client option to manually request affiliate commission withdrawal

  • NEW: Add internal_name field to payment gateway providers form

  • NEW: Surface internal gateway names in admin contexts

  • NEW: Stripe » Support for iDEAL payment method

  • NEW: Stripe » Support for SEPA Debit payment method

  • NEW: Stripe » Restrict PayPal method to presentment currencies only

  • NEW: Stripe » Minor-unit computation for zero-decimal currencies

  • NEW: Stripe » Minor-unit computation for UGX currency

  • FIX: Decimal bug when defining custom billing terms

  • FIX: Relay manual payment result after account credit top-up

  • FIX: Change default invoice sort order to use 'Date issued'

  • FIX: Minor bug when stepping back in the quick invoice modal flow

  • FIX: Broken invoice item routing when the underlying product is hidden

  • FIX: 'Multi-currency options' field not reflecting brand default setting

  • FIX: Breaking invoice display when options are not returned as Array

  • INTERNAL: Refactor order route handling in various components and views

  • INTERNAL: Refactor account credit

  • INTERNAL: Remove obsolete wallet transactions table

  • INTERNAL: Refactor currency recalculation options with centralised bindings

  • INTERNAL: Refactor gateway-related imports to use centralised types

  • INTERNAL: Remove deprecated gateways model

Automation Updates

  • NEW: Implement notification hook/trigger conditions

  • NEW: Expose recipient type category variables when authoring templates

  • FIX: Empty parameters when creating a segment from bulk notifications

  • FIX: Disabled submit when trying to bulk update contract intervals

Security Updates

  • NEW: Staff user impersonation for admin users

  • NEW: Set read-only domain-level cookies for guest and client sessions

  • FIX: Bug adding whitelisted IPs for staff users and API tokens

  • FIX: Uncaught error when revoking API tokens

  • INTERNAL: Add psl package for improved domain/hostname parsing

  • INTERNAL: Expose new getApexDomain method to use within cookies helper

Settings Updates

  • NEW: Message signature feature

  • NEW: Brand tokens field for storing design tokens (for Cart/Panel 2.0)

  • NEW: Support for setting a custom 'Google Tag Manager' script URL

  • NEW: Add support for custom storefront_url within brand meta

  • NEW: If shown to users, make custom cancellation fields optional for staff

  • INTERNAL: Shuffle around 'order in bulk' catalogue settings

  • INTERNAL: Set default values for show_to_customer & show_on_invoice to false

UX/UI Updates

  • NEW: Contract product tags

  • NEW: Improved UX/UI for selecting and managing object tags

  • NEW: UTag component with a 'subtle' display variant and in-built tooltips

  • NEW: Implement Monaco (VSCode) Editor into admin area

  • NEW: Add twig language support within UMonacoEditor

  • NEW: Add 'Preview records' control during import step

  • NEW: Indicator to highlight default user permission groups

  • NEW: Adaptive datetime formatting across support-related components

  • FIX: Bug in UDropdownMenu component

  • FIX: Click handler on UIconControl component

  • INTERNAL: useMonacoTwig composable for Twig language auto-completion

  • INTERNAL: Deprecate Codemirror editor in favour of Monaco Editor

  • INTERNAL: Deprecate JsonEditorVue editor in favour of Monaco Editor

  • INTERNAL: Deprecate tagsProvider in favour of new useTags composable

  • INTERNAL: Sync Localazy translations