Total clients
—
Upcoming shoots
—
Galleries in progress
—
Awaiting delivery
Outstanding invoices
—
Upcoming shoots
| Client | Date | Type | Location | Package | Time | Status |
|---|---|---|---|---|---|---|
| Loading... | ||||||
Galleries awaiting delivery
| Client | Shoot type | Shoot date | Edit status | Images | Progress |
|---|---|---|---|---|---|
| Loading... | |||||
Loading...
← Back to companies
Company saved!
Company details
Address
Notes
← Back to companies
| Name ↕ | Email ↕ | Phone | City ↕ | Shoots ↕ | Services | Release | Source ↕ |
|---|---|---|---|---|---|---|---|
| Loading... | |||||||
← Back to clients
Client added and saved to your database!
Contact information
Address
Services required
Additional details
← Back to client
Client details updated!
Contact information
Address
Services required
Additional details
Booking saved to your database!
Booking details
Shoot history note (optional)
← Back to client
Booking confirmation details
Preview
Gallery tracker
| Client | Type | Date | Status | Progress | Gallery link | Action |
|---|---|---|---|---|---|---|
| Loading... | ||||||
Business details
Invoice details
Line items
Service
Hrs
Rate ($)
Live preview — A4
Business details
Quote details
Line items
Service
Hrs
Rate ($)
Live preview
Total invoices
—
Total quotes
—
Expiring soon
—
Within 7 days
Expired / overdue
—
All records
| Type | Number | Client | Amount | Issue date | Due / Expiry | Countdown | Status | Action |
|---|---|---|---|---|---|---|---|---|
| Loading... | ||||||||
Total outstanding
—
Pending invoices
—
Deposits awaited
—
Outstanding invoices
| Client | Invoice # | Total | Balance due | Due date | Status | Action |
|---|---|---|---|---|---|---|
| Loading... | ||||||
No packages yet — create your first one below.
Create package
Business settings
Settings saved — invoices will now use these details automatically.
Appearance
Accent colour
Display mode
Database connection
1
Run SQL in Supabase (first time only)
Go to your Supabase project → SQL Editor → New query. Paste and run:
alter table clients disable row level security;
alter table bookings disable row level security;
alter table deliverables disable row level security;
alter table invoices disable row level security;
create table if not exists settings (
id int primary key default 1,
business_name text, email text, phone text,
abn text, bsb_account text, address text,
constraint single_row check (id = 1)
);
insert into settings (id) values (1) on conflict do nothing;
alter table settings disable row level security;
-- Add contract tracker to clients (run once):
alter table clients add column if not exists services_required text;
alter table clients add column if not exists company text;
alter table clients add column if not exists client_type text default 'Individual';
alter table clients add column if not exists
contract_signed text default 'No';
alter table clients add column if not exists
deposit_received text default 'No';
alter table clients add column if not exists
final_payment text default 'No';
alter table clients add column if not exists
gallery_delivered text default 'No';
2
Connection status
Checking connection...
3
Custom domain (Cloudflare)
When you are ready to use a custom domain like clients.mashfordphotography.com.au, upload this file to Cloudflare Pages and point a CNAME at it. Everything else stays the same.