Administration
Billing
Your company's subscription to Harbor, the plan, the free trial, seats, renewals, the card, and what read-only mode means.
Billing is where the owner pays for Harbor TMS. It shows the plan you are on, its price, when it renews or when the trial ends, and how many of your seats are used. Payments go through Stripe. This screen stays usable even when the account is read-only, because paying is the way out.
- Where
- Administration → Billing (/billing)
- Who can open it
- Billing · view. By default: the Owner only
- Who can choose a plan or manage the card
- Billing · edit
- Who can cancel
- Billing · delete
- Free trial
- 14 days on every plan
- A seat is
- One active staff account. Portal users do not use seats
Plans
These are the plans a new company is offered. The platform team can change prices and plans (see Super-admin console), so the Plans section on your Billing page is always the current list.
| Plan | Price | People | For |
|---|---|---|---|
| Starter | $149 / month | Up to 5 | A small desk getting off spreadsheets |
| Growth | $399 / month | Up to 20 | A growing brokerage with ops, sales and finance |
| Scale | $999 / month | Up to 100 | Multi-desk brokerages |
Account status
| Status | Badge | What it means |
|---|---|---|
| Free trial | Free trial | Everything works. The trial ends 14 days after sign-up |
| Active | Active | Paid up |
| Payment due | Payment due | The last payment failed. The account is read-only |
| Cancelled | Cancelled | The subscription ended. The account is read-only |
| Suspended | Suspended | Switched off by the platform team. Nobody can sign in |
The path is: free trial → active, active ↔ payment due, and either can end as cancelled. Suspension is a platform decision that billing never undoes.
Read-only mode
When the trial has ended without a plan, a payment has failed, or the subscription is cancelled, the account becomes read-only:
- Everyone can still sign in, open every screen they normally can, and export.
- Nobody can save: any create, edit, delete or approve is refused with "Your account is read-only until billing is fixed."
- A red banner across the panel says why: "The last payment did not go through…", "Your subscription has ended…" or "Your free trial has ended…".
- Billing itself keeps working, and so do exporting your data and closing the account (Export & close the account).
Fix the payment or choose a plan, and the account unlocks straight away.
Trial reminders
In the last 5 days of the trial, a banner counts down: "Your free trial ends in 3 days. Choose a plan to keep saving." A background job emails the company's owners when 3 days or fewer remain, and switches the account to read-only when the trial ends without a subscription.
What you see
The header shows the status badge, and Test mode — no card charged when real card payments are not set up on this server.
| Figure | Meaning |
|---|---|
| Plan | The plan's name and monthly price, or None |
| Status | As above |
| Trial days left / Next renewal | During the trial, the days left and the end date; otherwise the next renewal date |
| Seats used | Active staff accounts out of the plan's limit. Amber when full |
The Plans section shows a card per plan with its price, seat limit and description. Your plan is marked Current.
Choose or change a plan
Find the plan
In the Plans section.Click its button
Choose when you have no subscription, Upgrade for a dearer plan, Switch for a cheaper one, or Pay for this plan for the plan you are trialling.Pay
With no subscription yet, you go to the payment page. With one, the plan is switched at Stripe and the change arrives back within moments.
After paying you return to Billing with "Thank you. Your … plan is active."
The server refuses when:
| Message | Why |
|---|---|
| "Growth allows 20 people and you have 23 active. Deactivate 3 first." | The new plan has fewer seats than you have active people |
| "You are already on Growth." | Nothing to change |
| "This account is suspended. Contact support to reopen it." | Suspended accounts cannot change plan |
Seats are also checked whenever someone is invited or reactivated on Users.
Manage the card and invoices
Manage card & invoices opens Stripe's billing page, where you update the card and download Stripe's invoices for your subscription. It is disabled until you have chosen a plan once.
Cancel
Cancel subscription asks first: "Billing stops and the account becomes read-only: everyone can still look, nobody can save. You can choose a plan again at any time." Click Cancel subscription to confirm, or Keep it. The account becomes read-only once Stripe confirms. Your data is kept. To delete it, see Export & close the account.
Test mode
| Test page | Where | What it offers |
|---|---|---|
| Checkout | /billing/checkout | Company, plan, people and monthly price, and a Pay $… (test) button that switches the plan on exactly as a real payment would |
| Card & invoices | /billing/test-card | Fail next payment (only while active) turns the account to Payment due so you can see read-only mode; Pay now (only while payment is due) settles it |
Both pages exist only in test mode. With real Stripe keys they are not found.
What is recorded
Billing actions write audit entries: billing.plan_change, opening the card portal (billing.portal_opened), cancelling, and in test mode billing.test_checkout, billing.test_payment_failed and billing.test_payment.