Skip to content

Business management software · Active project record

Tenacious Systems

Every bike in the shop, from booked to picked up.

Bike fitting and service management from check-in to pickup: quotes, customer approvals, parts, invoices and one clear money card per job. Version 2.4.0 adds deposit handling, phone-camera barcode scanning and reconciliation when Xero is connected.

Web · Progressive Web AppVersion 2.4.0Source record · October 2026

Built around a specific job.

Tenacious Systems keeps the bike, customer, fit, service job, parts and billing history together. Each job shows Agreed, Billed, Paid and Owed, with one collection action and an auditable payment history. Deposits become customer credit and apply to invoices; a Books to check queue exposes differences between the app and Xero when that integration is connected. Cost and margin stay internal. Phone-camera barcode scanning, complete part names, received-order stock updates and bike-pinned Future Notes support work at the stand. The latest fit stays visible on the bike and its tickets.

Fits, services, quotes, parts and invoices together, with one money card per job and cost and margin visible only to the shop.

  • Fitting and mechanical service in one system, rather than two
  • Cost and price on every line, so profit is visible per job: and never visible to the customer
  • The bike is the record: history survives the visit and the owner
  • Built mobile-first for a phone or iPad at the workstand, not a back-office desktop
  • Multi-bike check-in that keeps each bike tracking independently
Ways people use it
  • Bike service intake and workflow
  • Bike fitting records and comparison
  • Quoting and customer approval
  • Invoicing and payment tracking
  • Parts ordering and stock
  • Job-level profit tracking

The working scope.

  • Service workflowEvery bike in the shop moves through one explicit set of stages, from booked to picked up.active
  • Quotes and customer approvalBuild a quote from the work list and send the customer a link to approve it.active
  • Cost and profit per jobEvery line carries what the shop paid as well as what the customer pays.active
  • One money card per jobAgreed, Billed, Paid and Owed with explicit collection and deposit actions.active
  • Bike-centred recordsThe bike is the record: fits, services, parts and ownership all hang off it.active
  • Future NotesDurable bike-pinned notes for near-future work, with a next-visit warning banner and an optional scheduled customer reminder email.active
  • Bike fittingBike-linked fit measurements, including hood width and hood-curve reach.active
  • Multi-bike check-inCheck a whole household in at once; each bike becomes its own job.active
  • Customer recordsOne customer, every bike, and the history behind them.active
  • Catalogue and parts orderingA parts and labour catalogue with stock levels, and a list of what needs ordering.active
  • SchedulingAppointments on a calendar so the bench is not over-booked.active
  • Finance viewRevenue against cost for the period, not just what was billed.active
  • DashboardWhat is in the shop, what is owed, and what is booked: on one screen.active
  • Books to checkA review queue for differences between the app and connected Xero records.active
  • Phone-camera barcode scanningScan parts onto a ticket, link unknown barcodes and undo a mistaken addition.active
Feature details and benefits

Service workflow

A service record carries the bike from scheduled, through check-in and scoping, into work, waiting on parts, ready and picked up. Each stage shows only what matters at that moment: the customer's request, the work list being built, what has been ticked off, and what is still outstanding. Multi-bike jobs keep a per-bike stage so one bike being held for a part does not stall the rest.

  • Nothing is forgotten between drop-off and pickup
  • The board shows the true state of the shop at a glance
  • A bike waiting on a part is visibly distinct from a bike being worked on

Quotes and customer approval

Work found at the bench becomes quote lines. The quote goes to the customer as a tokenised link they can open without an account, and their answer comes back onto the job. Work added after approval is flagged so it cannot be billed without being agreed first.

  • The customer sees exactly what was found and what it costs
  • Approval is recorded against the job, not remembered
  • Extra work found mid-service cannot quietly slip onto the bill

Cost and profit per job

Parts and labour lines record a cost alongside the price, so each job shows its own margin as it is built. Cost, profit and margin are internal only: they appear for staff behind a clear internal marker and never on the customer-facing quote page.

  • See the margin on a job before it is finished, not at year end
  • Price confidently because the cost is on the line in front of you
  • Customers never see cost or margin

One money card per job

Record payments, apply deposits and correct mistakes with reasons and retained history. Retried collection requests do not record the same money twice.

  • See the balance without reconciling separate cards
  • Keep a traceable correction history

Bike-centred records

Each bike carries its own identity, specification, complete service history, fit history and ownership chain. When a bike changes hands the history follows the bike, so the next mechanic sees what was done and when.

  • Answer 'when did we last do this chain?' in seconds
  • History survives a change of owner
  • Every past decision about a bike is in one place

Future Notes

Pin a note to a bike for work that is not due today. Active notes raise a warning banner at check-in and while the bike is in service. Create, mark done, dismiss and undo on the bike Overview. At create time you can schedule a customer reminder for 1, 2, 3 or 6 months; the reminder shows on the card with Cancel, and closing the note cancels a pending send. Voice dictation is available on create. Reminder emails go in a morning batch once Resend is connected. Cost and margin never appear in the customer email.

  • Near-future work stays on the bike instead of on a scrap of paper
  • The next visit surfaces the note without depending on memory
  • Optional customer reminder on a schedule, cancellable from the card

Bike fitting

Record saddle-to-bar drop/rise, bar drop and the new M/N hood measurements. Signed values can be entered on phone number pads, and the latest fit appears on the bike and tickets.

  • A returning fit client starts from the numbers you set last time
  • Position changes are traceable session to session
  • Fit and mechanical work live in one system

Multi-bike check-in

One check-in can take several bikes, including bikes belonging to another member of the household. Each becomes its own row on the service board with its own stage and its own notes, while staying linked to the person being billed.

  • A family dropping off three bikes is one conversation, not three
  • Each bike still tracks independently
  • Cross-customer bikes stay attributed to the right owner

Customer records

Customer records hold contact details, notes, every bike they own or have owned, and their full service and spend history.

  • Recognise a returning customer immediately
  • See the whole relationship, not one visit
  • Notes travel with the person

Catalogue and parts ordering

Parts and labour live in a catalogue with cost, price, stock level and reorder threshold. Parts needed for live jobs collect into an ordering list grouped by vendor, and arrive back against the job that needed them.

  • Quote from a catalogue instead of from memory
  • Know what to order and for which job
  • Stock levels reflect what has been used

Scheduling

Bookings appear on a calendar and on the dashboard, and convert into a checked-in service when the bike arrives.

  • See the week before committing to it
  • A booking becomes a job without re-keying

Finance view

Money taken, cost incurred and the resulting margin, drawn from the same line-level cost and price data used to build the jobs. Expenses can be recorded alongside.

  • Know what the shop actually made
  • Margin comes from real line data, not an estimate

Dashboard

Bikes currently in the shop, outstanding quotes, unpaid invoices, revenue for the month, upcoming appointments and the active job list.

  • Start the day knowing where things stand
  • Money owed is visible without going looking

Books to check

Choose Match Xero, Send mine to Xero or Leave it. Pending money and customer credit stay visible while discovery failures are retried.

  • Reconcile differences deliberately
  • Keep unsent payments visible

Phone-camera barcode scanning

The ticket scanner supports repeated scans, +1 and Undo; catalog items can also receive a scanned UPC.

  • Add parts at the workstand
  • Type worn or unreadable barcodes

Project details.

Tenacious Systems specifications
PlatformWeb · Progressive Web App
AvailabilityActive project record
Version2.4.0
Source recordOctober 2026Synchronization date, not a capture or launch date
Who it is forIndependent bike shops · Bike fitters · Mobile bike mechanics · Service departments in bike retail
Tools behind the buildNext.js 16 · React 19 · TypeScript · Supabase · PostgreSQL · Tailwind CSS v4 · Vercel
Version2.4.0Repository release notes: docs/releases/v2.4.0.md · as of September 2026

Public update log.

Recorded update · 2026-09-30 · 2.4.0

2.4.0: clearer money, barcodes and fit records

One money card now shows Agreed, Billed, Paid and Owed. The release adds auditable deposit and payment corrections, a Books to check queue for connected Xero accounts, phone-camera barcode scanning, complete part names and new fit measurements.

  • Retried collection actions record each payment once
  • Deposits and customer credit stay attached to their cash history
  • Books to check exposes unsent money and differences when Xero is connected
  • Scan, link, increment and undo ticket parts with a phone camera
  • Received parts update stock; complete names remain readable
  • Latest fit details and bike-pinned Future Notes follow each ticket
Tenacious Systems updates
September 20262.4.0: clearer money, barcodes and fit recordsOne money card now shows Agreed, Billed, Paid and Owed. The release adds auditable deposit and payment corrections, a Books to check queue for connected Xero accounts, phone-camera barcode scanning, complete part names and new fit measurements.
August 2026Future Notes: durable bike notes, next-visit banner and optional reminder emailNear-future work pins to the bike and survives across visits. Active notes raise a warning banner at check-in and in service. Optional customer reminder emails use 1/2/3/6 month presets and send in a morning batch once Resend is connected. Product version remains 2.3.0.
July 2026Supplementary billing, approval history and a clearer build listWork added to a job after the customer has approved it is now tracked and billed properly, approvals are recorded as an auditable history, and removed lines can be undone from the build list.

A useful idea of your own?

Start with the business task. We will work out what needs building and what belongs in the scope.

Discuss your project

Thursdays

Get the digest on Thursdays

Each Thursday: the shop notes and AI daily issues from the last seven days, and one product. Unsubscribe from any issue.