Changelog

2026

New features, enhancements, and fixes released on the Swell platform in 2026.

September 2026

Platform

  • Added an Events audit log to the developer console
  • Subscriptions now use product variant prices when no separate subscription plans are defined
  • Improved TaxJar sync performance
  • PayPal orders now indicate when the delivery type is pickup
  • Fixed errors when voiding payments that were already voided
  • Fixed the cursor and selected values overlapping in multi-select lookup fields
  • Improved image fields so an image can be replaced by clicking it

Apps

  • Installing an integration app now disables the equivalent built-in integration
  • Payment extension IDs can now include underscores
  • swell app push now redeploys functions and the app page when shared code changes, and fails when files are skipped
  • swell app push now builds and deploys the frontend on a scoped push
  • swell app release no longer requires git
  • Fixed orphaned versions and release errors in the Swell CLI
  • The Swell CLI now shows where to enable the test environment
  • The Swell CLI no longer allows logging in to deactivated stores
  • Fixed the swell create tests scaffold, and SwellRequest.url is now typed as URL

Checkout

  • Added Apple Pay for subscription payments

SDKs

  • Fixed options and record cache sharing between swell.create() instances in Swell.js
  • Fixed Swell.js TypeScript declarations for ESM, CommonJS, and browser global consumers
  • Fixed server-side cookie adapters in Swell.js
  • Replaced the qs dependency with an internal query serializer in Swell.js

August 2026

Platform

  • Added Google and GitHub sign-in to the dashboard
  • Redesigned the login and sign-up pages
  • Fixed deleting tags in stores with a primary locale other than English
  • Fixed sales report CSV exports
  • Fixed bulk exports failing for large selections

Apps

  • Added atomic transactions for apps through the /:transaction endpoint
  • Added a clear message when an app is not installed in the current environment
  • Fixed array request bodies being altered when sent to app functions
  • The Swell CLI now stops its proxy tunnel after login

Sunrise theme

  • Fixed an error when installing the Sunrise storefront

July 2026

Platform

  • Added the ability to exclude countries from shipping zone regions
  • Added discounts that apply to specific subscription plans, such as monthly or annual
  • Improved handling of subscription trial periods
  • Added the ability to select a custom shipping service on orders in the dashboard
  • Added alternative payment methods to the Authorize.Net gateway settings
  • Improved Google Pay support for the Braintree gateway
  • Orders are no longer canceled when an asynchronous payment fails while other payments are pending
  • Fixed stock levels showing as -1 for products that don't consume stock
  • Fixed gift cards not saving when added manually after a validation message
  • Various dark mode fixes

Apps

  • Fixed a crash when viewing or updating payment extension apps
  • Fixed app creation on Windows in the Swell CLI

SDKs

  • Replaced cart.shipment_delivery with require.shipping in Swell.js
  • Klarna payment request details are now generated on the server

June 2026

Platform

  • Added PDF downloads for orders and invoices
  • Added a lookup attribute type
  • Added an action to reset saved data for a report
  • Added shipping dimensions to product CSV exports
  • Inactive products are now hidden from the up-sell and cross-sell product lists
  • The Omnisend integration now syncs the cart or order display locale
  • Added a copy button for responses in the developer console
  • Added a confirmation prompt when closing an unsaved field table form
  • Fixed reports not loading for long date ranges with large volumes of data
  • Improved activity loading performance in the dashboard
  • Fixed buy X get Y promotions with multiple categories applying the discount more than once
  • Fixed products not being linked to all categories when using the batch API
  • Fixed subscription pricing showing the store's primary currency instead of the subscription's currency
  • Fixed canceled items requiring stock when modifying an order
  • Fixed an issue where paying by card created two transactions when the customer's account credit covered the order total
  • Fixed shipping services not being returned in test mode when updating a cart
  • Fixed notifications not using the display locale
  • Added fraud screening parameters and line items to ConvesioPay payments
  • Various dark mode fixes

Apps

  • before: and after: hooks now fire for child collection events
  • Fixed include and link expansion for app fields on standard models
  • Fixed filtering, lookup columns, and views for app fields on standard model lists
  • Fixed condition evaluation for app content fields in record editors
  • Fixed cron function creation when the manifest kind is omitted
  • Fixed swell theme push prompting for input when the --env flag is set

Checkout

  • Customers must now set an account password before paying with account credit in hosted checkout
  • Fixed an error in checkout when the account credit payment option is enabled

Storefront

  • Proxima sitemaps now use the storefront's host and protocol

Sunrise theme

  • The storefront now always uses a light color scheme, so the operating system's dark mode no longer darkens the header

SDKs

  • Swell.js now sets the gateway and test flags when creating a card with Stripe or Quickpay

May 2026

Platform

  • Added customizable reports to the home dashboard
  • Improved proration when a subscription's billing changes
  • Fixed asynchronous Apple Pay payments
  • Fixed payments with 3D Secure cards on the ConvesioPay gateway
  • Fixed the default print template for large orders
  • Fixed an issue that blocked editing a customer's shipping address
  • Fixed issues with icon and date content fields, and with content field values being cleared when they matched the default
  • Various dark mode fixes

Apps

  • Added event delivery state to webhooks and functions
  • Functions can now control retries, and hook responses are passed back to the caller
  • Content views now support conditional read-only fields and action conditions
  • Added sorting by app fields
  • The $type query operator now supports type aliases
  • Deleting a record now deletes its records in app child collections
  • App child collections now expand into the $app object
  • Fixed queries on $app fields
  • Fixed collisions between child collections from multiple apps on the same standard model
  • Fixed the shape of req.data in before hooks

Checkout

  • Fixed a blank payment step for digital products with a zero total

SDKs

  • Fixed the initial shipping service selection for Google Pay in Swell.js
  • Added an onRequestComplete callback with request timing and retry details to swell-node

April 2026

Platform

  • Added dark mode to the dashboard
  • Added the ConvesioPay payment gateway, with support for cards, Apple Pay, and Google Pay
  • Improved subscription renewals processed through Braintree
  • Improved order numbering when using a prefix with a custom starting number
  • Improved cart loading performance
  • Fixed an issue where canceled items were deducted twice from net sales in reports
  • Fixed incorrect tax calculations when modifying orders with duplicate tax rule IDs
  • Fixed variant selection when creating draft orders
  • Fixed an issue where a variant's currency could differ from its product's currency
  • Fixed order receipt notifications being sent late or more than once in some cases
  • Fixed product option handling in CSV imports
  • Fixed a crash when editing variant-level attributes
  • Fixed applying promo codes in the dashboard
  • Fixed date selection and pagination in reports
  • Fixed the email field not updating in profile settings
  • Fixed an error when saving content models with short text fields

Apps

  • Payment extension apps can now offer their own payment methods in checkout, and charge handlers now receive the payment method details
  • Added a draft field to shipments, and apps can now enable a draft toggle in the fulfillment modal
  • Added logs for cron-triggered function invocations
  • Added React and React Storefront to the list of supported app frontend frameworks
  • Fixed cron functions not running in the test environment
  • Fixed functions set to enabled: false being enabled when an app is installed

Storefront

  • Fixed an issue where storefronts stopped working after updating to the latest version

SDKs

  • Added Google Pay, Apple Pay, and card tokenization for the ConvesioPay gateway to Swell.js
  • Added TypeScript types for product purchase options and subscription plans to Swell.js

March 2026

Platform

  • Added order events to the order activity timeline
  • Fixed an issue where adding an item to a submitted order changed the prices of its existing items
  • Fixed an issue where editing items on an order without billing details reset the order total
  • Fixed an issue where custom shipping prices were not preserved when submitting an order
  • Fixed an issue where cart items with different prices were merged
  • Fixed an issue where product price changes were not always reflected due to caching
  • Fixed an issue where tax integrations could be disabled automatically after a single failed request
  • Fixed subscription JSON exports to include full subscription details
  • Fixed an error when exporting products in JSON format
  • Fixed timezone and daylight saving time handling in reports
  • Fixed sorting and filtering issues in reports
  • Report date ranges are now kept in the URL
  • Reduced the frequency of API usage limit notifications
  • Fixed reordering of custom fields
  • Fixed sorting in collection lists
  • Fixed an issue where password fields disappeared when their value was cleared

Apps

  • Added the ability to filter lookup field values based on the value of another field
  • Content model actions now appear on standard model views
  • Added events for app child collections on standard models
  • Fixed app child collections on standard models via $app extensions
  • Fixed navigation and prefilled values for custom collection records
  • Fixed an issue where the app settings tab could go blank
  • App settings are now removed when an app is uninstalled
  • Fixed invalid event type errors for app hooks on product child collections

February 2026

Platform

  • Added the ability to skip subscription order cycles
  • Added the ability to resume canceled subscriptions
  • Improved total sales calculations in reports
  • Fixed live report data to use the store's timezone
  • Fixed an issue where product discounts could exceed the order subtotal
  • Fixed an issue where customer account balance updates could fail
  • Fixed issues with the images field on the product page
  • Fixed an issue where the JSON editor could crash when its content was cleared

Apps

  • Fixed an error when creating app records with read-only fields that have a default value
  • Fixed an issue where app public keys (app_pk_*) could not be used for card tokenization

SDKs

  • Added page, blog, and blog category types to Swell.js

January 2026

Admin

  • Fixed issues affecting the file upload component.
  • Added support for SMS-only opt-in for Klaviyo subscriptions.
  • Fixed an issue preventing lookups in app views from being clickable.
  • Fixed an issue where link.params were not passed to child collection entries.
  • Fixed lookup filters not rendering correctly in custom content model list views.
  • Fixed an infinite render loop when switching tabs in custom model record views.
  • Fixed an issue where 'Seller Variants' were not loading correctly in related entities.
  • Fixed an issue to send the correct unit price to ShipStation when an order has a discount.
  • Fixed an issue causing product pages to become unresponsive due to missing custom fields.
  • Fixed an issue where products were marked out of stock unless all variants were out of stock.
  • Fixed an issue where empty read-only date fields in content models caused infinite render loops.
  • Added link handling for app actions and navigation.
  • Added Apple Pay support for subscriptions via Braintree.
  • Implemented various fixes for content lookups.
  • Implemented handling of null collections in ChildCollection rendering.
  • Implemented frontend iframe configuration in content models.
  • Switched JsonEditor to CodeMirror and added JSONC support.
  • Enhanced subscription cancellation functionality.

API

  • Fixes applied for custom app release cycle.
  • Added JSON field type to content models.
  • Improved customer search functionality.
  • Updated product API to exclude deleted categories.

Proxima

  • Added support for variant routes in Proxima.