RSS Feed c9 logo Australia's best motorcycle shop retail software
Release 5.2.26 May 25, 2022 barney

Not yet released. ETA Monday

  • Tweaks and Fixes
    • Payroll tweaks
      • Working holiday maker : force medicare tax lines to be removed.
      • Readded foreign resident (non resident) and appropriate tax tables that was removed during transition to STP Phase 2
    • Browse unpaid bills : was incorrectly showing deleted txns as bills to pay. Now fixed
    • Deals -> Cancelled deals. Add button to allow access to deposit history in order to dig into deposit movement on abandoned deals
    • Instruments + Tills tweaks
      • Fix promised in 5.2.20 to sort out cash till detail report with tillnos > 1 didn't work. Now fixed here
      • Tweaked regeneration of general ledger chart names to auto regenerate & backfill till names for tillno 2 upwards as well
    • Rebates : option to exclude a rebate from unit profit reporting. Some rebates may need to be tracked against a unit but dealer may not wish to attribute income directly to sale of the unit.
    • Unit deals : if you click add deal but then click cancel in modify, c9 will not log the deal as a cancelled deal. Tweaked to log deal as cancelled to create a more detailed log of changes.
    • Receive spares onto account : would not set the duedate on supplier correctly. Now fixed.
Release 5.2.25 May 20, 2022 barney

PPSR queries now built into c9.

Either in deals section:

Highlight a unit to purchase and click on PPSR Query. Result available on screen. Pricing is $4.95 per query.

Or in modify unit, or a new menu option, Quick PPSR Check

Other tweaks and fixes:

  • WPS Order export : Transmit c9's order no in a way that it will show up on WPS reports / screens etc.
  • Deposit Held Report : redesigned to better separate lines from tallies.
Release 5.2.24 May 18, 2022 barney

Tweaks and fixes

  • Unit quote broken by recent unit locking changes. Now fixed
  • Tweaked wording on pack checkboxes in edit franchise to make it a little bit more intuitive
  • Tender payment : readd nice UX feature lost from v4 : when you hit enter on tendered amount of 0, default tendered amount to the amount required
  • Refined unit locking recently added, couple of scenarios where locking will not protect against simultaneous edits (when two sales are running at precisely the same time, highly unlikely but still possible). Now fixed.
Release 5.2.22 and 5.2.23 May 18, 2022 barney

Includes DB changes, you need to log all terminals out during upgrade

Couple of serious bug fixes with 5.2.21

  • c9 would crash on various circumstances because of pack qty changes such as selling parts to workshop. (couple of db stored procs not updated to handle packs, such as part kit update )
  • NullPointerException on unit sell. tradein or purchase fine, only sell broken (newly added code to lock db records before update broken).

Pack Qty management

Version 5.2.21 overhauled how packqty works in c9. These changes are intended to mainly accommodate suppliers like MCS where their pricing and ordering is substantially pack based but things a little fluid in that what exactly a dealer sells, the pack or an individual item, isn't strictly codified/proscribed by the pricefile/supplier. You may wish to manage and sell the items individually, or in packs, or a mix : most parts as individual but some parts as their pack.

The design change allows you to optionally pick and choose which parts you wish to pack and which you wish to separate out.

for example you may

  1. opt to deal with a franchise as mostly selling packs as supplied, but with some exceptions manage items individually
  2. deal with a franchise mostly selling items individually, but some items you want to maintain as a pack for sale and stocking.

Finally some items on price file may lack packing data which is really there so you may wish to add it in support either 1 or 2 above

Initial Setup

For a franchise like MCS key setting you want to make sure is in place is in spares -> utilities -> add/edit franchise.  In order to be able to mix pack / individual parts you need to tell c9 that the pack figures are not strict, and that it will be okay to order qtys which are not muliples of packs. This setting here:

Default setup - track things individually

To track things individually, you need to tell c9 that by default pricing and order with supplier is all pack based, so c9 will convert accordingly. In same add/edit franchise setting. Check the two options, price files are based on packs, and order qtys must be packs.

Default setup - track things as packs

To track things as packs by default, i.e. to buy and sell exactly as it appears on price file without dividing by pack qty, uncheck options as below.

Changing default setup

changing the default setup automatically changes pricing you can see for not carried items. But for carried items you need to do a reimport price file to apply changes.

Spares -> utilities -> import price file. Select franchise and pick update only. This will apply pricing changes to stocked items too

Changing default setup can be disruptive with your pricing and orders with stocked items especially so generally you want to set this once and not change it. If unsure recommendation is to track individually, as in enable the options that state price files are based on packs and order qtys must be packs

Comparing pricing you see for N/C items on changing this this one setting in c9. You can see for MCS here:

Pack set (individual pricing)

Pack not set ( default, pack based pricing)

Overriding settings on a single item

Say system is configured for individual pricing, but part CS520 we don't want to sell individually but as the bag. Then when we add part into stock we have some options we can control.

Initially part looks like so:

But by changing pack information from default to per item, we are telling c9 that the price on price file is per item price. So we are ignoring the pack setting.

The list and retail automatically recompute to pack based pricing (orange)

Make sure you change max and ecord qty (red) to something that makes sense for managing this item on a pack basis

General usage guidelines for packqty usage

As implied above, you want to lock into a regime and stick with it. Same goes for individual part overrides.

If you want a bit more flex at point of sale, sometimes sell an item, sometimes sell a pack then units of measure functionality is what you want to use instead. For relevant franchises/  items you want to track them at their supplier provided pack price (so set per item, or disable pack conversion on franchise) and then configure unit of measure entries for relevant parts.  UOM is more flexible and fiddlier to setup. Packqty provides a simpler solution where for relevant suppliers the information largely comes baked into their price files already.


Release 5.2.21 May 14, 2022 barney

Includes DB changes, you need to log all terminals out during upgrade

Tweaks and fixes

  • DB performance tweak on cash till. Loading of till no list was not efficient, especially on systems with alot of history. Now fixed.
  • General Ledger performance caching : gl tallies are cached automatically on month boundaries. To help keep the cache fast, automatically generate cache overnight for last 20 years of activity.
  • Reworked unit selling / buying and rolling back so that relevant database records are explicitly locked and validated before operations go ahead to protect against undefined outcomes when a these operations are performed simultaneously on different terminals.
  • Aged payables report: was incorrectly using creation date, not due date for determining age on some open txns (bills okay, but purchases or any other txn type would incorrectly work off creation date ), now fixed
  • Print deposits for unit/workshop/spares deposits. Would no longer print reference the deposit applies for for deposits added since upgrading to 5.2. Now fixed.
  • View txn details, unroll unit info a bit more so it is obvious what unit is being affect. Added a button 'view line details' to help with seeing txn line details. All this is to help figure out more easily what unit a factory purchase appears under
  • Expand size of audit/id on some key screens for txn ids for systems with huge amounts of history

Heavy reworking of packqty logic especially around behaviour with pricefiles based on packs setting. Previously this setting would only influence pricing on stock file record and would only recompute on installing a price file. New changes:

  • N/C stocked pricing : factor in pack settings so displayed retail price for example is sensitive to pack size and pack setting
  • Recompute list & retail price when pack settings are manipulated in view change part
  • Update prices : applies pack pricing
  • Factor in pack settings on add part to stock
  • Allow ecordqty to not be a multiple of packqty where orderpack setting is not for packs.

Part of this change is to help facilitate MCS price files. MCS price file contains alot of parts in pack form. Now dealers may wish to sell some/all of those items on pack basis or individual basis. The above design changes will help facilitate this. A separate post will be included to help explain how to effectively manage MCS stocking with respect to packs.


Release 5.2.20 May 10, 2022 barney

Fixes and tweaks

  • Honda SAP Magician working again. (Tweak HTTP header payload)
  • Cash till detailed report : was not printing instrument name for cash tills with a till no of 2 or above. Now fixed
Release 5.2.19 May 6, 2022 barney

Tweaks and fixes

  • Newly added 'Items Repriced' screen looks visually similar to existing 'Items Below RRP' screen, but these two screen do very different, almost opposite things. Added some color and bold headers to help make it very obvious which one a dealer is in.
  • Added facility to tag units for online advertising to target i-motor 3rd party platform
  • Deals and unit sales : profit figures to show line margin (non spares invoice lines & passed on PD charges)
  • Orderbook : new button to access received order the part was received in on


Note there are some changes to KTM / HQV PDF importer to try and cope with kit parts. On importing PDF c9 will now list the kit and it will list component parts underneath it, setting components to 0 qty and kit qtys + price as needed. How c9 figures out  kit qty is a bit complex and is an imprecise 'guess' because kit qty information isn't definitively encoded on their invoices but it should be accurate 99% of the time. C9 will warn you of kit parts where the kit qty is imperfect and require manual checking.

Example result below

As always with these ongoing improvements, provide feedback and raise issues as you run into them as we try to zero in on some viable solutions for problems/challenges our industry throws at us.


Release 5.2.18 May 5, 2022 barney

Includes Database changes. You need to log all terminals out during upgrade

  • Tweaks and fixes
    • Honda magician
      • Reworked magician code, something NQR about old code. (Rewrote to use std java http apis instead of apache httpclient)
      • Integration with Honda public deadstock website working again (with their new site addr)
    • Modify job : include button 'view unit', similar to UX design for view customer button
    • Previously reported bug with nullpointerexception on workshop parts positively identified and fixed (bind error view in selCustDailyOrder)
    • Paperwork for dealers in SA, default to SA (previously was defaulting to Vic paperwork)
    • View spares invoice : for spares invoices which are part of a complex graph of multiple invoices because of repeated use of 'merge invoice' function, some invoices would not be accessible / viewable because they did not land in the graph of invoices as expected. Problem only occurs in some very narrow circumstances and structuring of invoices. Fixed in this version so should work for all possible ways invoices could organise.
Next Page »