Every client closed on time, every month.

The month-end close is the same twelve jobs, for every client, every month — and most small bookkeeping firms still run it from a spreadsheet. CloseKit generates each client's close from your template with business-day due dates, enforces reviewer sign-off, and chases client documents with a reminder queue. Flat-priced: no per-client or per-seat metering. From $19/month.

CloseKit product illustration
CKCloseKit — Month-end close board
Sample board
Sample client close · Generated from your template

Sample — Harbor Books Co. · September close

Sample close only — not a customer result. One close per client per period, generated from the standard 12-task template. Every due date is a business-day rule: weekends and your firm’s holidays are skipped.

TaskOwnerDueStatus
Collect bank & card statements
Documents
PreparerBD 1Done
Reconcile all bank accounts
Reconciliations · review required
ReviewerBD 3In review
Reconcile credit cards & loans
Reconciliations · review required
ReviewerBD 3Done
Clear uncategorized / for-review transactions to zero
Cleanup · blocker: client answer
PreparerBD 4Blocked
Record accruals, prepaids & depreciation
Adjustments · review required
PreparerBD 6To do
Review P&L vs prior month & prior year
Review · explain variances · review required
ReviewerBD 7To do
12 tasksIn the standard close template
BD 1–8Due-date range, in business days
0 openItems allowed when sign-off unlocks

Plus 6 more, same template: review AR & AP aging (BD 5), reconcile payroll (BD 6), review the balance sheet (BD 7), send financial statements and lock the period (BD 8).

Sample board — sample client and period, generated from the real standard template.Flat from $19/mo · no per-client or per-seat metering

Why CloseKit

The tools built for this job meter the two things a growing firm can't control: seats and client count. CloseKit does one job — the close — at one flat price.

Generated, not remembered

One close per client per period, built from your template: 12 standard tasks with due dates computed in business days — weekends and your holidays skipped. One open close per client, ever.

Sign-off that enforces itself

A close cannot be signed off with open tasks, unapproved reviews, or unanswered document requests. Blocked tasks require a reason. Reviewer rejections reopen the task automatically.

Document chasing, queued

Request the bank statement, the payroll register, the missing answer — CloseKit's reminder queue tracks what's owed and spaces reminders for you (at most 4, at least 2 days apart).

The close package

Every month ends with a package: every task, review, request, and the full audit trail of who did what, when. Export it as JSON or CSV — it's the record the close was done properly.

Flat plans from $19/mo

Solo covers 15 clients for $19 flat. A 3-person firm with 30 clients runs on Firm — $49 flat, not per seat, not per client.

CloseKit pricing

Straightforward plans — pick the tier that fits and check out securely. Every plan is described in full on the pricing page.

Solo

$19/mo

  • 1 user, up to 15 active clients
  • Unlimited close templates + built-in 12-task standard close
  • Business-day due dates with custom holiday list
  • Reviewer sign-off enforcement + blocker reasons
  • Document requests + reminder queue
  • Close package (JSON + CSV) with audit trail
Get Solo

Firm

$49/mo

  • Up to 5 users, up to 50 active clients
  • Everything in Solo
  • Firm dashboard: every open close, progress, overdue counts
  • Per-task team assignments
  • Priority support
Get Firm

Practice

$99/mo

  • Unlimited users, unlimited active clients
  • Everything in Firm
  • Template sets per service line
  • Audit-trail export across closes
Get Practice

Compare plans in detail

More of what CloseKit does

Features

The close, run like a system instead of a memory test.

The artifact that proves the month was closed properly.

Section, due date, owner and final state for all 12 template tasks. Approvals and rejections, by whom and when. Received or waived — sign-off is impossible while one is still open. The whole package, audit trail included, from one API call.

Close templates

Your close as an ordered task list: sections, business-day or calendar-day due offsets, reviewer-required flags, blocker types. The standard 12-task close — statements, reconciliations, cleanup, accruals, payroll, P&L and balance-sheet review, delivery, period lock — ships built in.

How it works

Business-day due dates

Offsets count from the month after the period being closed, skipping weekends and your firm's own holiday list. A task due on "business day 5" never lands on a Saturday.

Reviewer sign-off

Reconciliations and reviews can require a second pair of eyes. Done isn't final until a reviewer approves; a rejection reopens the task with the trail intact.

Document requests & reminders

Per-close requests to the client with received/waived resolution. The reminder queue surfaces what's due within 3 days or overdue, under a spacing policy — the dispatch list your mailbox or provider sends from.

What you get

Firm dashboard

Every open close on one screen: client, period, target close date, percent done, blocked count, overdue tasks and requests, reminders due. No asking around.

API-first, audit-trailed

Every state change is appended to an audit log and lands in the close package. The whole product is a documented REST API — bring your own automations.

How we compare

Competitor prices verified October 2026.

The details

Quickstart

From signup to your first generated close in minutes.

Pick your plan

Choose a tier above and check out securely with Stripe. Your firm workspace is provisioned and your API key delivered by email (operator step while we're in pre-launch).

Add your clients

curl -X POST localhost:8099/api/v1/clients \ -H "X-API-Key: ck_..." \ -d '{"name":"Acme Retail","contact_email":"owner@acme.example"}' Client caps follow your plan: 15 on Solo, 50 on Firm, unlimited on Practice.

Going further

Use the built-in close template

curl -X POST localhost:8099/api/v1/templates \ -H "X-API-Key: ck_..." \ -d '{"name":"Standard monthly close"}' Omitting the task list gives you the standard 12-task close — statements, reconciliations, cleanup, accruals, payroll reconciliation, P&L and balance-sheet review, delivery, period lock. Customize it anytime, or set your firm's holidays first so due dates skip them.

Generate the close

curl -X POST localhost:8099/api/v1/closes \ -H "X-API-Key: ck_..." \ -d '{"client_id":"client_...","template_id":"tmpl_...","period":"2026-09"}' Due dates are computed in business days from the start of the following month. One open close per client and period — duplicates are rejected.

Work it, then sign off

Work the close on the Close Board — every client, every close, progress and blockers on one screen — or straight from the API: move tasks to done; blocked tasks need a reason; review tasks need a reviewer's approval. Request documents from the client, watch GET /api/v1/reminders for the chase list, and sign off only when everything is complete — the API refuses otherwise. Your close package is at GET /api/v1/closes/<id>/package .

CloseKit product visual