> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dualentry.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Period locking from chat and workflow engine (Jun 16, 2026)

> DualEntry release notes for June 16, 2026: period locking from chat, workflow engine, Stripe payment method display, and bulk role permission editing.

## Features

* **Period locking from chat** - You can now lock accounting periods directly through the AI copilot, streamlining the period-end close process.
* **Workflow engine** - New generic workflow engine enables organizations to define, validate, and execute custom workflow DAGs with detailed run and step tracking.
* **Benchmark organization snapshot history** - Added snapshot history view and the ability to restore specific versions of benchmark organizations.
* **Account mapping sorting** - Account mapping pages now support sorting by transaction count to prioritize high-volume accounts during setup.
* **Paper check recovery** - Archived paper checks can now be restored through a new recovery endpoint, returning them to their previous printed or not-printed state.
* **Stripe payment method visibility** - Customer payments synced from Stripe now display the payment method (ACH, card, etc.) in the memo field for better transaction visibility.
* **Custom domain for attachments** - File attachments are now served from [https://cdn.dualentry.com/attachments/](https://cdn.dualentry.com/attachments/) instead of raw S3 URLs.
* **Future posting dates validation** - Added organization-level setting to control how far in the future transaction dates can be posted.
* **Revenue recognition contract cutover automation** - Stripe-synced contracts now automatically map their cutover date from the integration's initial cut-off date when revenue recognition is disabled.
* **User role bulk permission editing** - Role management now includes "Select all" toggles for each permission column, allowing administrators to quickly grant or revoke permissions across all modules.
* **Customer and vendor hierarchy filters** - Filter dropdowns for customers and vendors now display parent-child relationships with expandable trees and "Include children" options for easier selection of related entities.
* **Customer Credits visibility improvement** - The Customer Credits section now only appears on contract overview pages when credits exist, reducing clutter for contracts without credits.
* **Copilot product analytics** - Enhanced tracking of AI copilot usage patterns through improved event capture for better product insights.
* **Default AR account configuration for contracts** - Contract and contract template forms now support configuring default accounts receivable accounts, with AR account editing enabled on contract-generated invoices.
* **Excel file export from AI copilot** - The AI copilot now generates native Excel files when users request Excel or spreadsheet exports, replacing the previous text-based CSV output.
* **Copilot Slack integration** - Added automated feed of user questions to Slack channel for improved customer support insights.
* **Enhanced flux analysis reports** - Enabled previously disabled year-over-year and year-to-date comparison options in Flux Income Statement and Balance Sheet reports.
* **Stripe product pricing sync** - Stripe Product list prices now populate in DualEntry Item records, improving pricing accuracy across subscription management.
* **Tool manifest database management** - New database-backed tool manifest system with API endpoints for syncing, querying, and serving workflow tool definitions.

## Fixes

* **Bank reconciliation variance alignment** - Fixed reconciliation General Ledger Balance to read from the same trusted source as legacy reports, eliminating variance discrepancies.
* **Copilot session interruption** - Resolved issue where interrupted first turns in chat sessions would break session data and prevent title generation.
* **Invoice API performance** - Optimized slow invoice queries by removing unnecessary joins from amount\_due filters, reducing response times from 2+ seconds.
* **Multi-year revenue recognition calculation** - Fixed ARR calculation error for performance obligations spanning multiple years.
* **Bank match task performance** - Resolved intermittent slowdowns caused by bank match background tasks holding database locks too long.
* **Multi-company Balance Sheet currency display** - Fixed issue where multi-company Balance Sheets showed local currency amounts instead of converted reporting currency.
* **Flux report subtotal removal** - Fixed bug where removing subtotals in report settings did not actually remove them from the display.
* **Custom Trial Balance formula errors** - Resolved "error fetching report data" failures in custom Trial Balance reports with specific formula column combinations.
* **Custom formula row positioning** - Fixed incorrect insertion position for custom formula rows in reports.
* **Xero migration deep links** - Repaired broken hyperlinks on Xero migration data sync tabs by fixing URL encoding and making links subtype-aware.
* **Bill.com vendor mapping errors** - Improved error messages when Bill.com bills reference unmapped vendors, now showing vendor display names and clear remediation steps.
* **Archive from list validation** - Fixed "Field required" validation errors when archiving or recovering records from list views across multiple record types.
* **Items archived tab visibility** - Archived items now properly appear in the Archived tab regardless of their active status.
* **Brex exchange rate error handling** - Improved exchange rate error capture and surfacing without generating unnecessary Sentry alerts.
* **Bulk import item field requirements** - Fixed requiredness validation for item fields in bill imports.
* **Cross-tenant isolation test** - Resolved failing paper check template test by using proper organization factory methods.
* **VAT and GST rate status display** - Fixed issue where edit drawers for VAT rates and GST rates always showed "Active" label regardless of the actual active/inactive status.
* **VAT rate description clearing** - Resolved bug where clearing the description field in VAT rate edit drawer appeared to save but actually preserved the old value.
* **Customer detail page navigation** - Fixed issue where customer detail pages became unavailable when accessed from list view or kebab menu options.
* **Copilot interrupt button errors** - Resolved errors that occurred when clicking the interrupt submit button during AI copilot conversations.
* **Artifacts search field clarity** - Removed duplicate clear (X) icons from the artifacts search field to eliminate visual confusion.
* **Report Center description field** - Fixed overlapping placeholder text on the textarea border in New Package form description field.
* **Deel integration connection errors** - Improved error messaging for failed Deel OAuth connections to provide clearer troubleshooting information.
* **Required classification validation** - Fixed validation of company-required classifications for customer credits to properly check requirements when company selection changes.
* **Revenue recognition Edit group button visibility** - Removed inappropriate Edit group button from revenue recognition summary pages.
* **Revenue recognition item name loading flash** - Eliminated skeleton loading flash for item names in revenue recognition performance obligations.
* **Date validation during manual entry** - Fixed misleading "Date cannot be before 01/01/1990" error messages that appeared while typing future dates, now deferring validation until complete year entry.
* **Column resizing in contract approval tables** - Fixed Date and Amount column resizing functionality in revenue recognition contract approval workflows.
* **Asset revaluation account visibility** - Inactive accounts are now properly hidden from the Revaluation Offset Account dropdown in asset revaluation forms.
* **Journal entry classification validation** - Fixed validation of required classifications when company selection changes in journal entries.
* **Vendor credit classification validation** - Fixed validation of required classifications when company selection changes in vendor credits.
* **Bank statement line visibility** - Fixed issue where manually uploaded bank statement lines would disappear from Bank Match after being matched.
* **Benchmark organization cloning** - Fixed anomaly alert links in cloned organizations by properly remapping nested JSON foreign key references.
* **Bill.com line customer sync** - Bill.com line customer data now properly syncs to DualEntry bill lines and post-approval edits correctly trigger re-sync.
* **Copilot chat resumption** - Fixed missing chunks when resuming interrupted copilot sessions by ensuring database reads use the writer connection.
