New on Shopfront: September & October 2024

Welcome to what’s new on Shopfront for September & October 2024. We’ve got a whole bunch of changes coming through and some super useful fixes!

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks.

Major Features

Product Edit Page Redesign

As part of an effort to improve design consistency and allow Shopfront to be expandable in the future, we’re slowly going through and redesigning each page, most recently we’ve modified the product edit page and introduced a number of new features, plus made it significantly easier to use.

For the next few months you’ll be able to swap between using the new UI and the old UI, currently the old UI is the default, but we will be making the new UI the default shortly. Feel free to provide feedback on the new UI when you have access to it.

Some of the new features that have been made available as part of the new UI are:

  • Purchase tax rates,
  • Minimum order quantities,
  • Replacement costs

More features will be introduced in the coming months which will only be available in the new UI and not the old UI.

Missing Items from Promotions

If you’ve found you’re missing an item from a promotion that has been automatically downloaded into your system, you can now manually map and create products directly from the promotion view screen.

Simply find the promotion the item should be a part of (e.g. 1 for $8) and go to the view page, you’ll then be able to see what we have on our master database and you’re able to match and create directly from this screen.

Minor Features

  • Improved default values for existing settings so you no longer need to go through a number of pages when you save settings after we’ve added a new general setting,
  • Added business number field to the Outlet contact details for use in placeholders,
  • Buying periods can now be edited,
  • Improved design of the express stocktake screen when using certain mobile phones,
  • Added barcode utility page to assist with finding and cleaning up barcodes within your file,
  • Added purchase tax rates allowing you to specify a different tax rate for purchasing items compared to selling them,
  • Added support for minimum supplier order quantities per-product,
  • Added replacement costs for products per-supplier,
  • Improved the detection of invalid email addresses throughout the system,
  • The advanced product importer now informs you of errors within the file better,
  • Deprecated sale key options have now been removed (discount product and discount current sale) as these have had alternate ways of working for five years,
  • Reporting dashboard timeline no longer groups by invoice number and instead by sale ID,
  • Attempting to return an order to a supplier that has since been deleted now provides a better error message,
  • Product IDs can now be added to reports through the report builder,
  • Improved the speed of synchronising Outlet & Register data,
  • Invoice notes can now be bulk added to all items through the family view page,
  • The favourite report index page now shows the last user to modify the report and who created the report,
  • Orders & Invoices index page now shows the total of the order using the invoice cost when invoices are sent instead of the total of the ordered cost,
  • Added additional permission for deleting order attachments,
  • Customer displays can now have the header alignment modified,
  • [Hump Club] Supported offers can now be redeemed multiple times within a single sale,
  • [IBA Loyalty] Added support for Porters Liquor Rewards program,
  • [IBA Loyalty] Added support for “ambiguous” customer results when searching by mobile,
  • [Zen Global] Only matching barcodes are now shown by default, with any unmatched barcodes being hidden,
  • [Zen Global] Added promotion stacking on supported promotion types,
  • [Developer] Embedded applications are now always opted in to using dynamic styling

Bug Fixes

  • Authorising an application when you don’t have permission that is requested by the application no longer shows a rendering error and instead correctly lists the permissions required,
  • Paying off customer accounts no longer show the payment subtype as Not Implemented when running reports,
  • Having the product details screen open in the sell screen and pressing the delete button on the keyboard when it’s the last product left on the screen no longer crashes the sell screen,
  • Prevented incremental invoice numbers from resetting to one when a register is taken over and the page is refreshed,
  • Cancelling a sale that contains payments from multiple Outlets now correctly completes and doesn’t cause an error to be displayed,
  • Created product inventory logs are now created for temporary products that come from an integration,
  • Number fields with default values in the additional information page can now be successfully saved,
  • Editing an external stocktake before applying no longer shows an error when saving (the save was successful previously, an incorrect error message was shown),
  • Inventory log with decimal place values is now correctly rounded instead of showing full floating point representation,
  • Adding a large discount reason to the predefined discount reasons no longer prevents editing the discount reasons in the future,
  • Prevented register takeovers leading to potentially incorrect takings for the day if the register is taken back by the original device,
  • Auto logout now works better for values longer than 100 seconds,
  • Editing a product from within the order edit screen no longer causes the reorder level, amount and limit to show as zero on the expanded item view,
  • Swapping between popup and presentation modes for the customer display no longer requires a page refresh to take effect,
  • Adding a classification to the order edit page which contains no products for the supplier now doesn’t attempt to load the entire stock file to the order,
  • [Hump Club] Performing a total sale discount will now correctly discount the product price and recalculate the hump club discount instead of also discounting the hump club product,
  • [Developer] Webhook failure notifications are now deduplicated

New on Shopfront: July & August 2024

Welcome to what’s new on Shopfront for July & August 2024. We’ve got a couple of highly requested features now available and a plethora of additional changes.

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks.

Major Features

External Stocktake Variance Report

A long requested feature has now made it into Shopfront! When running a stocktake from an external provider (instead of performing a stocktake directly in Shopfront) you can now view variances compared to your existing stock the same way advanced stocktakes display variances.

More details about external stocktakes can be found in our help centre.

Customer Display Start / End Dates

If you’ve got a limited edition promotion running or just want to prepare some future branding, you no longer need to set a calendar appointment to modify your customer display, instead just do it directly in Shopfront and specify the start and end dates (and times!) for slideshow content on the customer display.

All the details about Shopfront’s customer displays can also be found in our help centre.

Minor Features

  • Prevented multiple customer displays from being able to be opened at the same time,
  • Prevented showing the customer display in popup mode when we detect there is only one display,
  • Improved screen selection algorithm for the customer display popup,
  • Improved the design of the new favourite reports page,
  • Added a choice of whether the minimum order value should prevent orders from sending or just warn,
  • Added allow marketing toggle to the customer edit page,
  • Families are now shown on the future prices page when a category is filtered (presuming the family has a product in that category),
  • Added additional invoice notes to the product edit page which are visible when receiving orders,
  • The order of additional fields can now be adjusted through Shopfront’s UI,
  • The billing section now shows all the reasons a plan isn’t available to you instead of just a single reason,
  • Non-sequential invoice number support has now been added, reducing the likeliness of invoice number collisions,
  • Products that are sold with cost as a percentage of the sell price will no longer show the warning for selling below the cost of the product,
  • The total for fees, freight and discounts on the order edit screen recalculates the per-row values live instead of when clicking away from the input box,
  • The default tax rate can no longer be deleted,
  • Improved how products are split across lines when they’re too long to fit on a single line for receipts,
  • Promotions that reduce the value by a fixed currency amount are now applied on the everyday price instead of the base price,
  • A warning has been added when attempting to delete a customer who has an outstanding balance,
  • You can now specify a different tax rate for purchasing stock vs selling stock,
  • Prevented the deletion of suppliers when there is an open or sent order existing for that supplier,
  • [Developer] Reduced the webhook retry times to ensure webhooks are delivered in a more timely fashion,
  • [ILG] Improved handling of order confirmations when they take several seconds to confirm,
  • [Xero] Improved credential handling leading to less times revoking and reintegrating the application is required,
  • [Zen Global] Added ability to send live inventory levels to Zen Global

Bug Fixes

  • Deleting a promotion category no longer prevents promotions that were previously in that category from being able to be updated,
  • Expanding the Other Prices section in the order edit page no longer causes it to clip through other rows when there is a large number of prices,
  • Checkboxes on the promotional tickets screen now only select what is visible, not the filtered rows as well,
  • Fixed thumbnails for videos not generating when the video length was between 10 and 11 seconds,
  • The global login now correctly shows an error when you use the incorrect credentials instead of redirecting to the store’s login page to show the error message,
  • Fixed customer group promotions not applying when there are multiple applied to a single product and the store has cross promotion count disabled,
  • The screen now re-renders when you change which product is active on the view page (through clicking a parent or basket item),
  • Printed inventory reports grouped by category with products hidden no longer show blank cells as “No Category”,
  • Prevented duplicate invoice numbers when a sale fails to upload during a synchronisation,
  • Reprinting a receipt from the sales history which contains a product that has a barcode template no longer prevents the receipt from loading,
  • Adding a family to the future price list which doesn’t have any products within it will now successfully add,
  • Prevented reports from failing to generate when running a purchases report which contains an order with no items included in it,
  • [Developer] Prevented an error being returned when querying the GraphQL field rawEventName

New on Shopfront: May & June 2024

Welcome to what’s new on Shopfront for May & June 2024. We’ve got a number of minor features, a few fixes and some added peace of mind.

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks.

Major Features

Offline Sale Backup

Shopfront already stores your sales locally in the browser’s cache when offline, but for added peace of mind, we’ve introduced the ability to backup sales that fail to upload due to your device not having internet to a local folder.

After the backup is setup, Shopfront performs all backing up and uploading of sales when you regain connection to Shopfront invisibly.

To get started, open Shopfront and press the Online button in the header, press the Offline Sale Backup button and then the Set Backup Folder button, simply choose a location to save the data (e.g. C:\Shopfront\Sales) and follow the prompts provided by the browser. Finally, press the OK button to close the dialog.

If you clear your local data in Shopfront or clear the browser’s cache and lose connection to the folder, you can simply follow the same steps as above and select Restore Backup instead of Set Backup Folder.

For more information on this feature and other functionality related to it, check out our help article.

Minor Features

  • Added the ability to bulk delete media centre items,
  • Improved performance of Shopfront when a large number of changes are received over the live sockets (e.g. once a stocktake has been applied),
  • CSV file imports now warn you when the CSV file you’re attempting to upload doesn’t have the same number of columns in the rows compared to the header,
  • Improved usability on mobile devices by moving the location selector and volume to the user menu on small screens,
  • Significantly improved the speed parked sales are obtained from the sync (thus improving the speed of the sync),
  • Added reorder point changes to the revision history,
  • Added an option to show gift card expiry information on receipts,
  • Gift cards can now be exported to a CSV file,
  • Filtered future prices can now be bulk applied,
  • Authorisation requests from integrations have had a design improvement when you’re missing an add-on,
  • Improved the message displayed when invoice numbers from a supplier are attempting to be reused,
  • Added more options to editing an Outlet and added the ability to embed Outlet information on receipts,
  • Added additional general setting validations,
  • The general settings page now shows the last time each individual setting was modified,
  • Prevented mix criteria for promotions from being enabled when a product exists in multiple criteria,
  • Forced registers to upload all offline data before a register closure can be uploaded (register closures can still be performed, they now just wait for all other data to upload),
  • Improved the flow of adjusting a case quantity when receiving an invoice to be more predictable,
  • Prevented the quantity being changed on the sell screen for products that were added via a barcode template,
  • Improved dark mode styling for disabled / read only fields,
  • The product edit page now shows if future prices are set for a product,
  • You can now add all products that exist on a buying period into an order,
  • Improved display of large gift card codes on receipts,
  • Added a new setting to require a password when a user hasn’t yet logged in for the day,
  • [Developer] Sell screen quantities and prices can now be adjusted through the Embedded API,
  • [Developer] Promotions active on the sell screen can now be retrieved through the Embedded API,
  • [Hump Club] Added support for offers that discount the sales in general instead of just being applied to products

Bug Fixes

  • When products are edited on supplier invoices being received as exclusive of tax the page no longer crashes upon saving the product,
  • Adjusted how additional information toggles are stored in the revision history to always be consistently “true” / “false” (previously this was sometimes being displayed as “1” / “0”),
  • Prevented false-positive subscription check preventing some stores from downgrading plans when they weren’t using custom roles,
  • External stocktakes no longer appear as a miscellaneous change on the inventory movement report,
  • Invoices received through integrations can no longer incorrectly link to a product with an identical supplier code but a different supplier than the invoice’s supplier,
  • Refreshing the kitchen display no longer prevents orders from being displayed until the settings are modified,
  • Refreshing the order edit page after clearing site data no longer results in the total payable for each line to be NaN,
  • Order of products being added to the sell screen no longer affects promotion values when cross promotion count is disabled,
  • Prevented users with the See Cost permission disabled from seeing the cost of products when making a transfer to another Outlet,
  • Images uploaded into the media centre in CMYK format are now correctly preserved in the thumbnail,
  • Fixed reorder limits and max quantity being blank for products added from the search bar to an existing order that is being edited,
  • Order generation now works correctly when generating by both sales and reorder points when there have been no sales for the provided period and you have greater stock on hand compared to the reorder point,
  • Closing Shopfront before the customer display when the customer display is in popup mode no longer makes Shopfront believe the customer display is still open when it’s next opened,
  • Printing or exporting a report with no group names now correctly shows No Group Name instead of being blank, matching Shopfront’s UI,
  • [Developers] Fixed the event key for thin inventory updated events to match the event type that it’s registered with,
  • [Developers] Order of mutations & queries in the navigation menu are now the same as what’s displayed on the page

New on Shopfront: March & April 2024

Welcome to what’s new on Shopfront for March & April 2024. We’ve got a load of features and bug fixes for the last couple of months.

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks.

Minor Features

  • Improved memory handling for webhooks, leading to more efficient events,
  • Improved logging for integrated EFTPOS through the close register page,
  • Modified the product sales summary to only show data for the last three years instead of the last five to improve performance,
  • Advanced report WHERE filters for time no longer use UTC and instead use the local timezone,
  • Advanced report WHERE filters for time now support relative values instead of forcing full dates,
  • The product details on the sell screen (when you press a product’s name that has been added to a sale) now contains information relating to outstanding orders the product is on,
  • Added a link to the product view page when viewing products on the tax rate page,
  • Added ability to prevent discounting individual products,
  • Adjusted the external stocktaker import to take into account multiple barcode formats instead of just looking for the barcode that the vendor has stored,
  • Added a sale total remaining value to the customer display for part payments,
  • You can now see how media is being used within Shopfront from the media centre,
  • Adjusted order line details “last order date” to instead be the last date an order was sent,
  • Values on the register closure page are now reset if more specific values are entered for the group,
  • Added an option to specify how costs are determined on the product edit screen (allowing you to set costs based on last, but have sale profit calculated on average),
  • Improved UI design when creating an order with a duplicate invoice number,
  • Prevented a user from adding to shelf tickets from an order multiple times,
  • Added price override functionality to price lists for families of products,
  • Numerous dark mode UI improvements,
  • [Accounts Flow] Invoice PDFs are now available directly in Shopfront as an attachment,
  • [Developer] Added ability to retrieve the currently active promotions on a sale through the Embedded API,
  • [Developer] Added context to webhooks to allow developers to determine how an event was generated,
  • [Developer] Developers can now reset their client secret through the developer portal,
  • [Developer] Added ability to receive notifications when your webhook fails,
  • [IBA Scan v2.5] Ignored sending the ALM supplier code when it is invalid,
  • [IBA Scan v2.5] Added ability to override the URL used for loyalty

Bug Fixes

  • Prevented promotions from continuing to automatically import into your store after removing the promotion category source,
  • Fixed cloning statements with images on them,
  • Case quantity changes are now reflected with the correct before value on the inventory movement report,
  • Fixed RPN calculation for advanced reports to correctly take into account order of operations with negative multipliers (e.g. (a * b + c) * -1),
  • Prevented stocktakes sending an inventory updated webhook when the inventory stayed the same,
  • Refreshing the product view page with a product that is not active now correctly shows the status with styling applied instead of appending to the product name,
  • Confirming an order date is correct when creating an order (due to being before the due date) no longer creates a duplicate order,
  • Products that contain other products which also contain products no longer indefinitely load the components section on the edit page,
  • Associating a product to another product which also contains the same supplier code no longer creates a duplicate supplier code attachment,
  • Associating a product which doesn’t have tax on the invoice to a product which does have tax (and entering the invoice as exclusive of tax) now correctly recalculates the line cost,
  • Counting a product that has already been counted on a different device within the same stocktake no longer crashes the page,
  • Adding a category to an order no longer includes inactive products,
  • Merging products which are in the same family no longer results in an error,
  • Recovering a deleted user can no longer have the same username as an existing user,
  • [Accounts Flow] Supplier codes have enforced matching for the supplier that is being imported,
  • [Developer] The application history now shows complete history for rarely used applications,
  • [Tyro] Added support for Tyro returning only a partial response when using a Tyro Pro terminal,
  • [Tyro] Ignored status messages from the Tyro Pro terminal that don’t contain any text,
  • [Xero] Not specifying an invoice reference value no longer causes the save to load indefinitely,
  • [Zen Global] Adjusted how journal numbers are generated to prevent duplicates

New on Shopfront: January & February 2024

Welcome to what’s new on Shopfront for January & February 2024. Following on from the last few months, we’ve continued with the quality of life improvements and ensured bugs have been getting squashed!

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks.

Major Features

Freight Distribution Rules

In the past, Shopfront has had only one way to distribute freight across products (based on how many items are being purchased), however we know each supplier might charge for and distribute freight differently, so we’ve implemented two more methods of distributing freight.

  • Items – this is the traditional way we’ve distributed freight in Shopfront, each item is compared against every other item and gets the same freight (so 24 beers get four times the freight as six wines, 12 beers get two times the freight as six wines)
  • Cases – a flipped version of items, where the cases are compared together instead of the items (so 24 beers get the same freight as six wines, 12 beers get half the freight of six wines)
  • Mixed – a mode which first compares the cases against each other (like the Cases mode), and then any leftover items are compared against each other like the Items mode.

You can specify the distribution settings per supplier in your supplier edit page.

Accounts Flow Rewrite

Whilst the Accounts Flow integration has worked pretty well, it has needed a rewrite for quite a while (it was the only integration left from version one that hadn’t been rewritten).

  • You should receive invoices quicker as they’re now pushed from Accounts Flow instead of being fetched on a schedule,
  • Distribution rules now apply to Accounts Flow invoices without having to manually re-enter data (including the new freight distribution rules),
  • New suppliers are created with the supplier name instead of their ABN number,
  • A number of bug fixes have also been included (such as items with decimal places in invoices now being supported)

This is rolling out in the background across each Vendor using the current Accounts Flow integration over the next few weeks.

Minor Features

  • Improved the readability of reports on the user dashboard,
  • Improved dark mode handling across Shopfront,
  • Increased the speed massive orders (thousands of items) load,
  • Added a sale key for paying with Shopfront’s built-in loyalty,
  • Sales can no longer be cancelled from the sales history when there is a gift card present,
  • When no sale keys are on a page you no longer receive a red error page, instead you get a nice message,
  • Sale keys now reload when embedded applications are marked as being ready, allowing certain integration keys to work on slow devices,
  • Packages now dynamically calculate costs like baskets do,
  • Added confirmation when removing a Register or Outlet from the Account & Billing page,
  • The inventory movement report can now display products that have not had any movements during the period,
  • Improved the design of the price list edit screen for small devices (like mobile phones),
  • Added explanations of what each graph is on the reporting dashboard,
  • Added warning of an open stocktake when editing orders,
  • Comments made on order reviews can now been seen while editing an order,
  • It’s now possible to disable statistics from printing on the register closure,
  • Added ability to select which Outlets will receive automatic promotions based on promotion categories,
  • Added a new Duplicate Customer pattern to the security centre to detect a customer being added to multiple sales on the same day,
  • Inventory at Date reports now use the cost for the specific Outlet instead of the global cost,
  • Added a large amount of validation into the general settings page,
  • Redesigned the everyday tickets page for mobile devices,
  • Temporary products are now routinely cleaned up if they’re not in use, preventing them from being reused after a period of time (instead they’ll be automatically recreated from scratch),
  • Required dependencies for permissions are now displayed when you hover over a permission which is disabled,
  • Added sound effects for new notifications and barcodes not found,
  • Added check for changes before leaving the price list edit page without saving,
  • The location selector now skips the Outlet selection if only one Outlet exists,
  • The media centre now supports selecting multiple items at once, allowing you to bulk delete and bulk insert content where appropriate,
  • Improved the design of the advanced promotion edit screen when using a small screen,
  • Vendor connections now feature a better tax rate matching algorithm,
  • Add new promotion categories to support further customisation of which promotions you receive from banner groups,
  • Roles can now be marked as “managed” which will use Shopfront’s default roles & permissions,
  • Future costs & prices now support setting values for families instead of just products,
  • [LMG] Receiving new promotions will display a notification in your store when they’re loaded,
  • [OnTap Data] Receiving new promotions will display a notification in your store when they’re loaded,
  • [Developer] Inactive webhooks are deleted six months after being marked as inactive,
  • [Developer] Added a password reset system,
  • [Developer] Improved the display of API log history,
  • [IBA E-Commerce] When a product is marked as inactive in Shopfront, it will now send across to IBA with an inventory level of zero, even if the product still has inventory,
  • [IBA Loyalty] When a customer is added to the sale the screen now returns back to the sale keys and transaction, no matter what was previously visible,
  • [IBA Loyalty] Improved display of the currently active customer,
  • [IBA Loyalty] The currently active customer now displays the point value instead of the number of points that are available to the customer,
  • [Linkly] Improved handling of missing messages when processing EFTPOS transactions,
  • [Thirsty Camel Hump Club] The deal product can no longer be discounted,
  • [Tyro] Improved handling of situations when Tyro becomes disconnected from Shopfront (e.g. power outages),
  • [Zen Global] When a customer is added to the sale the screen now returns back to the sale keys and transaction, no matter what was previously visible,
  • [Zen Global] Gift card ranges are now hidden by default when selling a gift card

Bug Fixes

  • Editing a product followed by changing Outlets no longer displays the incorrect cost when editing a transfer between Outlets,
  • Using different formats on the receipt compared to your store’s date and time format no longer results in invalid dates being shown with certain dates,
  • Scrolling the order edit page no longer jumps around when leaving an expanded item open,
  • The Outlet selector for the sales history and promotions view within the product view page now shows and uses the current Outlet,
  • Sending a receipt as a PDF attachment via email now correctly displays the receipt and not the text “A4 Receipt preview unsupported”,
  • Scrolling the user dashboard while the mouse is over the header of the table now scrolls as expected,
  • Previous promotions no longer appear in the report search when include deleted is disabled,
  • Prevented the name of images and videos on the customer display edit page from taking up the space of the preview,
  • The revision history difference now highlights the correctly added row, instead of the last one,
  • CSV files that contained only carriage returns and no line feeds now works as expected instead of not importing anything,
  • Prevented users from being able to edit inventory if the product edit screen is logged out by a user who has permission and then logged in with a user who doesn’t have permission,
  • Large external stocktakes no longer fail to import when there are thousands of unmatched barcodes,
  • Values in pie graphs are no longer shown if they don’t fit within their wedge,
  • Viewing all statements from the balances page no longer crashes when you don’t have any customers,
  • The inventory movement report no longer includes products that did not exist during the period run,
  • Minimising a group on a large report now correctly loads additional groups which were previously not visible,
  • Adding two customers to a sales report and excluding both no longer prevent No Customer results from appearing,
  • Prevented the supplier view page graph from having dollar values cut off,
  • The reference column on unconsolidated payment method reports now appears as expected and doesn’t prevent the report from running,
  • Prevented waiting for embedded applications which aren’t accessible over the network,
  • Customer statements no longer show Shopfront as the “from” address when emailed, if we can’t determine which Outlet you’re currently in, the first Outlet’s name will be used instead,
  • Fixed max on hand calculation when generating an order from sales,
  • [IBA Loyalty] Attempting to add a customer online with a customer number now adds the customer number as expected (other fields aren’t searchable while offline),
  • [Thirsty Camel Hump Club] The Hump Club deal product no longer displays the discounting below cost dialog,
  • [Xero] Disabling a tenant and then instantly reconnecting the tenant no longer causes the page to infinitely load,
  • [Zen Global] The surcharge product should no longer fail to retrieve when you’re logged out

New on Shopfront: October, November & December 2023

Welcome to what’s new on Shopfront for October, November & December 2023. We’ve got a whole lot of quality of life improvements, some great minor features and have been busy squashing bugs!

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks. Shopfront has a feature freeze over the Christmas and New Year period which has lead to the delay in release to some of these features.

Minor Features

  • Improved the readability of calendar dates when in dark mode,
  • Prevented sales from being parked which have a loyalty redemption on them,
  • A4 receipts can now be created from templates instead of starting with a blank page,
  • Last stocktaked report has been changed to an inclusive date period,
  • Improved the design throughout stock management when in dark mode,
  • Refunds can now be split between payment methods,
  • Classification assign page can now only be used when not synchronising to prevent missed items,
  • Improved the error messages shown when importing a product CSV file,
  • Improved the time it takes to close a register,
  • Extended the timeout to generate PDF files for huge files (300+ pages),
  • Exporting the external stocktaker product list now uses the cost for the Outlet you’re currently in, instead of the Global cost,
  • Exporting the external stocktaker product list now has additional columns for stores on average cost calculation mode,
  • Performing a partial stocktake will now provide a further warning when nothing is selected on the categories page,
  • The recent sales graph for the reporting dashboard is now faster when used with a huge amount of sales,
  • Deciding whether a stocktake is full or partial has now been moved to the final step instead of when you’re creating a stocktake,
  • Stores on the basic plan can now view the default permissions (but still cannot edit or create new roles),
  • Added additional potential variance detection to advanced stocktaking for detecting deleted products,
  • Improved the matching of existing supplier codes when suppliers are merged together,
  • Manage cash can have a list of predefined reasons why the cash is being added or removed from the register,
  • Added new inventory movement special report,
  • Adjusted the mixed mode calculation along with multiple Outlets with global costs enabled to use the stock of all Outlets instead of just the current Outlet,
  • Inventory log now shows external stocktake imports as the correct event instead of miscellaneous change,
  • [Developer] Added documentation for the integration revoked webhook,
  • [Developer] Added additional documentation for finding suppliers when creating orders,
  • [Developer] Added documentation for merging customers,
  • [Developer] Increased rate limits for all applications,
  • [IBA Scan v2.5] Improved handling of IBA outages,
  • [IBA Scan v2.5] Base URLs can now be customised,
  • [ILR] Promotions are now available for stores with the Liquor Banner Group Integrations add on,
  • [Xero] Reference field is now customisable,
  • [Xero] Credits, returns and transfers can now be resent to Xero

Bug Fixes

  • Register closure payment subtypes are correctly split between registers and showing the right values for all subtypes,
  • Prevented failed uploads when a sale key is pressed of a product which no longer exists in your store,
  • Prevented deleted families still requesting to align prices when a product is saved,
  • Customer payments with multiple sales that contain three decimal place products correctly round the values to avoid floating point issues preventing the sales from being fully paid off,
  • Expired gift cards no longer count as active when managing your subscription,
  • Performing a safe drop from the manage cash page prints the same values as if it was printed from the sell screen,
  • Database is no longer blocked when attempting to clear local data,
  • Having a huge number of customers (25,000+) no longer causes a background worker to fail when the search cache save location is set to local database,
  • Docket printing for No Tag works as expected when a printer is specified that is already in use,
  • Discounting a product on a sale, parking it, restoring the parked sale and then discounting the item further using a percentage discount now uses the product’s base price instead of the previously discounted price,
  • Registers no longer have incorrect takings when a synchronisation fails after forcing a synchronisation,
  • The approved label appears as expected on the customer display for integrated payment methods,
  • Prevented products with a case quantity of zero (only possible from converted data) causing a failed upload when they’re sold,
  • Rebates are calculated instantly instead of having to wait for any outstanding synchronisation to apply them to the cost of a product (when viewing live profit in the register),
  • Whilst not recommended, changing browsers while using the same register will be less likely to have issues with expected totals on the close register screen,
  • Reloading a parked sale with a family product on it, unlocking the price, then adding an additional family product to the sale correctly shows the family colour,
  • CSV files that start with unprintable characters no longer fail to import,
  • Basket products can no longer be infinitely recursive (contain themselves through an intermediary),
  • Discounting and then quickly and dramatically adjusting the quantity of a product when using Windows no longer occasionally calculates incorrectly,
  • Importing a large number (4,000+) of customers from a CSV file now works as expected instead of importing none at all,
  • The sell screen is now always accessible if you’re offline even if you’ve never been to it before (but have been to another page while online),
  • Closing the register no longer attempts to calculate data that is older than 7 days,
  • Prevented tags from duplicating when loading maximum shelf prices,
  • Audio now only attempts to load after you’ve interacted with Shopfront, preventing a slow down with specific audio drivers,
  • A4 receipts no longer print Focus has been lost when the setting is enabled,
  • Taking over a register and then going offline no longer infinitely kicks out the other devices and prevents Shopfront from being used on the ones that previously used the register,
  • Promotion tickets fields now consistently round to two decimal places when expected,
  • [Developer] Creating an account no longer shows a failure screen when account creation was successful,
  • [IBA eCommerce] Randomised the order of retrieval of current invoices to ensure all stores can receive invoices over time, even if IBA is responding slowly,
  • [IBA eCommerce] Invoices that contain an out of stock product no longer result in the order failing to be created in Shopfront,
  • [IBA Scan v2.5] MSC applied to categories correctly sends through in all cases to IBA,
  • [IBA Scan v2.5] Request quantity products with decimal places are now correctly sent to IBA,
  • [Xero] Prevented resending of orders appearing as successful when there is no mapping specified,
  • [Zen Global] You’ll no longer see the toast for retrieving the surcharge product when not logged in, it’s now handled automatically in the background

New on Shopfront: July, August & September 2023

Welcome to what’s new on Shopfront for July, August & September 2023. We’ve got some great new features to help you with ordering / invoicing and a healthy dose of minor features and bug fixes.

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks

Major Features

Order Reviews

Want to implement a staged approach to sending orders and receiving invoices? Shopfront now lets you create an order, invoice, return or credit note and mark it for review from other users, allowing them to comment, add attachments, track changes for the order and approve or decline the order.

We also have a number of options to automatically create reviews (such as when there is a discrepancy in the total of an invoice) and to enforce features (such as a minimum number of approvals before a review can be completed).

Order reviews are currently only available to stores using the premium plan.

Attachments for Orders

We’ve just added the ability to upload an attachment to an order! Keep all your order forms, invoices and correspondence relating to an order in one place by uploading it all into Shopfront.

There is currently no limit (other than file size) for the amount of attachments for an order and there is currently no limit to the amount of time attachments are stored on Shopfront.

Maximum Stock on Hand

Ever wanted to ensure you don’t have more stock on hand for a specific product than what can fit on the shelf? With the new maximum stock on hand feature Shopfront will now warn you when the quantity you’re attempting to order breaches the maximum value set in the product edit page and contextually show you when maximums may be exceeded.

Shopfront will also intelligently reduce the suggested amount of stock to order to not exceed the amount provided.

Minor Features

  • Improved the styling when in dark mode in a number of locations,
  • Adjusted styling when your Vendor has expired which makes it clearer on how to adjust your payment details,
  • Receipts can now have customisable padding around the entire receipt,
  • Future costs can now be created (similar to future prices),
  • Added confirmation when deleting and applying future sell prices,
  • Temporary products can now be associated with existing products on an invoice without overriding the current supplier code,
  • Prevented parking of sales which contain an integrated product or custom payment methods,
  • Added support for merging tax rates with identical rates,
  • Payment methods can now be broken down by subtype (e.g. Visa, Mastercard, etc) in reports and on register closures when using an integrated payment method,
  • Added additional troubleshooting steps for when the sale keys can’t be displayed,
  • Receipts can now show gift card details and balances of any gift card on the sale when a sale is completed,
  • Significantly improved the speed of the external stocktake import,
  • A declined payment will now display a retry dialog allowing you to attempt the same payment again without having to enter the details (such as amount and cashout) back in,
  • Credit notes now display in the product purchase history page,
  • Credit notes and returns now display on the supplier purchase history page,
  • Significantly improved the speed of customer payment screen, now allowing you to process customer payments with thousands of outstanding sales,
  • [Zen Global] Additional validation has been added when creating new customers,
  • [Developer] Frame dialogs can now be scaled to their content instead of taking up 70% of the screen

Bug Fixes

  • Opening an emailed order in Microsoft Outlook now longer displays duplicate data,
  • Promotions on the sell screen will now be automatically applied when modified from a different device and when using the dedicated thread for promotions after the next synchronisation (instead of leaving the page and returning to it),
  • Significantly reduced “jumpiness” when scrolling through an order,
  • Deleting a receipt no longer results in an error being displayed,
  • Discounting a product on a reloaded cancelled sale now bases the discount off the normal sell price,
  • Device names now send to the security centre when the device returns from being offline,
  • Opening a saved product revision history report with filters applied now correctly displays,
  • Emails for saved product revision history reports now work as expected,
  • The last cost displayed when viewing details for a product on an order when running with global costs is now the last cost instead of the average cost,
  • Viewing the media centre with a large number of images (thousands) no longer slows down all other pages until page refresh,
  • Prevented a crash on the order edit page when editing a recently created a temporary product and assigning it to a family,
  • The gift card import from CSV no longer displays the current and original amounts in the opposite columns when previewing the data,
  • Purchase history for products no longer fails to load if the 20 most recent orders all haven’t been received,
  • Integration marketplace long descriptions now correctly scale the dialog box,
  • Prevented sell screen finalise input box from expanding when entering amounts in,
  • Fixed percentage calculations when running MSC reports,
  • Scanning a product on a stocktake no longer results in a failed upload when logged in as the offline user,
  • Register closures no longer fail to upload when they contain a deleted payment method,
  • Cancelling a sale with rounding no longer adjusts the amount owing of an account customer,
  • Cost of goods sold now correctly calculates when running a MSC report,
  • [ILG] The integration button on orders sent to ILG now appears when you’re in global mode,
  • [Developer] Improved the speed of the application history by adding pagination and moving logging to a separate database

New on Shopfront: April, May & June 2023

Welcome to what’s new on Shopfront for April, May & June 2023. It’s a very special edition as we’re celebrating seven years since Shopfront started development and do we have a packed blog for you!

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks

Upcoming Features

To celebrate our 7th birthday, we’d like to give you a preview of some upcoming major features (and a new product) that our team is hard at work on!

Shopview

Shopview is a brand new product from Shopfront which allows owners who have multiple stores to manage and share data between them with ease. Create a master file to manage products externally from Shopfront, develop your own banner group style promotions, run reports across all of your stores (and all of your data), manage gift cards and more.

Whilst pricing and features aren’t finalised yet, Shopview will soon be entering into alpha testing for with a number of stores.

More details will be released shortly after live testing!

Product Merge

You’ve asked and we’ve listened, start merging those duplicate products! Currently in beta to a number of stores, this works similarly to our customer and supplier merge.

Simply select the products you would like to merge together, select the specific details you want to keep from each and build your new product on the left-hand side. This will then transfer all sales, purchases and more into the new product.

New Ticketing System

Since inception, Shopfront has been exporting ticket files in DBF, CSV and XML formats using hardware connect which could then be used along with DesignPro or a mail merge program to design your tickets.

Shortly, Shopfront will be releasing a brand-new ticketing system, which will come with a number of prebuilt templates and the ability to build your own.

Not only will this allow you to export and print tickets without having to leave Shopfront, but it brings a new range of features and functionality previously not possible (transforming and displaying attributes not exported, tracking templates by product, printing multiple different templates on the same page and more).

It’s currently undergoing development and testing within Shopfront and we’re aiming to release an alpha version to a number of stores by the end of the year.

Major Features

Receipts as Attachments

This highly requested feature finally arrives in Shopfront! You can now specify multiple attachments to email to a customer, including other receipts!

It’s all powered by our receipt template engine, simply create an email receipt that you want to use as the body of the email, including whatever details you’d like (which can include information on the sale, just like previously), then create however many A4 receipt templates you desire as attachments (for example, you might want to attach a normal A4 receipt, plus another receipt template that contains the terms of sale).

Once everything has been created, simply configure the email receipt from the Receipt List or by pressing the cog when editing the email receipt and add your attachments in.

Attachment names can even include dynamic fields from the current sale.

Minor Features

  • Improved the speed of the synchronisation by reducing the number of images cached on each sync,
  • Multiple lines of the same product from a Vendor Connect order / transfer now automatically consolidate,
  • Improved the speed of closing the register when using holiday surcharging,
  • Load speed of sales history improved when sale timestamps are close to each other,
  • Parking a sale with a payment method will now warn you about potential balancing issues,
  • Reworked the help dialog to support multiple sources displaying at the same time,
  • Improved the speed of adding products and payments to the sale as well as the speed of completing a sale,
  • The menu no longer requires a the synchronisation to fully complete before displaying menu items,
  • Added the ability to specify dark mode on a user instead of only on the register,
  • Added the ability to toggle the dark mode setting from the user’s menu,
  • Significantly improved the speed of the synchronisation by no longer attempting to sync data when we know there is no data to download from a previous page and rewriting internal data structures,
  • Renaming an additional field no longer requires a full synchronisation to update everywhere,
  • Added default customer display template when creating a new customer display,
  • The discount box automatically gets removed when the last product is removed from the sale,
  • Grouped Inventory at Date reports can hide / show products within each group,
  • Importing gift cards from CSV can now have expiry specified,
  • Reworked the design of the PDF for emailed orders,
  • Added event filtering to the security centre,
  • Added a new setting to assist in preventing a user from selling a product below cost,
  • Added ability to predefine reasons as to why a product has been discounted,
  • [Zen Global] Added a new sale key to create a customer,
  • [Zen Global] Added column in search for the customer’s card number,
  • [Zen Global] Redesigned the create customer form,
  • [Zen Global] Selecting the customer’s name once added to the sale displays the customer update form,
  • [Zen Global] Included additional information when receiving an error from the Zen Global API,
  • [Zen Global] Added button to validate OnTap Data credentials,
  • [Developer] New mutation createOrderByMatch that allows you to send invoice details without having to know the product IDs before attempting to the create the order,
  • [Developer] New stores can now be programmatically onboarded and authenticated,
  • [Developer] Webhooks can be seen and activated / deactivated through Shopfront’s UI (through the integrations page),
  • [Developer] Added integration free URL parameter to assist with debugging applications embedded into Shopfront’s UI

Bug Fixes

  • Prevented the global login from redirecting to the store’s local login page,
  • Orders sent via email no longer appear with the from address as Shopfront, your Outlet’s name will appear instead,
  • Prevented the register from being able to open multiple times if the first attempt to open the register was unsuccessful (such as when you’re offline),
  • Improved handling of unprintable characters when importing CSV files,
  • Fixed touch number lines appearing outside the bounds of the touch numbers when Chrome’s zoom is set higher than 100%,
  • Parking a sale with a sold gift card multiple times no longer results in a failed upload,
  • Specifying price_qty_x before price_inc_x when using the advanced product importer now imports with the correct amount of tax applied to the sell prices of the products imported,
  • Specifying barcode_qty before barcode_code when using the advanced product importer correctly creates the barcode,
  • Prevented updates from automatically locking the database when an integrated EFTPOS sale occurs and your Shopfront version is out of date,
  • Saving a customer group that contains a large number of customers (30,000+) now takes significantly less time,
  • Products which request price now correctly accrue loyalty points,
  • Unparking a register on a different device than the one it was parked on within the same register closure no longer creates a discrepancy when closing the register,
  • Reloading a sale which contains a deleted product now displays a warning and no longer causes a promotion calculation error,
  • Prevented the user from adding an EFTPOS refund item to the sale with the price of $0,
  • Exporting advanced stocktakes to PDF no longer display blank white pages,
  • Creating a promotion for a single-outlet Vendor while in global mode no longer prevents that promotion from activating,
  • Specifying “0” when importing an external stocktaker’s CSV file as the barcode will no longer provide the “Barcode not specified” error on completion

New on Shopfront: February & March 2023

Welcome to what’s new on Shopfront for February & March 2023. We’ve got a number of quality of life improvements and nice bug fixes over the last couple of months.

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks

Minor Features

  • Added ability to apply a surcharge schedule to multiple registers at the same time,
  • The username field now automatically clears if an incorrect username is provided and require password is disabled,
  • Masked usernames and passwords can now be temporarily revealed when typing by pressing the new unmask icon,
  • External stocktakes now display if multiple products match to a line and allow you to switch the product that should be stocktaked,
  • Improved search indexing to be faster and use less resources by being incremental instead of fully recalculating the index each time,
  • Existing invoice number check for new orders now checks existing open and sent invoices instead of just received invoices,
  • Added setting to provide a reason when manually opening the cash drawer,
  • [IBA Loyalty] Added support for My Bottle-O Rewards,
  • [IBA Loyalty] Improved how error messages display when performing payments,
  • [Shop MyLocal / IBA E-Commerce] Added support for out-of-stock / not picked products,
  • [Xero] View each request the Xero app makes with a new request logs area in the settings

Bug Fixes

  • Fixed labels not appearing for the security centre pie graph,
  • Public notes for orders now appear in the email body for all supplier email format types,
  • Reporting dashboard no longer shows unable to render message when there is no data, instead a nicer message is displayed,
  • Stop the leaving confirmation prompt from appearing after saving modified sale keys,
  • Precision reports on the user dashboard now show data,
  • Applying an advanced stocktake no longer requires a force sync if you want product inventory levels updated instantly on local devices,
  • Logging in from the global login no longer requires a second login for your Vendor,
  • Fixed inventory log showing all changes as items,
  • Express promotions now correctly display profit percentage instead of being hidden on some releases,
  • Removing products in the middle of an order list now shows the correct case quantity,
  • Stripped emoji out of names when sending orders via email,
  • Loyalty earn and redemption rates now get correctly updated when use dedicated price calculation worker setting is disabled,
  • Prevented the location selector being stuck in a loop when clearing site data,
  • Prevented adding two decimal places to the expected invoice total field which then prevented the order from saving,
  • Fixed all subsequent products being removed from the sale until the page is refreshed after setting a product’s quantity to zero using the touch numbers,
  • [Developer] Pressing the back button when first going to the documentation now leads back to the homepage,
  • [ILG] Integration buttons on an order is not always visible on page refresh,
  • [Xero] Send COGS inclusive of tax toggle is remembered when returning to the settings page

New on Shopfront: January 2023

Welcome to what’s new on Shopfront for January 2023 (and December 2022). We’ve got quite a number of changes that were held back in the last couple of months until the festive season was finished and they’re now available!

Note: Some of these changes are gradually rolling out to stores, some of the changes may not be received in your store for a couple of weeks

Major Features

New Account & Billing UI

As the new year comes in, so does a new UI, the Account & Billing section has had a redesign to be easier and clearer to use.

The new UI allows for the update of payment details separate to the update of plans, makes it easier to define the registers & outlets you’re using and provides additional information on features available on each plan (and why you might not be able to downgrade).

We’ve also added the ability for you to put your Shopfront account “on ice” for when you don’t need active access to Shopfront, but you do need your data to remain on Shopfront’s servers and not be deleted.

Fulfilment API

We’ve also released our brand new Fulfilment API. For developers this provides an easy way for their integrations to inject orders into Shopfront for picking, packing and collecting. For users it provides consistency and an easy flow no matter where the orders come from.

If you’re using an integration that has implemented the Fulfilment API, you’ll now see a new tab at the bottom of the sell screen called Fulfilment, by when you receive an order you’ll get a notification and all existing orders can be found there, simply press the order you want and then follow the prompts to process the order.

If you’re a developer and want to know how to start using this, check out our how-to guide in the developer documentation.

Minor Features

  • Integration view model now has a cross in the top right to close the dialog,
  • Minor styling changes to location selector to be cleaner and improve usability,
  • Returns now appear in the purchase history on the product view page,
  • Surcharging schedules now default to using your default tax rate,
  • Surcharging schedules no longer require a page refresh to activate / deactivate the surcharge if it has been modified for the current time,
  • We now inform you when your computer’s time is significantly different to our server’s current time,
    • If your computer has the incorrect time it can lead to your register closure not balancing
  • Additional information safe names can no longer start with a number,
  • Cleaned up the express stocktake page when scanning products with a case quantity of one,
  • Improved usability of location selector,
  • Associating a product on an external stocktake now shows the status of products when searching,
  • Improved the visibility of order references in the sales history,
  • Prevented changing the type of additional information fields after they have been declared to prevent data loss,
  • Added setting to specify how the customer display should be opened (using a kiosk window – default, or using a popup),
  • Adjusted routing to allow stores to find the UUID of the outlet currently being edited through the Registers & Outlets page,
  • Additional information can now be viewed from the product details panel on the sell screen,
  • A warning now appears when you attempt to delete a product which is on a promotion,
  • Selecting keys in the product history revision report no longer closes the select options allowing you to select multiple keys easily,
  • Pressing the product’s image on the product details in the sell screen displays a larger image,
  • Improved usability for the touch numbers when zooming in or using high DPI displays,
  • Product revision history report now ignores temporary products,
  • If a line on an external stocktake matches multiple products you’re now able to see the all of the products it matches to,
  • Added ability to create products (instead of just associate them) when scanning a not found barcode on the order edit page,
  • Products now request price when they have no price points set instead of defaulting to $0,
  • [IBA] Added support for Super Store promotions,
  • [ILG] Cleaned up settings terminology,
  • [Hump Club] The customer’s member / mobile number is now displayed while active for the sale,
  • [Top Drops] Prevented the integration from losing access when not used for more than two weeks,
  • [Xero] Supplier invoices now have the option to be sent to Xero as either Authorized (default) or Draft,
  • [Developer] New GraphQL route to view sold & redeemed gift card movements over a period,
  • [Developer] Minor styling changes to improve usability

Bug Fixes

  • Sync no longer ignores upload queue if the queue takes longer than 10 seconds to process, leading to incorrect register closures for huge amount of offline data uploads,
  • Prevented a force sync from being required when the first sync in the sync workers lifecycle fails,
  • Viewing statements in dark mode no longer display black boxes in a number of locations,
  • Selecting a quick menu option when a blocker (are you sure you wish to leave message) is in place no longer prevents you from leaving the page,
  • Fixed touch numbers not working seemingly randomly due to invalid random ID on display,
  • Fixed virtual list scrolling in a number of locations,
  • Adding a customer to the sale while an integration frame is open no longer crashes the sell screen UI,
  • Product wizard no longer caches prices from previous creations leading to incorrect prices being created for a product when multiple products are created in a row (may require your product page rules to be reset),
  • Adding the sale table to the customer display idle screen no longer crashes the customer display,
  • Printing A4 reports no longer crashes the page on Canary stores,
  • Statements that contain both current and overdue amount without using statement periods show a line between the current and the overdue invoices,
  • Changing the case quantity from one to another amount and only having a single Outlet no longer results in the cost field appearing with the incorrect amount,
  • Pressing the close customer display button now correctly closes the customer display,
  • Removed the grouping checkbox when there was no group selected in everyday tickets,
  • Forced the user to wait until all of the tickets have loaded when selecting a group in everyday tickets,
  • Prevented an error when running sales reports if case text setting is set to a number,
  • Refreshing the advanced product import no longer loses styling,
  • Cancelling a sale / removing the last product no longer shows the last previously successful sale on the customer display,
  • Sales keys can now be saved when a key exists that was created by a revoked integration,
  • Changing the sale name of an additional information field no longer removes all of the data stored for that field,
  • Placeholders on the receipt template edit page are now visible for the Total Items and Normal Price fields,
  • Promotions which contain a deleted product no longer crash,
  • Reduced the number of page renders across the POS system,
  • Assigning tags to products through the assignment page correctly assigns the tag instead of only updating the local database,
  • Performing a sale while offline with a customer created while offline no longer results in a failed upload,
  • Clicking on the month of the date picker no longer automatically closes the calendar and instead displays the month picker,
  • Searching for actions in the sale key edit page have the correct height when the options are over multiple lines,
  • Receipts that contain deleted users no longer show the user’s name as “Shopfront” but instead as the user’s name,
  • Improved parsing of tags in the product revision history,
  • Prevented an API user from being the last administrator user, at least one user with credentials is required to be an administrator (no role),
  • When duplicate barcodes are found when scanning a product in the sell screen, you’re now presented with a dialog to select which one is correct instead presuming a single is correct,
  • Prevented an error when viewing an invoice in the Accounts & Billing section which was no generated from Shopfront,
  • Public notes now appear in the email body by default when sending an order when the format is not inline,
  • [ALM] Order confirmation log is no longer missing gridlines,
  • [ALM] Credit notes no longer attempt to send to ALM via i-orders,
  • [ALM] Wait for ALM message is no longer displayed if you’ve sent an order and don’t have sending via i-orders enabled,
  • [ILG] Errors after sending an order no longer show all previous errors in the log,
  • [ILG] Invalid supplier codes (less than 7 digits) now show the correct error message when sending orders,
  • [Developer] Fixed numerous broken hyperlinks in documentation,
  • [Developer] Adding columns in the middle of a table through the embedded API no longer results in a rendering error,
  • [Developer] Improved TypeScript typings of Embedded API bridge,
  • [Developer] Pressing the back button when going from the home page to the documentation page for the developer documentation no longer prevents you from using the back button in the browser