Custom admin panels

The back office your team works in

We build the internal systems that businesses run on once the spreadsheet has stopped coping. Quoting, invoicing, scheduling, approvals and reporting, all in one place, shaped around the way your team already works rather than the way a template expects them to.

What this covers

The parts a business actually runs on

Most panels we build combine several of these behind one login. They share one database and one set of permissions, so a quote, the job it turns into and the invoice at the end of it are the same thread rather than three systems somebody has to reconcile.

01

Pipelines and job stages

Enquiries, deals and jobs move through the stages your team already talks about, each one with an owner, a next action and the notes that explain why something is sitting still. Everybody is looking at the same list, so nobody has to ask where the week stands.

02

Quoting and pricing

Quotes built from your own pricing rather than retyped from a document somebody keeps on their desktop, with earlier versions kept instead of overwritten. When a customer asks what changed between one price and the next, the answer is on the screen.

03

Invoicing and payments

Invoices raised from work that has actually been done, payments recorded against the right invoice, and card or direct debit collection through Stripe and GoCardless where you take money online. Your accounts package stays in step through a Xero sync.

04

Scheduling and assignment

A calendar and a workload view that show who is doing what and when, built around how your team is actually organised. Changes made in the office reach the people out on the road without a phone call and a whiteboard photograph.

05

Approvals and sign-off

The checks your business relies on become part of the software rather than a rule people are meant to remember. If something needs a manager to approve it before the next step happens, the next step is not available until they have.

06

Roles and permissions

Access shaped to the job somebody does, so sales, operations and finance each see the part of the system that belongs to them. Every meaningful change is recorded with a name and a time, which makes an awkward question much easier to answer.

How we approach it

Built around how you already work

Off-the-shelf tools solve the average version of your problem, and they charge you for the privilege of fitting into their screens. Your pricing gets flattened to match a form somebody else designed, your stages get renamed into a vocabulary nobody in the building uses, and the one step that makes the whole business work ends up as a note in a text box. A few months later there is a spreadsheet running alongside the software, and you are paying for the tool while maintaining the workaround.

A custom panel starts from the other direction. We sit with the process you run today, including the awkward parts nobody enjoys explaining, and build the screens around it. If your prices come off a rate card that changes twice a year, the panel understands rate cards. If nothing can be invoiced until somebody senior has looked at it, that rule lives in the software instead of in one person, and it still applies when they are on holiday.

The work is usually staged. We start with whichever part is costing the most manual effort, get it live and in daily use, then extend outwards while people are already logging in every morning.

lightshift - one job, start to finish
  • 09:14 quote drafted from your own pricing
  • 09:41 sent to the customer for approval
  • 10:02 approved, and the work is scheduled
  • 11:27 completed and signed off by a manager
  • 11:31 invoice generated as a branded PDF
  • 14:52 payment recorded against the invoice

Numbers you can trust

One version of the truth

A total should not depend on which screen produced it. In the panels we build, the pricing and tax rules live in the database rather than in each individual form, so an import, a scheduled job and a person clicking a button all arrive at the same figure. Nobody is typing a total in by hand, which removes most of the ways a number goes quietly wrong.

That matters most on the day something does go wrong. Because every record carries a history of who changed what and when, a figure that looks off can be traced back to the moment it moved and the person who moved it, rather than becoming a conversation about which spreadsheet is the real one.

Reporting and documents

What comes out the other end

A panel is only worth having if the information can leave it in the shape the rest of the business needs. Filters, date ranges and saved views come as standard, and every view has a way out.

  • Dashboards that read the live records your team is working in, so a Monday morning review is looking at today rather than a report somebody assembled on Friday afternoon.
  • Quotes, invoices, statements and job sheets produced as branded PDFs straight from the record, which means the document and the system can never disagree.
  • Spreadsheet exports of any view you can see on screen, because there will always be somebody who wants the numbers in a spreadsheet.
  • Email that goes out through Postmark, so you can tell whether the document you sent actually arrived.

Underneath

What we build it on

TypeScriptSvelteKitNext.jsAstroPostgresSupabaseStripeGoCardlessXeroPostmarkn8nDockerCloudflareGoogle APIsTypeScriptSvelteKitNext.jsAstroPostgresSupabaseStripeGoCardlessXeroPostmarkn8nDockerCloudflareGoogle APIs

Start a project

Tell us how the business actually runs

Describe the process, the spreadsheet quietly holding it together and the part that keeps going wrong. We will come back with questions, a shape for the build and a straight answer on whether we are the right people for it.