- ✓New: a support assistant, available from every page as the chat button in the bottom-right corner, on the website and inside all three portals. Ask it a question in plain language and it answers straight away. Here is exactly how it works, because "AI assistant" on its own tells you nothing: we write and maintain a knowledge base of real answers, and the assistant tries to match your question against it first. If it matches, you get the answer we wrote, word for word. If it does not match, your question goes to Claude, which is instructed to answer using only that same knowledge base, and to say it does not know rather than guess.
- ✓It is a documentation assistant, not an account assistant, and that boundary is deliberate. It can explain how payroll runs work, how to book leave, or what our plans cost. It genuinely cannot see your payroll figures, your payslips, your leave balance, or the personal records of anyone else, because it is never given access to them. That means it can never accidentally show your data to someone else, and it also means that for anything specific to you it will pass you to a person instead of guessing. We would rather it say "I will get someone" than confidently invent a number that ends up on a payslip.
- ✓When it cannot answer, nothing gets dropped. Your question becomes a real support ticket in our admin system, with the conversation attached so whoever picks it up already has the context, and our team is emailed at the same time. If you are an HR admin it also lands in your existing message thread with us, so you can just carry on the conversation there. If you are on the public site and not signed in, we ask for your name and email first, because otherwise we have no way to reply to you.
- ✓Every question it fails to answer is recorded and shown to our team grouped by how often it comes up, so the questions customers actually ask are the ones that get written up next. The assistant should get noticeably better over the coming months, and it gets better because of what you ask it rather than because we guessed well up front.
- ✓The assistant also learns from us. When our team answers a question it could not handle, that answer is rewritten into a general knowledge base entry rather than being filed away in one reply. The rewrite deliberately strips out anything specific to one account, so a company name, a figure, or a note that we fixed something on one particular account never becomes part of what the assistant tells the next person. If a reply turns out to have nothing generally useful left in it once that is stripped, nothing gets saved at all.
- ✓By default a person on our side reviews each of those drafts before it goes live, because an assistant that quietly teaches itself from unreviewed text is exactly how wrong answers spread. The practical effect is that the questions you ask are what shape the assistant, and it should visibly improve month to month rather than staying frozen at whatever we thought to write on day one.
- ✓On cost and honesty about limits: the free knowledge base layer answers the common questions at no running cost, and there is a hard spending ceiling enforced on our side before any paid request is made. If that ceiling is reached, or the service is unavailable, the assistant does not break: it falls back to the answers it already has and offers to fetch a person. There is also a per-day limit on questions, which exists to stop abuse of a public feature rather than to ration genuine use.
- ✓New: a Payroll Pack Marketplace in the HR portal, for browsing every payroll calculator published on Paystride rather than picking from an unsorted list. You can search by name, country, tax year or publisher, filter and sort, and open any calculator to see its actual tax bands, deductions and step-by-step calculation order before you commit to it. Every calculator carries a badge saying where it came from: Official means we built and verified it against the revenue authority's own published figures, Community means another company built it and we reviewed it, AI-sourced means it was drafted from public sources and is awaiting that verification. Each one also shows how many companies are currently using it, so "widely used" is a fact you can see rather than a claim we make.
- ✓Payroll calculators are now versioned, and this matters more than it sounds. Once a calculator is published it is locked and can never be edited again. If a tax band changes or an author spots a mistake, the fix ships as a new version alongside the old one, never as an edit to the one already in use. The reason is simple: a payslip you generated in March must still be explainable in March's terms years later, and that is only true if the calculator that produced it cannot be quietly changed underneath it. Every payslip permanently records the exact version that produced it.
- ✓Because of that, updates are yours to take rather than ours to push. When a newer version of the calculator you use becomes available, Payroll Config shows you a notice with the author's own description of what changed, and nothing moves until you accept it. Your own adjustments - a different pension rate, a custom allowance - carry across to the new version untouched, and payslips you have already generated are never recalculated.
- ✓If your company publishes its own calculator for others to use, you now find out what happened to it. Submitting one alerts our team rather than sitting in a queue nobody is watching, and you get a notification when it is approved or turned down. A rejection now has to come with a written reason from the reviewer, which we require rather than merely encourage: previously a submission could simply go quiet, which is a poor way to treat someone who spent an afternoon building a tax table for us.
- ✓A correctness fix worth being straight about: our documentation stated that every adjustment an HR admin makes to their payroll configuration was written to an audit log. It described the behaviour accurately, but the log entries were never actually being written, so the history that would answer "why was this person's pension different in March?" was not there to answer it. It is now, recorded field by field with the before and after value, including adjustments that were removed rather than only ones that were added. Adopting or updating a calculator is recorded too. We found this while auditing the feature rather than because anyone hit it, and no payroll figures were ever affected - only the record of who changed what.
What's New
See what's new in Paystride
A running record of new capabilities and improvements, in plain language - no code, just what changed for your team.
- ✓New: a "year-to-date" tax calculation option, alongside the original method. The original method taxes each pay period by projecting that period's pay across the whole year - simple, but it can over-tax a one-off bonus or a mid-year raise, since it briefly assumes the new amount applies for the rest of the year too. The new year-to-date method instead tracks what an employee has actually earned and actually had withheld so far this tax year, and withholds only the true difference each period - so a raise or bonus is taxed accurately from the moment it happens, with no year-end catch-up needed. Either company can turn it on from Payroll Config; switching is safe at any time and never rewrites past payslips. A new "Learn more about these methods" page lays out the honest trade-offs of each so you can choose with confidence rather than guessing - including the fact, plainly stated, that the original method never costs an employee less than the new one over a full year; it only ties when pay doesn't change at all.
- ✓To keep the new method's numbers trustworthy, undoing an earlier payroll run is now blocked for a company using it while later runs already exist in the same tax year - it has to be undone most-recent-first. We'd rather stop you a step early than let a mismatched history quietly throw off future paychecks.
- ✓Before shipping the year-to-date method, we simulated a full 12-month tax year against every tax calculator we support, side by side with the original method, for a steady salary and for one with a mid-year raise - confirming both methods land on the exact same total for a steady salary (as they should), and that the new method still lands on the true amount owed even when pay changes mid-year, while the original method measurably doesn't, in every single case. Not just tested in theory - run against the same calculation engine real payroll uses.
- ✓We've also started building draft support for Zimbabwe (including a separate calculator for ZiG, since Zimbabwe runs two currencies with two different tax tables), Mauritius, and Zambia payroll tax rules, alongside the South Africa calculator that's been available since launch. These are currently in an internal review stage - visible to our team, not yet active for real payroll - while we verify the figures against each country's official revenue authority before switching them on. We'd rather take the extra time than get a tax table wrong.
- ✓Messages sent through our public "Contact us" and "Contact sales" forms now land directly in our support team's admin dashboard the moment you submit them, the same way an internal support ticket does - not just an email that could get buried. Every admin sees it on their notification bell until someone on our side opens it, so nothing sits unseen because one person happened to be away.
- ✓As a safety net behind the scenes, if unread contact requests ever start piling up, our team gets emailed automatically to make sure a backlog never goes unnoticed - on top of admins who've opted in already getting notified for every new message.
- ✓Employees reporting a system issue now also trigger an instant notification to our support team, the same way a direct message would - previously these only showed up if someone happened to check the ticket list.
- ✓Fixed an inconsistency in the "Team Chat" feature (an optional add-on some companies turn on so coworkers can message each other): when a company had it turned off, employees could still open a "Chat" page that didn't actually work, instead of it just not showing up. The Chat option and page now stay tidily out of the way until a company turns the feature on, and re-checks live if that setting ever changes while someone has the page open.
- ✓Employees can now email themselves a copy of their payslip with one click, straight to their verified account email.
- ✓Printing or saving a payslip as a PDF now produces a clean document with just the payslip on it - it previously also captured the surrounding menu and navigation.
- ✓Payslips now lead with your company's name at the top, with the Paystride mark moved to a small, unobtrusive watermark.
- ✓Fixed an issue where a small number of accounts - anyone who registered their company or accepted a team invite before a fix earlier this quarter - could see "employee record could not be found" on their Payslips page with no way to recover. This now repairs itself automatically the next time an affected account visits any page.
- ✓New: Chat. HR and System Admin now have a direct line to each other, and every employee has an ongoing conversation with their own company's HR - both always available, with any HR admin (or any admin, for the HR<->Admin side) able to see and answer, so nothing depends on one specific person being online. A company can also turn on Team Chat, letting employees message each other directly or in named group channels - off by default, since not every company wants a social layer on top of their payroll system, but available with one toggle from the company's settings for those that do.
- ✓New: Report an Issue. Any employee can now flag something that's not working straight to a System Admin, separate from chat - it becomes a real ticket with a status (open, in progress, resolved) an admin works through, not a message that can get lost in a conversation.
- ✓New messages show up in the notification bell for everyone now, not just HR, and you can choose whether a message addressed to you personally - a reply from HR, a direct message from a coworker - also sends you an email. Group and shared-inbox activity stays in-app only by design, so turning email on doesn't mean a flood of notifications. That preference, along with basic account info, now lives on a new Profile page for HR and Admin accounts (employees already had one) - just click your name in the top right.
- ✓While testing the new chat feature end-to-end - including scenarios with two people messaging each other live, not just one person's own view - we caught and fixed two issues before they reached the live site: System Admin accounts couldn't actually reply on the HR conversation (a permissions check meant for company-scoped accounts was incorrectly blocking platform-wide admin accounts too), and a coworker-to-coworker conversation wasn't visible to anyone except the person who started it, because of an overly strict data-access rule. Both are exactly the kind of thing that's easy to miss testing solo and easy to catch testing as two people actually talking to each other - which is now a permanent part of how we test this feature going forward.
- ✓More of the app now uses the "keep it live instead of re-fetching it" approach from the last two releases: HR's employee list and the department/position detail pages share one live, cached copy of your team instead of each page pulling its own; the three places payroll packs are set up or reviewed (the calculator builder, payroll setup, and admin's review queue) work the same way and now update automatically the moment you approve, archive, or save something - no more refreshing to see your own change take effect. The payroll run history list also updates itself the instant a run finishes, instead of needing a manual reload to see it move from "processing" to "completed."
- ✓While extending this to the toggle that controls whether employees can propose their own work hours, we caught and fixed a subtle permissions-checking bug in testing, before it reached the live site: the toggle wasn't reliably loading for employees (admin accounts were unaffected). It's fixed and now has an automated test guarding it specifically, so this exact issue can't silently come back in a future change - we'd rather build that guardrail than rely on catching it by hand next time.
- ✓Extended last release’s "keep it live instead of re-fetching it" change to two more places: your own employee record and, for HR/admin users, the company’s payroll configuration. Both now stay in sync in the background instead of being pulled fresh from scratch every time you land on a page that needs them.
- ✓We restructured how the app is packaged for the browser - no feature or page works any differently, but several pages that used to load more code than they actually needed now load only what they use. The public website’s initial page weight dropped by nearly two-thirds (from just under 1MB to about 377KB), and the sign-in/registration pages across the product now load separately from the main app instead of being bundled in upfront on every visit. The practical effect is a faster first load, especially on slower connections, before any of our other caching improvements even kick in.
- ✓Fixed a data issue where leave requests were being saved correctly but read from the wrong place internally - so approved time off, leave balances, and leave history could show as empty even though the request itself went through fine. Everything now reads from the same place it’s written to, so the numbers you see are always current.
- ✓Tightened permissions around payslips: employees could technically request a coworker’s payslip directly if they knew what to ask for, even though nothing in the product actually did this. We closed that gap - it’s the kind of thing we’d rather fix before it matters than after.
- ✓Pages that show your team’s departments, positions, leave types, and work sites now load noticeably faster on repeat visits within a session - we moved to keeping that data live and in sync instead of re-fetching it from scratch every time you open a page.
- ✓This page now shows 10 releases per page instead of 20, and update notes go into a bit more of the "what actually changed and why" - not just the headline.
- ✓This page got tidier: only the latest update opens automatically, and older ones collapse down to just their title so you can scan through faster.
- ✓HR can now open any past payroll run and see each employee’s payslip, the same one employees see on their side.
- ✓Payroll preview now shows real pay for every employee - salaried and hourly - not just an hours estimate, and reviewing it again before running always reflects the latest numbers.
- ✓HR can run payroll directly without previewing first, and can now void a completed run to safely correct and re-run it.