What’s New in Artisan POS 4.8

Discover the latest version of Artisan – version 4.8.

Artisan 4.8 introduces many sought-after features, from cash drops, cash discounts and dual pricing, BigCommerce integration, and more. 

Contact us at sales@certek.com or (877) 723-7835 to upgrade!

To see a breakdown of all the maintenance updates and fixes, head over to our Change Log. Detailed articles with instructions for each Key Feature are coming soon.

Key Features

Cash Management: Support for Cash Drops and More

Artisan 4.8 introduces Cash Management features, including cash drops. Some businesses transfer money to a secure area, like a safe, at the end of each day. Because of this, they don’t always start the day with the same amount in the cash drawer. This procedure, called a Cash Drop, is supported in version 4.8. In addition to other useful configurations, Artisan can also remind Users to do a Cash Drop once the amount in the drawer reaches the Cash Drawer Limit. 

Make Starting Cash Persistent

Artisan can keep track of how much the User is leaving in the drawer at the end of the day and use that amount as the next day’s starting value. Artisan will ask the User to count out the money in the drawer at the start of the next day and enter that amount into the program. It will check against the amount entered the night before, and will use this amount as the starting cash.

Blind Cash Counting

This optional feature is tied to the Cash Counter. With this enabled, the User will not know how much money to expect in the drawer. This is a good security feature, as it does not tell the User how much they’re off by, if anything. You may optionally set a number of attempts until the Cash Counter closes out.

Cash Discounts and Dual Pricing

While Artisan will continue to maintain traditional payment processing models, version 4.8 introduces cash discounts and dual pricing capabilities. This feature helps merchants directly recoup processing fees from customers while adding a layer of transparency for shoppers.

Merchants raise the regular posted price for their items and give customers a discount for using cash (or another payment type, if necessary, like writing a check). With this configured in Artisan, the consumer will receive a certain set discount on the order for choosing this payment type. Dual pricing works by clearly stating to the customer, on signage in the store, on receipts, and customer-facing displays, the price difference between paying in cash versus paying with a different payment type (ex. their credit card).

Support for BigCommerce ISI

Artisan is adding BigCommerce to its list of supported Internet Store Interfaces. BigCommerce is a leading webstore builder and was highly requested due to its ease of use and popularity.

New Payment Processing with TRX Integration

4.8 introduces a new solution for payment processing — TRX Payments, using Verifone Engage PIN Pads. TRX is DCI-PSS compliant. Merchants can also receive in-depth reports, from interchange reports to sales reports in TRX’s convenient online portal. 

All card types go through a single generic “Credit Card” payment type button in Artisan, and then Debit and EBT are detected in the PIN Pad.

Non-EMV Payment Processing No Longer Supported

BridgePay, T-Gate Gateway, Paygistix Gateway, Innovo Gateway, and other non-EMV payment processing are not supported in 4.8.

Cancel Payment Processing from Artisan

In addition to the Cancel button on the PIN Pad, 4.8 includes a “Cancel” button on the payment processing screen so the cashier can cancel the transaction in Artisan. Note that some, but not all payment processing methods allow a transaction to be canceled. 

Improved Handling of Datacap Cancel/Timeout

If a card has not been entered after a certain amount of time, the PIN Pad will time out and Artisan will cancel the transaction.

Delivery Fee Tax

In 4.8, when orders are placed to ship to a certain state that has implemented a delivery fee, that fee is automatically included on the order. The fee is distinguished as a line item on the receipt and listed in Sales Tax reports. For example, Colorado recently implemented a 27-cent delivery tax for orders entering the state, so any orders with the “Ship To” as Colorado will have that fee applied. 

Destination-Based Tax

Destination Based Tax now includes per-state settings for Origin-Based vs. Destination Based, Rounding Mode, and Shipping Taxability (Taxable, Non-Taxable, or Non-Sales) settings. Also includes a new Lookup Method, which can be manual, as before, or “Zip Code” to automatically use the Zip/Postal Code from the shipping address as the Tax Location Code.

Mark Up Processing

This is a new choice for Customer Types, and can be used to help offset pricing for service sites like Drizly and Bottlecapps that take a percentage of the sales price.

Add UPC as an Item Code (SKU) Numbering Scheme

With this option enabled, after scanning a UPC into the item search and selecting “Add a New Record,” the record’s Item Code will populate with the UPC code that was just scanned.

Open Specific Quick-Pick Category on the Sales Screen

With this enabled, Artisan will automatically open a specific product category when the Quick-Pick is selected, or even once the Sales Screen is launched (if you have “Automatic Quick-Pick Mode” enabled). Simply choose which category you want to start out with in “Configuration Options.”

Tag Printing By Site QOH

With this option enabled, you can choose to print labels based on the site’s QOH (only done from the current site). For example, if you’re at Site 02 and this location has 5 green t-shirts in stock, you can print those labels based on that site’s QOH. 

CC Emails in Artisan

Artisan now lets you CC emails, instead of being limited to just one recipient. This is useful for sending reports, purchase orders, and other documentation from Artisan.

Report Designer Enhancements

4.8 also introduces the following improvements to the Report Designer:

  • Extend translate() to also support name translation of parameter values, by passing in the full class name of the parameter’s type instead of a database table-dot column. Add explode(), to “explode a string” by inserting spaces between each character.
  • “SQL Query Text” always prompts for parameters (but preserves current values as defaults).
  • Only show the “Replace Field Source” help dialog once per Designer session.
  • Change the default data format for Report Date fields to be long+long instead of long+full, because “full” time format in later versions of Java is *too* verbose (w/time zone spelled out).

Improvements to the Best Sellers Report

The Best Sellers Report, SAL-052, now has the Category Rollup feature, Variant Group filter, Group by Vendor P/N, Group Percent, and Total Percent. Several layout and wording improvements are added as well.

Vendor Custom Fields

Vendor records now have Custom Fields 1-9. The labels for these fields are found in “Sales Screen Options,” “Vendor Screen Options” within the “Program Options” screen.

Change Log

Last updated 5/30/2023


  • QB Export/Cash On Hand: Continue the 4.8 Cash Management implementation. Use the Cash Deposit amount entered into the Ending Cash Counter to determine the exported deposit (or Undeposited Funds) amount for Cash. Account for any difference between this and the Cash Receipts using a new Cash On Hand account.  During upgrades (and migrations), create Cash Deposit transactions for all past Day-Ends. Allow negative Cash Deposits. 
  • Import Enhancements: Enhance mapping files (.map) to allow an import source field to be mapped to multiple target record fields, and to perform regular-expression replacements on the imported values. Enhance Product Variant Items import to allow suffixes to be imported directly, or mapped from value names using built-in replacements for common colors, sizes, and units. Derive Attribute Names from Value Names if not provided explicitly. Skip over empty attributes (w/o Value Names), to allow for input that has specific attributes in specific fields; for example, Color and Size, where Color is optional.
  • Expand the list of default variant suffixes (used when creating variant templates manually) to match the new list of default replacements for imports.


  • Fix an inventory recording issue with a rare case of replacing one line on a delivered sale with another using the same item.
  • Fix Video Pole Display usability issues: Close window when Pole Display is disabled. After successful test, prompt to enable it. Fix screen layout issues, especially during 1st part of the test (numbered lines).
  • FIN-214: Added an Ending Date to the A/R Aging Report and used the Due Date instead of the Transact Date plus some other general improvements.
  • POS-14328: Implement BigCommerce Rate Limiting.


  • FIX QB export of A/R transactions.
  • POS-14336: Avoid some possible closed-session errors in Sale Screens when returning from other screens, especially when selecting a customer.
  • POS-14333: Let user choose screen for Video Pole Display.
  • Fix CUS-231, Sales Per Zip Code, to not add 1 to threshold.
  • Fix so refresh in report viewer keeps current parameter values in all cases. Some parameters were not being preserved correctly, especially inner “embedded” panels (purchase criteria and dates added) for customer power search filter parameters. 


  • Sale Screen: Disable “Delete Tender” button when sale doesn’t use tenders (such as a previously-saved layaway/order).
  • Some progress dialogs wrongly allowed Cancel.
  • Fix 4.8.03 upgrade step.
  • Add missing 4.8.22 upgrade step.


  • Fix SQL errors with date fields in A/R statements and any reports with dates specified in customer power search filter parameters.
  • Fine-tune the layout of report parameter prompting panes so SAL-052, for example, fits in Standard Size w/o a horizontal scrollbar. In general, fit the Item Power Search in better by replacing “Include Out-Of-Stock Inventory” with “Include Out-Of-Stock Items”. Date range parameter prompts are now laid out vertically.


  • Migration fixes and performance improvements.
  • WooCommerce authentication deprecated. Use WordPress user name & “application password”, and put ‘-‘ in Store user & p/w.
  • Fix missing Cash Activity Audit Logs.
  • Fix error doing Cash Drop w/Shifts disabled.
  • Tighten up Starting Cash Counter triggers.
  • POS-14296: Fix various session management problems while syncing changes to category price levels, including “Secondary record for save is not in session: CategoryPriceLevel”.
  • POS-14320: Fix null pointer w/new customer type.


  • Fix migration error changing immutable attribute “baseItem.”
  • Don’t show payment prices on deposits/payments.
  • Fix so deleting tender re-checks price level.
  • POS-14324: Must pay LAY/ORD in full for cash price.
  • Don’t allow a PO to be saved w/vendor NONE.
  • POS-14224: Fix proxy error deleting vendor from PO screen.
  • Fix migration of text fields with >32,600 characters.
  • POS-14297: Change the transaction date (and sale date) for voided ABTs and other future-dated sales to be the void date, not the other way around.


  • POS-14323: Upgrade to AWS SDK 1.12.464 & Jackson 2.15.0.
  • Fix custom field options in task settings.
  • Fix an error opening sale screens when more than one Payment Price Rule has been defined.


  • POS-14321: Fix insert of kits & variants on PO
  • POS-14316: Fix sort by Available Online


  • Fix SAL-075 to exclude scheduled ABTs.
  • Add ITEM-SSL-2X1-DUAL Dual-Price Label.
  • Prevent clipped italic “null choice” strings in combo boxes, caused by a Java bug in width calculation when list values have different fonts.
  • Print receipts in Sample Data w/o confirmation when est to Preview or Print to File, but append “_SAMPLE” to all Print To File filenames in Sample Data. Change default configuration for new Sample Data to preview Sales Slips and Cash Counter forms in Receipt Printer format. 
  • (You can still disable the Sample Data receipt confirmation entirely, by setting environment variable “printInSample” to “Y”.)
  • Show Processing Fee Account setting even when disabled.
  • Make Rounding Mode for Payment Type Processing Fees configurable. Add additional rounding modes for Sales Tax rounding. Both of these now support: Up, Down, Half Up, Half Down, Half Even.
  • POS-14240: Purchasing Reports Improvements:
    • Add PUR-201, Vendor Invoice Report.
    • Remove menu entries for unimplemented “Purchase Reorder Report”.
    • Rename SAL-156, Item Reorder Report, to PUR-156, since it’s in the Purchasing report group, and fix it to work in Sample Data.
    • Add Reorder Levels and Request Reason to PUR-005, Purchase Request Report.
    • Other formatting refinements and fixes for these reports.
  • POS-14298: Add a default setting for Kit Component Visibility to the Inventory Defaults configuration settings.
  • When creating new Sample Data, the “Integrated Processing” profile (not initially selected) now defaults to “Fale” processing in automatic approval mode.
  • Display progress after 1 sec even if still at zero.
  • POS-10202: Add a “Mod” flag to the ETC-061, Employee Time Clock Detail, report, to show when a time clock entry has been modified (by a manager).
  • POS-14287: Stay on Sale Screen after void, discard or escape (unless sale is completely blank). “Close Screen”, on the other hand, always closes the screen.
  • Show progress bar when printing large label batch.
  • POS-14201: Do “smart” Item scanning (checking for UPC, Barcode, etc. if not found by Item Code(, like we do on Item Record lists (and the Sale Screen), on these screens: Inventory Counting, Inventory Transfers, Pending Transfers.
  • POS-10193: Add a “Default PO Discount” to the Vendor “Account Number & Terms” tab. Used on PO as default when user chooses the discount operation. If non-zero and PO is finalized w/o any discount, it will ask if you want to apply the default discount.
  • POS-14113: Clear Reorder Levels when an Item’s Availability is changed to Discontinued, Clearance, Closeout, or Non-Stock.
  • POS-14213: When changing Category in a new Item Record, and Vendor is still unset, if the Category is a Service, Fee, Coupon, or Non-Sales class, set Vendor to NONE.
  • POS-14283: Enhance Customer Types (Price Levels) to allow mark *ups* from another Price Level. This extends the existing ability to choose Mark Up or Mark Down at the Category Level.
  • POS-14219: Shopify order downloads: Use the tracking company (e.g. “USPS) as the Shipping Method, if no specific shipping method is specified.
  • WooCommerce: Download line-item discounts.
  • Allow Cash Back, subject to Debit Cash Back Limit, for Credit Card payment types (if Debit is enabled). This is mainly for Debit Cards run as Credit (w/o PIN).
  • POS-14093: Add “Additional Fees & Taxes” in the Sales Tax Settings, to allow fixed-price or percentage fee items to be added to every sale with any sales items that also meets optional specified conditions. Conditions include Taxable Sales Only and matching a particular Tax Scope (for out-of-state shipping).
  • Origin-Based Tax Scopes use the regular Tax Types, rather than being treated as out-of-state exemptions. Shopping Taxability for states w/o Tax Scopes is (as before) determined by the Category Record of the shipping item (typically “SHIP”, which for the new data now defaults to being a taxable service). The “SHIP” item is now configured as the Shipping Item by default, when creating new data.
  • ISI: Preserve (but ignore) In-Store Reserve when Internet Store is disabled. Fix so related fields on the Inventory Details tab, including quantity “Available Online”, are updated whenever relevant changes are made.
  • Show EBT Voucher Number on Payment Log Record Screen, if used.
  • POS-13828, POS-13521: Finish new cancel/Timeout model for Payment Processing.
  • PayProc: Implement new Cancel/Timeout model for Payment Processing. The Timeout setting is now just a Connection Timeout; all data is reset to the new default of 5 seconds. This is how long Artisan waits to connect to the Payment Processing service, application, or PIN Pad. If this timeout is reached, the transaction is canceled before it has been sent. After that, Artisan waits until it receives a successful response or an explicit error, or the new Cancel button on the screen is pressed. If supported by the Processing Method, Cancel will be rejected if the transaction has already been sent for processing; otherwise, Aritsan will attempt to determine the state of the transaction, if supported by the Processing Method. If the state of the transaction cannot be determined, Artisan will inform the clerk that it may or may not have been processed.
  • In general, allow the Cancel button on the progress bar for select operations, starting with Backup, to cancel a long operation in process.
  • Datacap: Recognize “AP DUPE” response as Duplicate.
  • General Payment Processing improvements:
    • Fix inconsistencies in timeout and exception handling.
    • Fix inconsistencies in handling some less common AVS Response Codes.
    • Distinguish between actual zero Remaining Balance and unknown (blank). 
    • Remove several fields from Payment Log screen when they don’t apply.
  • Allow tips to be put on a *new* credit card when there’s a balance still due on the sale, even if there are already other credit card tenders (which will also be presented as choices). 
  • Don’t check for SNAP (or other) merchandise eligibility when putting a sale on hold or voiding it.
  • ISI: Preserve (but ignore) In-Store Reserve when Internet Store is disabled. Fix so related fields on the Inventory Details tab, including quantity “Available Online”, are updated whenever relevant changes are made.
  • POS-14266: Fix “Menu Order … must be less than or equal to 99” after moving rows in an Edit List dialog when there are >= 50 rows.
  • Switch to use secure HTTPS when connecting to Paygistix Client, now on port 8081. Make logging of Raw Request and Response consistent across Payment Processing Providers. 
  • ISI task settings: Remove “Disable Upload Chunking?” setting (which was really “Don’t Force Chunking Enable”, effectively); treat as if set. Force “Store URL” to start with “https://”.
  • Protect against possible race conditions simultaneously saving and/or receiving POS for the same items.
  • Fix Constraint Violation in Item Quantity Repair tool with location-tracking in some rare circumstances.
  • POS-10670: During Day-End processing, skip any configured Tender Detail reports for which there are no tenders.
  • SAL-101: Sales by Item: Add Phone & Contact to vendor group header.
  • POS-14209: Increase the robustness and scalability of data loading in Record Tables and other screens that process lists of records. In particular, fix a “Can’t Load Row – 0” error when you change the search parameters on a Record Table screen Power Search with a combo box field whose pop-up overlaps the main record table (because repainting underlying table cells happens while the data is being reloaded by a background task).
  • POS-14221: Allow *all* columns in a record table to be sortable, even virtual columns like Xfer Qty in the Inventory Transfer screen. Dynamically switch between server-side sorting (when all sort columns are real database fields) and (slower) local in-memory sorting.
  • Fix parsing of .mail.properties with “=” in values.
  • POS-14052: Fix Date Picker pop-up on Windows 11.
  • Remove 32-bit Windows install. Make the macOS installer a “universal” binary (includes native executables for both the Intel and M1 chips, so M1 doesn’t need to use the Rosetta emulator). Always show install folder (even if existing installation found).
  • Move forward from Java 8 to Java 17.