RSS Feed c9 logo Australia's best motorcycle shop retail software
Release 4.798 November 4, 2019 barney
  • Tweaks and fixes
    • Point of Sale complete. Move Freight sel button to list of buttons at bottom of screen since its selection will impact both tabs on newly designed complete screen. Move will also save a keypress for keyboard users where no freight is needed.
    • Various reports with date ranges. When clicking on 'daily' assume operator means today, not the first day of the currently setup reporting period.
    • copy Freight description from originating invoice if originating invoice is a reserve or if original invoice has a freight value of $0.Prior logic only copied description if originating invoice have a "freight to invoice later" value >0. The original rule doesn't work in many scenarios, e.g. when tracking free freight
    • Workshop planner, highlight notes lines by making the description text red.
    • Spares POS invoices : print cust email addr on invoice too if set. (Useful for workflows when doing AusPOST freight etc manually).
    • Record not found false positives removed
      • Cancel parts on order, via invoice
      • Part buy/sell history
    • Discounting on orders / laybys etc.
      • In point of sale Complete : Highlight in bold red discount line if a discount is in play
      • In view invoice. Show Discounting Particulars
    • Web order paypal processing.  Cancelling parts on order and return deposit would not connect to paypal correctly to refund deposit. Would generate an error on screen and would require manually processing on paypal site to finalize. Now fixed (caused by changes a couple of months ago to accommodate shopify integration)
    • Xero syncing on spares invoices due date tweaks
      • Added ability to configure as a date rule, instead of just ordinary x days since inv date. Some examples:
        • "date:1+2m-1d"  (last day of next month)
        • "20th of next month"
      • Added ability to configure a global rule for Xero which will apply and override all supplier specific rules.
Release 4.797 October 29, 2019 barney

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

Database error connectivity tests and alerts.

This version includes some changes to alerts and tests on database connectivity dropouts. A recent issue with respect to processing a job when database connection failed caused the job to be re-saved incorrectly into c9.  This version specifically fixes that scenario but it also includes further changes that make c9 more aggressive in reporting database connectivity errors. These changes might make c9 generate false alarms in obscure parts of c9. Will hose those out if any over next few versions of c9.

Website groupings and variations

This version rolls in a significant enhancement to how parts on c9 websites can group together and is intended to replace the prior mechanisms of enforced stock only merging based on part description and part grouping. Prior mechanism, 8 years old now, is pretty limiting and difficult to wrangle so this improvement is long overdue.

Features of new system:

  • Works on non stocked and stocked items
  • Mapping by description is optional/opt in. Not enforced.
  • Manually mapping is now alot more intuitive. Instead of defining a common 'group' you link two or more parts together.
  • Grouping allows multi dimensional grouping tests. by default colour and size on this initial release but more are possible. On website they appear as separate drop downs.
  • On website side of things, page gen / refresh is quicker and website UI is more intuitive.
  • Only works for v3 websites. There is a manual enablement / opt-in process. To make it happen. This will be documented in a separate post.


  • Other Bigger Changes
    • The Spares Point of Sale screen has been redesigned to break it up into two tabs and fit everything on screen for computers with 720p screens. For people who drive point of sale via keyboard this will add 1 or 2 more key strokes (F10 vs Enter key workflows). For mouse users, one more mouse click.
  • Smaller Tweaks and fixes
    • View Unit : would incorrectly show floorplan cost as $100 when unit cost is set to $0. Purely a screen bug. Was supposed to show 100% as ownership, but instead is showing $100 as floorplan cost. C9 was incorrectly displaying the 100%  as a $100 cost on screen. Now fixed
    • Payroll staff stats. Show -ve signs in order to distinguish entitlements like annual leave when they are under-water
    • Print label on unit purchase broken due to recent changes to c9 labels. Should now be working again.
    • Import Excel files. A couple of files would fail with old c9 (SCP and Bikes and Bits). Updated propitiatory library c9 uses to decode XLS files.  Modify c9 to provide more useful feedback on error. Results:
      • SCP Still broken, but c9 now provides more useful info for reason why. Result: "unsupport excel95 format"
      • Bikes and Bits.  Still broken. Appears to be something broken with their file. If you resave excel file seems to come good.
    • Select customer. Include a couple of tabs to filter down to either account customers only or trade customers.
    • Sales leads. Filter option will now also filter on unit type.
    • Receive Order labels. New configuration options ( in setup -> orders ) that allow fine tuning of labels. Specifically:
      • Option to print one label per part number line item or one label per individual part. (Default being one label per customer order)
      • Option to print part description on label if per line item or per individual part is selected
      • Option to filter out workshop and unit based orders from label printing : so only print labels for spares counter / on reserve sales.
    • Map parts to website category. Allow mapping based on meta data. This new mapping system provides a couple of functional and technical improvements. Main functional improvement is that it will allow non stocked parts to be mapped to multiple locations on a website based on master file meta data parameters.
      • Edit web group. New fields to mapping a web page to parts with matching attributes
      • Create structure from attributes. New option that will feed new fields too, removing need to manually refresh mapping
    • Website settings: add a button that tells webserver to drop and regenerate page caches. Needed for moment while all new changes to page mapping and variations cycle through.
    • View invoiced units.  Show the involved customer, not just the seller. Make the differences between brought, sold, consigned, traded sales more visually obvious (with color coding & additional fields).
    • Spares Point of Sale. New Button next to tallies. When clicked it opens a new window that provides breakdown on margins on each line.
    • Move part : allow moving of history when moving an individual part.

I occasionally receive requests to integrate into Buy Now Pay Later (BNPL) services like AfterPay and ZipPay.

I have for the most part up until very recently strongly pushed back on these requests. I believe these services are predatory and harmful, and in particular predatory and harmful to our industry. I suspect that rollout of such services can, if circumstances are right, actually cause dealerships to become less profitable. That such a scenario is not just mathematically possible but quite likely to occur and eventually an inevitable outcome if BNPL services become a dominant method of payment. The exact rationale for my views here are covered in this document which I have shared with a few dealers to date and I am now making available on the c9 website.

Afterpay and other fintech solutions – impacts on retailers and ways to mitigate [PDF]

The core issue is excessive merchant fees for these services which can reduce effective profit on an individual sale by almost 40%. With sufficient channel cannibalization, (described in linked document above), your reported profit on your financial statements will be in total, actually drop by offering such services. You could install AfterPay into your business, increase your sales but actually, unintuitively, make less money as a result had you not done this.

These services may work well in high margin businesses but are risky and potentially harmful in low margin industries such as the motorcycle industry.

The mitigation strategy I proscribe involves adding surcharges to pass on fee costs to consumers. On assumption this was possible my position on integrating into AfterPay and ZipPay had softened in recent months and I was planning on integrating early 2020.

Except that Merchant Agreement all these services provide explicitly prohibit passing on surcharges. My willingness to integrate these technologies into c9 were contingent on being able to provide you with tooling to facilitate surcharging. Integration from c9 to any given BNPL service will not happen until that service permits surcharging.

There are many media reports over the last few days regarding Reserve Bank of Australia reviewing this as a matter of policy action. [Link from AFR]. I believe it is inevitable that relevant government bodies in Australia will compel AfterPay and others to permit surcharging for reasons I won't go into here as this blog post is already long enough.

The question is how quickly will Australian regulatory bodies move on this. Once this happens c9 will onboard with BNPL integration with AfterPay and ZipPay. Until this happens there will be no development effort committed to making integration happen. I am not prepared to lend my expertise and skill to aid an enterprise I believe is predatory and harmful, not without being able to add mechanisms that will help mitigate the elements I consider to be most egregiously predatory.

-- Barney

Relesae 4.796 October 2, 2019 barney

Regresson bugfix with  prior version of c9. Translist report was broken : was not paying attention to date range and instead would print all txn history. Now fixed.

Release 4.795 September 12, 2019 barney
  • Tweaks and new features
    • Import lusty images + text for website. Requires a lusty metadata file web address reference to work. To be provided by Lusty.
    • C9 Website availability check. Added ability to allow checking for Mojo now mojo magician works really fast
    • Kawasaki Magician : working again. EPC import working too.
    • View txn repair
      • Fixed filters for debtor and creditor txn types. Was incorrectly filtering out some txn types, e.g. bill money txns for creditors
      • Added a subset of txn filters for creditor txn types. e.g. Bills and Bill Pays
      • Improved report output a bit for identifying inv types.
    • Deals.
      • Highlight spares discount if set
      • Fix A bug with some rounding errors on unit sale prices inc.  Some Inc prices cannot be easily arrived at when broken into ex and GST.  e.g. 2860.05.  Base=2600.05.  GST of this is 260.01 with rounding.  Readds to 2860.06.  Added some smarts to deal with this
Website Spec Sheets September 11, 2019 barney

Spec sheets allow you to define crisp looking website content for bikes, promos etc.



Release 4.794 August 30, 2019 barney

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

  • Freight Descriptions on Spares Invoices
    • You can now define freight description which is set on sale complete and prints on tax invoices
    • Description is preset/prefilled for
      • AusPOST queries
      • C9 weborder processing
      • Manual freight drop down selection in complete
      • Shopify orders received (only orders received from now on after update, not retroactive for orders synced into c9 prior to this update)
  • Tweaks and fixes
    • Cassons Magician, its back and it's slow. Sloooowwwww.  But at least it gives you actual stock on hand.... Eventually.
    • Accounting reports
      • balance sheet : bug fix with loan account liabilities being reported twice on the sheet. Now fixed.
      • Profit & Loss : Filter out capex should not be reported here.
    • Payruns : added biz restrictions in use of ETP and lump sums as these are being inappropriately used to flag ordinary severance pays in a couple of instances. Strictly requirements for hopefully discourage their incorrect usage.
    • VicRoads Paperwork
      • Form 4 : removed extraneous text about what reported price includes since the form breaks these costs down anyway.
      • Updated Approved operations form to more recent version
      • Added VicRoads concession form
    • Unit sales / profit report : Show # of units in the report in group and grand totals.
    • Shopify order sync tweaks
      • On view order, do a fraud query and see if Shopify has flagged the order with any negative recommendation. Alert user if so
      • On view order : have an option to view raw order data from Shopify
    • View data/replies for AusPOST and Shopify. Allow filtering of result. Also allow values on screen to be copy/pasted onto clipboard
    • Receive spares. Manually add an already stocked item onto a receival. Would not display part location in modify part screen until after part was added. Now fixed.
    • Spare Parts Profit Report : include a filter for location.
    • Magician query show pricing : previously would memorize setting on a per terminal basis and use last setting. Modified so that it is a global config only and doesn't care what operator did before (setup in setup main setup screen, spares 2 tab)
    • Setup : removed some old no longer functional options. (Parts Magician username login & search location)
    • Bugfix with Enter key traversal on POS complete screen. Would traverse into wizard sheets. Now fixed.

Profit Summary and KPI Reporting

Internal technology reworking of profit summary reports will open up lots of  reporting capabilities WRT profit summary data. Such as:

  • Filtering results based on spare part or unit considerations. e.g. only show profit summary WRT honda motorcycles.
  • Inclusion of profit summary in custom miner queries and KPI/Analytics reports

Specifics for this version:

  • Reworked Op2ma Harley KPI/Analytics report.
  • KPI/Analytics report : rewroked profit Summary report
Release 4.793 August 26, 2019 barney
  • Tweaks and fixes
    • Browse rebates: tally to show tally of cost ex only (previously was a tally of cost inc)
    • Contacts : add a tab for F&I contacts only and a tab for supplier contacts only.
    • Rationalize setup database maint tasks.
      • Removed a number of old defunct tasks
      • Added task : rebuild account search list (commonly required task after doing a restore from online backups)
    • Mcleods Magician. Working again.
    • SMS on birthday notification tweaks
      • Did not respect the to time setting in setup. Always limited upper limit to 4pm no matter what was configured.
      • have it implement global workshop SMS limit, defaults to 50, similar to auto workshop sms limits.
    • Payroll Super report
      • Was messing up sign on vol super figures. Now repaired.
      • Running report repeatedly would double up figures. Now fixed
    • Web content management (v3 websites only)
      • New menu config option which makes menu pickup all content from children/descendant menues. Good for building out heirarchical spec sheets for new unit type. You can define a menu structure New / <Model> / Type.  While at New level you'll see all spec sheets and can drill down via menues to see smaller lists
      • New Spec sheet option: Filter. Adds a filter option for that spec. So spec sheets can then be filtered using params on URL.
Release 4.792 August 21, 2019 barney

Fixes and Tweaks

  • Cykel Magician check : now working again
  • Workshop invoice and estimate printing changes
    • consolidated estimate print out to be visually nearly same as a tax invoice : solves a number of various issues with printing discount lines etc
    • Print config is now managed in Setup in new workshop 2 tab. Previously c9 would memorize prior setting. Now has its own default config setting
    • Tax invoice / pro forma : option to suppress part numbers or techs : for jobs in job list which are really quotes
  • Payroll changes
    • Unused annual leave in severance pay is not subject to super guarantee. Tweaked rules a bit WRT computing severance
    • browse notifications. Filter out any message where header contains word 'payslip'.
  • Backorder Cancelled order sms notifications. C9 is supposed to send SMS, one per customer to alert on backorders and cancelled orders and this setting is supposed to respect the individual invoice notification config but was not working properly. Now working. In event of a receival that touches multiple invoices for same customer, if any of the invoices that contain back order or cancelled parts satisfy rule the SMS message will advise on all relevant parts.
  • System level changes
    • Backup verify status when reporting BADCONN would ordinarily wait 24 hours before retrying. Instead retry every 15 minutes. Some usage patterns are inappropriate for a 24 hour wait. (i.e. consistently tranistory internet access right on midnight would mean terminal always shows BADCONN)
Release 4.790 & 4.791 August 13, 2019 barney
  • Tweaks and fixes
    • Import PDF invoices. Some oddness with Cox invoice encoding require a change to c9 itself to deal with. Now working.
    • Bank rec generic txn. Some txn types will silently fail to add but still will post a GL journal which cannot be deleted. Now fixed.

Some bugs in spares order receival for power equipment which contains units or a mix of units + spare parts. . Bugs became obvious with trying to import Husky PE PDF files where some Husky PE gear contains excessively long serial numbers which could trigger a cascade of issues.

  • Unit spec on non stock items not being retrieved correctly. Would only track/retrieve details for items on stock file. Now fixed
  • Add smarts to cope with PDF imported serial numbers being bigger than 20 chars which is c9s VIN limit. Bring in / display more than 20 but do not let user go ahead until shortened manually
  • If more than one unit on import had same effective 6 digit trimmed VIN c9 would fail to receive the order because of resulting duplicate. Was not smart enough to make sure these were unique when considering other units on same receival, (but was smart enough to make sure they are unique WRT units already in the system). Which then can trigger our final bug:
  • On reattempting to complete a receival that failed as per above, c9 would stuff up quantities in un-intuitive ways. Just two of many examples: it would reset qty to receive to zero and it would then double up qty to stock. c9 was not able to cope with retrying a failed receival. Now repaired.
« Previous PageNext Page »