RSS Feed c9 logo Australia's best motorcycle shop retail software
Surcharging and credit cards August 28, 2026 barney

From October 2026 you cannot apply card processing surcharges on Visa, Mastercard or EFTPOS transaction

This is a regulatory change overseen by the RBA. RBA faq on this can be found here

https://www.rba.gov.au/payments-and-infrastructure/review-of-retail-payments-regulation/2026-03/conclusions-paper/faqs/

Removing surcharging from your c9 instore transactions

If you have surcharging setup in your c9 make sure before Oct 1 you remove this. This is strictly every c9 customers responsibility to do this. This is not something we at c9 will do.

  1. Setup -> main setup screen
  2. Goto payments tab
  3. click on ‘more’ next to each payment system where you have surcharging configured
  4. Make sure you unselect the highlighted option below
  5. click close. Make sure you click Ok in bottom right of setup screen to apply these changes

If you use till/nuvei for online weborder processing there is another adjustment you must make which you must perform.

  1. Setup -> main setup screen
  2. Goto eftpost/paypal tab
  3. click on ’till payments gateway configuration’
  4. make sure ‘no surcharge option is selected’
  5. click continue. Make sure you click Ok in bottom right of setup screen to apply these changes

Surcharging managed by your eft terminal

If you have surcharging computed on eft terminal itself you’ll need to confirm your eft provider has a plan in place already with disabling this an whether or not that requires action from you.

C9 e-comm Website surcharging

Actual surcharge reporting and capture on c9 websites will be disabled by us. Invoicing back in your c9 may still be subject to surcharging so make sure you review settings as described above.

Merchant fees

One disappointing aspect of these RBA changes is that it doesn’t appear that there are actual any regulatory constraints on what banks and card processing providers are going to bill merchants such as yourself and I guess it is reasonable to expect the processors are not going to change their pricing at all. All RBA regulates is what banks and procesors charge one another. Whether or not those savings are passed on is entirely upto disretion of acquiring/processing providers.

Considering this, contact us if you need help changing pricing in c9 if you were previously charging surcharges and you want to manage losses caused with Oct 1 with price changes.

Special consideration – paypal

If you have paypal on c9 e-comm website note you can continue to surcharge this payment system. There is no regulatory requirement to remove these.

Special consideration – AMEX

Note that AMEX are not subject at all to this RBA ruling, but inspite of this they have decided to amend their merchant agreement to disallow surcharging but do not appear to offer any sort of fee compensation in return. Very cynical action on their behalf which they are using to drive adoption so expect in time to see more and more customers present with AMEX since from POV of the customer it now appears to be the ‘same’. if you currently accept AMEX, consider how to manage this additional harm.

 

Release 5.2.167 August 26, 2026 barney

Another issue with recent release: reencrypted clerkkeys unintentionally became case sensitive. Often clerkkeys are numbers so not a problem but some dealers use alpha too. Now fixed so that clerkey entry is not case sensitive.

Release 5.2.166 August 26, 2026 barney

Recent changes to help with tracking deleted unit costings broke deal picklist.  Now fixed.

Release 5.2.165 August 25, 2026 barney

This mornings update broke unit sales. Would pop an error during sale finalisation. Now fixed.

Release 5.2.164 August 18, 2026 barney

Includes DB changes. You must log all c9 terminals out to install

Security enhancements

This version of c9 includes a range of security changes as part of our regular security audit efforts

  • General Cryptography improvements
    • Passwords / Clerk keys migrated to PBKDF / HMAC-SHA256 hashes
    • At rest encryption of all other critical data migrated to AES/GCM using a new key management regime that will allow use to easily rotate and expire old/compromised keys
  • Remote Access improvements
    • Add ability to set a per user remote access password, configured in login users. A new remote client needs to be installed in order to make use of this. This will allow disabling /retiring of the existing global remote access password for stricter access control
    • Part of above change mobile capture on remote access will use 2FA mobile configured on login user to enforce strict MFA authenticiation
  • Stricter C9 support tooling.  For our own remote access into dealer systems as part of our support work, this version forces our existing access to use strict MFA linked to staff mobile phones. Previous support access was /only single factor verification.
  • Other security related changes
    • clerkkey input now requires an explicit Enter key press to test the clerk key. So clerk input now requires two enter key presses to continue on. This is necessary to both improve security of clerk access to minimise risk accidental/intentional discovery of low entrophy clerk keys, but also because PBKDF algorithm is intentionally slow, it is no longer possible to check for a match on every key stroke
    • TFN presentation on payroll tab is by default hidden. There is a unhide button you can click to review TFN
    • PayDay super log / STP log clearing: interaction with STP and PayDay super now clears potentially sensitive request payloads once the operation is finalized (failed or completed)
    • Disable access to database menu until login is completed. Contents of this menu have security implications so access to be constrained
    • Payroll super report : make it obvious export will also export TFNs
    • VicRoads : fix misaligned DOB on new authority form

Other small changes

  • New GL expense code for tools
  • delete unit costs /floorplan costs / rebates etc. Previously when deleted if you viewed the deleted journal it wasn’t obvious what unit the deleted entry was for. Now this can be interrograted. This change is expected to be useful for untangling reckless pulling of levers in the backoffice that sometimes happens at some shops in order to try to make a bankrec align for example
  • unit Stocklist / stocktake reports : sort results by reference. Previously didn’t apply any sorting, output was whatever postgres felt like doing. Now fixed

Note: this version moves from 5.2.162 to 5.2.164 : this is intentional because of nature of re-encryption changes on database.

Release 5.2.162 August 10, 2026 barney

This version of c9 fixes a long standing nuisance when transactions auto allocate. It is mostly a problem with bulk transactions so mostly affects when we install a new c9 and bulk import AR and AP txn history. But this issue could also explain unexpected results in some scenarios when doing bulk linking. Normally reconcile masks problem because when we reconcile are are usually tallying unallocated txn totals of exact same amount. But if reconcile is unbalance then this misallocation could happen too. Also adding txns one at a time as what normally happens doesn’t trigger the incorrect behaviour.

Scenario is txns are supposed to auto allocate from oldest to newest but because of a bug when processing multiple txns simultaneously it could leave unexpected gaps in txn allocation depending on how AR and AP txns line up in terms of their relative amounts. Illustrating:

The correct outcome is we want unallocated gaps in the most recent transactions, not interleaved in historical txns.

 

Release 5.2.161 August 4, 2026 barney

Fix 1 : low level bug could lead to unrelated invoices appearing to be tangled on an invoice : depends on what invoices you were eyeballing before and whether or not those invoices contain and merged parts from other invoice.  This bug has been in c9 for a very long time, since 2016. Symptoms explained by this bug brought to our attention today. Even though it has been there for a decade and only just reported now, the symptoms are a nuisance enough needed an urgent fix

Fix 2 : tidy a visual bug with deposit held report. Would not render a date for customer held lines in some circumstances when running the report historically (misfiltering lines)

Release 5.1.160 July 17, 2026 barney

 

Important Change – payroll bank rec.

This version includes a change to make bank rec restriction on payroll advisory only. The original design intent behind this was to discourage reckless behaviour. What I didn’t anticipate was it would actually encourage even more reckless ‘quick fixes’ to work-around the restriction. Instead it is now advisory only. If your rec is more than 45 days old c9 will delay access to payroll with a countdown timer to encourage good back-office hygiene, but it no longer enforces.

This update also fixes some issues and unfinished fixes in last version

  • KTM EPC import, now working
  • Select Estimate button. On sort by id tab the location of add/modify buttons was mangled.  Fixed. Caused by introduction of date field and making the window bigger
  • TillPay Term integration. Some internal work to rationalise low level webhooks wasn’t 100% done. Now sorted. (webhooks are a thing which allows terminal signal back to c9 the txn is finalised)
  • PayDay super waiting for payment status in payrun or browse payday screen: would clip cents off amount to pay if amount to pay was >=$1000.  Now fixed
  • Vicroads new auth register form – missing SOLO in body type when it was there previously

Other little fixes

  • View deal. When deal is a tradein, print invoice button would randomly print either sale or tradein/recipient invoice. Now consistently prints the invoice
  • Low level unit sale bug. Recently dealt with a issue on accounting data for one client which tracks back to some badly formed sales in July last year. Unsure what bug is because of how long it has been since issue and report, and there is a good chance some other change in last 12 months fixed it already: but added some additional guards into software that will hopefully prevent bad data we saw from making it into the database

New stuff

  • Web order alert : new alert if there are any finalized orders with unbalanced settlement figures
Release 5.2.159 July 8, 2026 barney

More impactful changes

  • Workshop scheduler : now pays attention to both promise date and promise time to allow more fine tuned alerting of overdue jobs. If promise time is not set reverts to old behaviour (if job runs into promise date  then assume it is overdue)

Tweaks and fixes

  • Payroll
    • New pay tables incorrectly calculate withholding for residents where no-threshold is set. The computed withholding is way too high. Now fixed
    • Recurring payments, like Garnish do not draw in settings on other tabs such as whether or not garnish is for child support. Instead you have to reselect every time. Now fixed
    • Edit computed changes : if you only changed settings like garnish, the underlying pay item would not adjust at all and revert to computed result. Previously you needed to edit some other aspect of the item too, like its line. Now fixed
    • Edit line : disallow blank names. This especially messes up reporting of allowances via STP when no allowance type is selected
  • PayDay super tweaks
    • Manual transfer : in superstream status show amount waiting for. e.g. ‘Waiting for: $216.00’
    • Manual transfer : if somehow there are multiple amounts being wainted for, separate them into a list, don’t show merged result
    • initial super file upload was not logging useful debugging info. Now fixed (api json reply not logged because request wasn’t a json payload)
    • Added support for some new error codes coming back from Ozedi (generic upload failure & revalidation of superfund details, USI/ABN etc)
  • Unit sale – if onroad lines are inputted with ex and gst figure, previously it would render the ex figure only on screen in the list of costs. Fixed to show GST inc price. Nominally what is inputted here is just a fixed non gst figure, so on roads do not have any BAS impacts on the business, but it is possible to input this data into c9 if preferred.  This change doesn’t alter any underlying behaviours with how invoices are printed or general ledger journals the sale, purely a visual thing for the screen where unit sale costs are built.
  • Import price file – remove a very old 10+ year rule where lastincost on stocked parts is written as daily buy if it is zero on stock file. Nominally this isn’t needed and in one instance with a dealer doing some data migration it caused problems with stock validation post stock take.
  • Unit curtailments :  redesign a couple of screens so it is visually obvious curtailments are functionally paying down inc GST cost of the unit (even though GST isn’t on curtailments themselves)
  • Email sending in modern Javas – broken because of a missing library which older java 8’s packaged. Now repaired
  • Updated paperwork
    • Vic – VicRoads Vehicle Registration
    • Vic – VicRoads Dealer On-Line Authority to Register
    • NSW – Registration Form (C)
  • Workshop part quote / UOM tweaks
    • Where UOM is fractional, convert to supply rounds price such that it reflects a non fractional price. Now fixed
    • Edit uom quote part : quote qty shows as #### because of fraction. Now fixed
    • Convert a quote involving negative parts,  it tries to sell parts to bring -ve back to 0. Now fixed.
  • Workshop pickup job : include option to print lines ex GST. Previously was there when you click on pro forma in view job,  but wasn’t an accessible option in pickup screen. Now available.
  • Browse Estimates  –  show Start Date on browse screen
  • Deals – browse older completed deals, allow private notes to be edited
  • Dead Stock Report – show franchise and allow filtering by franchise

System level / other

  • Very narrow layer of edge cases could make txns fail in c9 but not report to end user something went wrong so to user there is not strong screen feedback to a problem but it is obvious something went wrong because the screen, like add payment, didn’t advance. Now fixed. The core issue is around c9 general ledger : it contains two layers of defense against issues, layer one in c9 itself does all the warning about inbalanced txns, concurrent edits etc. But the second layer of defense, on database itself asserts critical invariant on posted GL, that it balances among other tests. Rarely errors are trapped here but when they are they do not pump an alert to screen. Now fixed here.
  • A Decade or so ago c9 pricing based based  on access to ‘modules’ : unit sales etc. For a long time now convention is everyone has access to everything and our pricing model of market segment dependent was entirely an administrative thing for us, not baked into the software. But we left the old enforced code in c9 as is our habit to keep changes to a minimum.  So some c9 clients may not have had access to some features until we tidied things up. Finally removed this behaviour here.
  • Low level change to webhooks we use to monitor tillpay terminal processing workflow. Will allow us to eventually fully hide our comet server behind main rev-proxy webserver instead of exposing on a non standard tcp port.
Web Server migration June 22, 2026 barney

For dealers who run a website with us. You need to update the ‘A’ records for your domain to point to our new server

The correct ip address is this

27.50.77.33

An example screenshot for say aussiebikefinder shows how these entries are in place

Next Page »