Onboard, track, bill, paid.
Client billing for anyone who schedules work and bills for it.
Send a client one link and they set up their own job. Track time from the Google Calendar event you already made. Add the parts receipt with markup. Generate the invoice, Stripe sends it, the client pays by card or bank.
Your dashboard flips to Paid on its own. Friday invoicing turns into a ten minute job.
Three minutes, no login. The tour follows a design studio for a week. Swap in your trade and it is the same five steps.
Same loop, your words.
Plumbing, HVAC, electrical
Service calls off the calendar, parts with markup, invoice sent before you leave the driveway.
Design studios
Site visits, sourcing, the tile deposit on the studio card, one statement at the end of the week.
Consultants and bookkeepers
Hours against a handful of clients, retainers, Friday invoicing done in ten minutes.
Any trade that schedules work
If it goes on a calendar and ends with an invoice, this is the loop.
The job is already on your calendar.
So that is where you track it. One save, it is billable.
Clients type their own details.
Billing address, job address, what they need. You send one link.
Send the bill, watch it get paid.
Stripe emails it, takes card or bank, and your screen updates itself.
Five steps. Two of them are the client’s.
Watch all five, a design studio’s week with invented clients, no login.
- 1
Invite
Name, email, job name. The client gets a link and fills in the rest on their phone. Or skip it and add them yourself.
- 2
Track
Open the calendar event, pick the type of work, save. The job is matched from the title.
- 3
Costs
Photo the receipt, enter the amount, pick the markup. Parts, materials, anything you bought for the job.
- 4
Bill
Select what is unbilled, generate the invoice. Hourly or flat rate. Stripe sends it with a pay link.
- 5
Paid
Card or bank transfer. The dashboard flips to Paid the moment Stripe hears about it.
Everything between the first call and the paid invoice.
No CRM, no estimating software, no mood boards. Those live elsewhere. This is the money loop, done well.
Client onboarding
One link. The client's answers become the record: billing address, job address, what they need.
Google Calendar add-on
Track billable time without leaving the calendar. Job matched from the event title, rate from the job.
Costs with markup
Receipt photo, amount, markup percent. The client sees the billed number. The photo rides along on the invoice.
Hourly or flat rate
Time lines, cost lines, or a flat fee for the job. Mix them on one invoice.
Stripe invoicing
Hosted pay page, card and US bank account. No fee on bank transfer. Stripe handles the reminders.
Live dashboard
Outstanding, paid this month, unbilled. Updates when a payment lands. No refresh.
Rates per job
A default rate per person, an override per job or client. Change it once.
Your words
Jobs or projects, techs or designers, your list of work types. Set once at signup.
Ask. The words are settings, the rest is the same.
Job types, intake questions, what you call a client, hourly or flat rate. If your trade needs a step the loop does not have, that is a fifteen minute conversation, and usually a week of work on our side.
Boring parts, on purpose.
- Plain Postgres. Your data is a standard database you can export any day with one command.
- Runs anywhere. One container, one database. Our server, or yours if you would rather.
- Open template. The starter this is built on is public. Nothing you depend on is a secret.
One number.
Less than one billable hour a month. It pays for itself the first time an expense does not get forgotten.
$149 a month per firm
Every designer on your team, unlimited clients and projects. Stripe's processing fee is the only other cost, and bank transfers are free.
Founding firms: setup on us
We import your client list and set your rates. First month free while we get it right.
Cancel any time
Month to month. Export your data on the way out, or stay because it works.
Bring your rate sheet and last month’s invoices. We will run one through in your words.
Chris Brody, Groundworks Development
groundworksdevelopment@gmail.com
(518) 806-1278