Skip to content

Changelog

What’s new in Hoursmith

Every meaningful change we ship — new features, improvements, fixes, and security updates.

Subscribe via RSS
  1. MCPImproved

    MCP server supports HTTP clients like Odin

    @hoursmith/mcp-server 0.7 now supports Streamable HTTP for MCP clients that ask for a URL instead of a command.

    • Stdio remains the default for Claude Desktop, Cursor, Zed, and other clients that spawn npx -y @hoursmith/mcp-server.
    • HTTP clients can run the same package with HOURSMITH_MCP_TRANSPORT=http and connect to http://localhost:8000/mcp/.
    • HTTP mode authenticates per request with Authorization: Bearer hsk_..., x-api-key, api-key, or x-hoursmith-api-key.
    • New HTTP settings let you change the host, port, path, and JSON response behavior when a client needs it.

    See Configure Odin and HTTP clients for the setup steps.

  2. PaymentsImproved

    Processing fees on any payment method

    The optional processing fee is no longer card-only. You can now add a percentage or flat fee to any payment method — bank transfer, Wise, cheque, and other custom methods included.

    • Card fees work exactly as before: collected at checkout, on top of the balance.
    • Bank transfer and custom methods settle outside Hoursmith, so their fee is disclosure-only — the client sees a clear "amount due + fee = total to pay" breakdown on the invoice page, portal, PDF, print, and email. Nothing is auto-charged, and the invoice total never changes.
    • Set a default fee per method in Settings → Payments, override or waive it per client, or adjust it per invoice on the Payment options card — the same three levels as the card fee.
    • When you record a manual payment, the processing fee field now pre-fills from the chosen method's configured fee, so your books match what the client was shown.

    Your existing invoices are untouched — no past invoice grows a surcharge.

  3. NewImproved

    Hoursmith now speaks four languages

    You can now use Hoursmith in English, Spanish, French, or German.

    • Set your App language under Account → Preferences. It's a personal choice — it follows you across every workspace and doesn't change what your teammates see.
    • App language is separate from regional formatting (how dates, times, and numbers display), so you can read the app in one language while keeping your local date and number format.
    • Your own content — invoice notes, client and project names, payment instructions, and email templates — is always shown exactly as you wrote it. Only Hoursmith's own labels are translated.

    More languages may follow. (Marketing and long-form legal pages stay in English for now.)

  4. Improved

    Live chat support inside the app

    Need a hand? You can now chat with us right inside the app. Look for the support launcher, plus a Support action in the account menu (and the More sheet on mobile).

    • Available to everyone who's signed in — no need to switch to email for a quick question.
    • Agency workspaces keep priority support routing.
    • You can still email hi@hoursmith.app any time.
  5. Improved

    The app moved to my.hoursmith.app

    We split Hoursmith across two domains:

    • hoursmith.app — the marketing site.
    • my.hoursmith.app — the product: sign-in, your dashboard and settings, public invoice links (/i/…), the client portal, and the API.

    Nothing you've shared breaks. Old hoursmith.app/i/… invoice links, portal magic links, and password-reset links automatically redirect to my. with their tokens intact.

    For developers:

    • The API's canonical base URL is now https://my.hoursmith.app/api/v1 (the old host still answers for existing integrations, but update your config when you can). See Authentication.
    • The MCP server 0.6 now defaults HOURSMITH_API_URL to https://my.hoursmith.app.
    • Bookmark my.hoursmith.app for day-to-day work.
  6. SecurityAPIMCP

    API security hardening, request ids, and MCP safety

    API

    • Tighter Member-token scoping. Member tokens now get 403 on clients (they previously returned client billing data), project money fields are stripped for Members, the members and organization endpoints no longer over-share, and tokens for closed workspaces are rejected. See Permissions & plans.
    • Request ids. Every /api/v1 response carries an X-Request-Id header, and error bodies include a matching requestId — quote it when contacting support. See Errors.
    • Fixes: DELETE /clients/{id} now correctly returns 409 when the client has children; project rate inheritance works over the API; and an idempotency replay race was closed.

    MCP

    • MCP server 0.5 — the five destructive tools now require confirm: true, and every tool advertises read-only/destructive/idempotent hints so clients can warn you. See Available tools and Security.
  7. ImprovedFixed

    Live email domain verification (and a test send that uses your provider)

    Sending from your own domain just got a lot more trustworthy — see Email settings.

    • Live domain verification for Resend and Amazon SES: Hoursmith queries the provider for real SPF/DKIM/DMARC status, lists the records to publish, and gives you a Re-check button with a recorded "verified" time. (SMTP still shows the records for you to publish.)
    • The test email now routes through your saved provider (it used to quietly use the platform sender), and names the provider used — so you get real proof your sender works.
    • A Current sending setup card shows exactly how your mail will be sent.
    • Re-saving SMTP/SES/Resend keeps your stored secrets — no more re-typing passwords/keys.
  8. NewImproved

    Essentials: time-report PDF, unbilled expenses in Uninvoiced, and more

    A batch of practical, frequently-requested improvements:

    • Export the time report to PDF — a clean landscape table next to Export CSV, on Studio and up. See Export the time report.
    • Unbilled expenses now count in the dashboard's Ready to invoice card and the Uninvoiced report — combined time + expenses, per client, with a deep link to the filtered expenses list.
    • Duplicate an expense from any row (great for recurring costs) — Duplicate an expense.
    • Email a receipt when recording a manual payment (off by default) — Record manual payments.
    • A timesheet CSV twin of the timesheet PDF, and a Download all as zip of an invoice's documents.
    • A workspace storage cap (default 10 GiB) as a fair-use valve for uploads.
  9. New

    Expense receipts and invoice supporting documents

    Two related additions for backing up what you bill.

    Expense receipts

    • Attach up to 10 receipt files (PDF, PNG, JPG, WebP, GIF, HEIC) to any expense — see Receipts.
    • A paperclip count on each expense row opens a quick download popover (no need to open the expense).
    • The receipt set freezes once the expense is on an invoice. Expense receipts are manage-tier only.

    Invoice supporting documents

    • A builder Supporting documents panel lets you attach a client-safe timesheet PDF (quarter-hour-rounded, reconciles with invoiced hours, no rates) and share expense receipts with the client — all of them or a chosen few. See Supporting documents.
    • They appear on the public invoice page, the client portal, and the invoice email (the timesheet PDF is attached). Download all as zip bundles everything on the invoice detail page.
  10. PaymentsImproved

    Payment-method polish — higher fee cap, preferred currency, clearer pickers

    A batch of payment-method refinements:

    • Card processing fee percentage cap raised to 50%, and the flat-amount cap was removed (a fee still can never exceed the amount being paid).
    • Preferred currency per method now shows to clients — a badge and a "This account receives payments in EUR" line on the invoice page, PDF, and email.
    • Internal notes disambiguate same-named methods on every internal picker (shown as Name — note, never client-facing) — two "Bank transfer" accounts are finally easy to tell apart.
    • The invoice drawer's Record payment gained the "Received via" picker for parity with the detail page.
  11. PaymentsBillingImproved

    Named payment methods, flat card fees, and in-app plan management

    Payments

    • Named payment methods. Settings → Payments is now a single list — a Stripe card row plus as many named manual methods ("Main bank account", "Wise", "Cheque"…) as you need, each with its own bank fields, instructions, enabled/default flags, and ordering. Pick which appear on each invoice. See Payment methods.
    • Card fees can be flat or a percentage. Choose "% of balance" or a flat amount.
    • Record-payment gains a "Received via" picker so payment history shows which account the money arrived through.
    • API v1 invoice responses and webhook payloads now include a paymentMethods array.
    • Fixed: multiple partial refunds no longer double-count.

    Billing

    • Change your plan in the app. The Billing page shows all three plan cards in every state, with upgrade/downgrade actions, a downgrade impact dialog, and a Resume subscription action to undo a scheduled cancellation. See Billing & plans.
  12. PaymentsAPIImproved

    Per-invoice payment methods, webhook delivery history, and CSV exports

    A big day for getting paid and for integrations.

    Payments

    • Per-invoice payment methods. Choose, per invoice, whether clients can pay by bank transfer, card, or both — with defaults that cascade from your workspace to each client to each invoice. You can also add an optional percentage card processing fee that the client pays on top at checkout. The fee is recorded on the payment and never changes the invoice total. See Per-invoice payment methods.
    • QR codes now appear on the public invoice page and the PDF, so clients can pay from their phone. Paid invoices render as a clean receipt.

    Webhooks & API

    • Delivery history, replay, and test events for webhooks. Inspect each attempt, re-fire a delivery (it reuses the same event id), or send a synthetic test event to a new endpoint.
    • CSV export for projects and time entries joins clients in Settings → Imports — round-trips cleanly with import.

    Improved

    • Stripe Connect via OAuth. If your business already has a Stripe account, you can now pick which account to connect instead of creating a new one. See Connect Stripe.
  13. APIMCPImproved

    API filtering & sorting, plus MCP 0.4

    • Filtering & sorting on every list endpoint — search, field filters, date and number ranges, and sort.
    • MCP server 0.4 adds matching search/filter parameters and reconciles its contract with the API so the two never drift.
  14. APIMCP

    A public REST API and an MCP server

    Hoursmith opens up to developers and AI assistants.

    • A typed, versioned REST API (/api/v1) with Bearer-token auth, idempotent writes, cursor pagination, and a hosted OpenAPI reference.
    • The MCP server (@hoursmith/mcp-server) wraps the API so AI tools can log time, create clients and tasks, and read invoices in natural language.
    • Both require Studio or Agency.
  15. API

    Outbound webhooks

    Webhooks let you react to events in real time.

    • Subscribe to events like invoice.paid, time_entry.created, and task.completed.
    • Payloads are signed with Hoursmith-Signature (verify them).
    • Failed deliveries retry with backoff over ~32 hours.
    • Available on Agency.
  16. New

    Expenses and Telegram notifications

    Two additions land together:

    • Expenses — track client costs, mark them billable, and add them to an invoice. Filter by client, project, category, and billed status.
    • Telegram notifications — get mentions, task assignments, and "client paid" alerts in Telegram. Available on Studio and Agency.
  17. Billing

    Founding-100 — 50% off, forever

    A thank-you to early adopters: the first 100 workspaces on an annual plan get 50% off, forever. See Plans & limits and the pricing page.

  18. Security

    Roles, permissions, and money-blind contractors

    Hoursmith is now safe to use with contractors and larger teams.

    • Four roles — Owner, Admin, Manager, Member.
    • Members are money-blind: they never see rates, amounts, invoices, expenses, or clients, and only see projects they're added to. See Money-blindness.
    • Role-aware dashboards for admins and members.
  19. New

    Import from Paymo, CSV, and Excel

    Migrating in is now a guided wizard.

    • Import from Paymo via API — clients, projects, tasks, time, and invoices, with a required team-mapping step.
    • Import from CSV/Excel for clients, projects, and time entries, with column mapping and downloadable templates.
    • Undo a successful import within 24 hours.
  20. New

    Rich text and file attachments on tasks and comments

    Task descriptions and comments now support a rich editor.

    • Bold, lists, headings, links, and code.
    • @mentions that notify teammates in-app and by email.
    • File and image attachments via paste, drag-and-drop, or the attach button.
  21. NewPayments

    A client portal for viewing and paying invoices

    Give clients a tidy home for their invoices.

    • Magic-link login — no passwords for your clients.
    • They can view and pay invoices and download PDFs.
    • Branded with your logo. Available on Studio and Agency. Single-invoice public links work on every plan.
  22. Security

    Two-factor authentication — passkeys and authenticator apps

    Add a second factor in Account → Security.

    • Passkeys (WebAuthn) for passwordless sign-in.
    • Authenticator apps (TOTP) with one-time backup codes.
  23. Billing

    Plans, trials, and flat-fee pricing

    Subscriptions arrive with a deliberately simple, flat-fee model.

    • Free (3 members), Studio (10 members), Agency (25 members) — one price each, no per-seat charges. See Plans & limits.
    • A 14-day trial with no card required.
    • Manage everything through the Stripe billing portal in Settings → Billing.
  24. New

    Send invoices from your own email domain

    Invoices now send from your email, not a generic platform address.

    • Configure a custom sender in Email settings — SMTP, Amazon SES, or Resend.
    • A delivery log shows every send with its status.
    • Available on Studio and Agency.
  25. Payments

    Get paid by card — into your own Stripe account

    Clients can now pay invoices by card, and the money goes straight to your Stripe account.

    • Connect Stripe from Settings → Payments (Owner/Admin).
    • A Pay button appears on the public invoice page and the client portal.
    • Paid invoices flip to Paid automatically. Manual/offline payments remain available on every plan. Requires Studio or Agency.
  26. New

    Hoursmith is here: clients, projects, tasks, time, and invoices

    The first release brings the whole core loop online: Clients → Projects → Tasks → Time → Invoices.

    • Clients & projects with per-client billing defaults and hourly / fixed-fee / non-billable project rate types.
    • Tasks on a three-column board (To Do / In Progress / Done).
    • Time tracking with a live timer in the top bar and manual entry.
    • Invoices generated from billable time, with PDF export and a full lifecycle (Draft → Sent → Paid).