Root release notes | August 2025
3 days ago by Root Product Team
We’re committed to keeping you fully up to speed with all of the features, enhancements and fixes we ship at Root. Here are all of the updates and improvements we shipped over the last month 🛠️
Features
We’re working on new features to expand what you can do on Root:
- Company policyholder form updates: We’ve added address fields to the company policyholder form and fixed a bug related to the policyholder lookup on a company policyholder.
- Improved notification preferences: As part of ongoing work on the upcoming Notifications panel, we’ve added support for managing notification preferences, including the ability to disable related email alerts.
- Support for premium and arrears separation: The platform now supports the creation, batching, and export of arrears payments independently from recurring premiums. This enables clearer payment and arrears tracking.
- Refund traceability improvements: A new field has been introduced to payments to explicitly link refunds to their original payments. This supports stronger audit trails and PASA compliance.
- Not Taken Up (NTU) automation support: Product module definitions will soon be able to include NTU settings that allow policies to be automatically marked as “not taken up” after a configurable number of failed payments.
Platform Enhancements
-
Performance Enhancements
We’ve introduced enhancements to improve stability, efficiency, and visibility across Root:
- Monitoring for update product module code: Added detection for known errors related to the upcoming changes to product module code execution. This supports a smoother migration by surfacing impacted product modules for investigation.
- Improved product module code deployment: We’ve made backend changes to improve the deployment of product module code as well as various optimisations during the creation of a product module definition, allowing for quicker product module updates.
- Improved tracking of update request jobs: Improved logging has been added to various jobs to support better monitoring.
- Import validation improvements: We’ve made several changes to improve the accuracy and resilience of payment imports.
- Zero-valued payments are now blocked during import to improve data quality.
- Policy balance checks have been relaxed during refund imports to avoid false validation errors.
- Payment methods are now matched more reliably using paymentMethodConfigId.
- Reduced database load for organisation lookups: Organisation queries are now cached to reduce load and improve performance, especially in high-volume environments.
- Improved currency field UX: The debounce time on currency inputs in claim blocks has been increased to reduce formatting issues while typing.
-
Billing Enhancements
We’ve made several improvements to increase reliability, accuracy, and automation across Root’s billing processes.
- Duplicate payment checks added to billing run: The billing run now includes logic to flag potential duplicate payments made on the same day for a single policy. These checks help prevent billing errors and are also reflected in the payment review CSV export for easier reconciliation.
- Optimised debit premium batching: Improved the performance and reliability of the debit premium job by introducing batching and pagination, reducing memory usage and ensuring consistency during high-load runs.
- Improved lapse request job performance: Significantly reduced the runtime of the lapse request job by optimising the query used to fetch policies with skipped payments and removing unnecessary feature flag checks.
- Automatic DebiCheck mandate updates: Mandates are now automatically resubmitted during the billing run if a policy’s premium has changed, eliminating the need for manual intervention.
- Inactive policy alerts removed: The inactive_policy alert has been retired, as this check is now handled during the billing run itself, reducing alert noise.
- Payment method config IDs now retained: Payment method imports now persist their configuration IDs, improving future compatibility and billing consistency.
- Support for multiple payment methods of the same type: The platform now allows multiple payment methods of the same type to be directly linked to configurations on a product module, improving billing flexibility for advanced setups.
- Cleaner missed payment alerts: Lead time is now considered when flagging missed payments, reducing false positives and improving billing review efficiency.
- Updated debit processing: The legacy debit-policy-premiums job has been retired and replaced with a queue-based approach for improved performance and reliability.
- Batch creation reliability improvements: Payment batch creation now includes timestamp-based ordering to avoid skipping payments when multiple records are created during a run.
- Faster lapse job execution: Key lapse-related queries have been optimised to reduce runtime when identifying policies with missed payments.
- Cleaner NTU handling: Cancelled policies are now ignored when lapse or NTU actions are triggered, avoiding unnecessary operations on finalised records.
- Preserved payment descriptions in ledgers: Payment descriptions are now retained across both debit and credit ledger entries for better traceability.
-
Bug fixes
We’ve addressed key issues to improve system reliability:
- Prevented future dates for beneficiary birth dates: Added validation to prevent future dates from being entered in the date of birth field on the beneficiary form. This ensures cleaner, more accurate data capture.
- Landing page list styling fix: Resolved an issue where long list items on Embed landing pages caused bullet points to be misaligned.
- Fixed SMS character formatting issue: Resolved an issue where special characters in currency formatting were not rendering correctly in SMS messages. This ensures cleaner, more reliable delivery across all providers.
- Date of birth validation on beneficiaries: Users can no longer select a future date for the beneficiary’s date of birth, improving data quality.
- Import issues resolved: Fixed several issues related to ledger entry dates, configuration key usage, and payment method validation during imports.
- Mandate resubmission fixed: Corrected a bug that prevented DebiCheck mandate resubmissions during billing runs.
If you have any suggestions or feedback, please share them with your Client Success Manager or submit them via the Root product roadmap to make sure we always know what’s top of mind for you.