Everything it takes to get paid.

A small, complete set of tools for billing clients and running recurring services, with a plugin system for the rest.

Bill

From first quote to renewal.

The documents and the schedule, without a spreadsheet in between.

  • Invoices

    Automatic numbering, taxes by country and region, and partial payments. Refund part or all of a payment.

    Download invoices as PDFs, which are also attached to the emails. Pages print cleanly, and each invoice has an unguessable pay link that works without a login.

  • Quotes

    Send a quote that the client accepts online with one click. It converts straight into an invoice and the services it orders.

  • Products and recurring services

    Prices in several currencies, setup fees, and billing cycles from monthly to every three years. A daily billing run raises renewal invoices, sends reminders, and suspends and terminates unpaid services. Customers can cancel at the end of the term.

  • Usage-based billing

    Give a product meters priced per unit, in tiers or in packages. Usage is billed in arrears on the renewal invoice.

  • Free trials

    Set a trial length on a product and customers get the service straight away with no invoice. The first invoice is raised when the trial ends, with a reminder email beforehand. A trial is once per customer per product, can require a saved payment method, and staff can extend or end it early.

  • Plan changes

    Upgrades, downgrades and billing-cycle changes, from the portal or the admin area, with the unused time credited and the rest charged by the day on one invoice. Downgrades wait for the next renewal by default, and every change is recorded on the service.

  • Cancellations you control

    Choose whether customers cancel at the end of the billing term, immediately, or pick for themselves. If you allow immediate cancellation, you can refund the unused days automatically.

  • Internal accounts

    Mark your own team or test customers as internal: their services are free, and they are left out of revenue, outstanding and overdue figures on the dashboard and in the API.

Collect

Get paid without chasing.

Payments that fit the way your customers already pay.

  • Stripe and PayPal

    Hosted Stripe Checkout and PayPal checkout come bundled, with webhooks and refunds. Other payment providers are added as plugins.

  • Saved payment methods and autopay

    Customers can save a payment method and let renewals charge it. When a charge fails it is retried on a schedule, and the customer is emailed each time.

Serve

A portal your customers will use.

Self-service for the common questions, under your brand.

  • Client portal and order form

    Customers order from a catalogue with plan cards, pay invoices, accept quotes, manage and change their services, and create API tokens. Staff can open any account with “view as client”.

  • Support tickets

    Optional, and off until you switch them on. Departments, email in through IMAP or piping, custom fields, internal notes, assignment, and secure attachments that are stored privately and checked by content.

    Replies only thread onto a ticket from its own customer, so quoting a ticket number cannot inject a message.

  • Knowledge base

    Optional articles written in Markdown, in categories that nest to any depth, published at /kb with search, a table of contents and a helpful yes/no vote. Guests can read them or only signed-in customers, as you choose.

  • Your logo, name and colour

    The sign-in pages, client area and public pages show your business name or logo. Pick a brand colour and the app, emails and PDFs use it; if the colour would be hard to read, it is nudged to the closest accessible one for each theme. Light and dark themes are built in.

Build

An API and a plugin system.

The core stays small; your business logic goes in a folder.

  • REST API and webhooks

    A REST API (v1) for customers and staff, with an OpenAPI description, tokens that carry only the abilities you give them, and rate limiting. Outbound webhooks are signed with HMAC-SHA256 so you can verify them.

    Read the docs
  • Plugins

    A plugin is a folder with a plugin.json and a class. It can register payment gateways, provisioning modules, routes, views, menus and event listeners, and run its own migrations. Install, upgrade and remove them from a zip in the admin area; a failed upgrade rolls its migrations back.

  • Bundled plugins

    Stripe, PayPal, cPanel and WHM, DirectAdmin, Enhance, and a license server that issues license keys with a public verify and activate API and offline-verifiable signatures.

    The control-panel plugins follow each vendor’s published API documentation but have not been tested against live servers yet, so try them on a test account first.

Safe

Protect the accounts.

Sign-in security for your staff and your customers.

  • Two-factor sign-in

    An authenticator app and recovery codes for staff and customers, with trusted devices. You can require it for staff.

  • Staff and departments

    An administrator-only Staff page. Staff see the tickets in their departments and the ones assigned to them; administrators see everything.

Run

Runs where you already have hosting.

No platform to adopt.

  • PHP hosting or Docker

    Upload a zip to ordinary PHP hosting with no SSH, or run one Docker container for amd64 or arm64. It works with SQLite, MySQL, MariaDB or PostgreSQL, and the web installer sets it up.

    Tidemark Billing is open source (MIT), so the code and the docs are yours to read.

    See how to install it

Run it on your own server.

Open source (MIT) and yours to change. Install it in about ten minutes.