Skip to main content

Features

  • Statistical journal line validation - DualEntry now validates the account type used on statistical journal lines, catching mismatched accounts before posting.
  • Approval workflow for stopping future amortization - Stopping future amortization on a schedule now routes through your approval workflow instead of applying immediately.
  • Inbox transactions ordering by date - You can now order the Journal Entries approval inbox by date, in addition to the existing sort options.
  • Bank match group aware approve and reject - Approving or rejecting a bank match now applies consistently across all transactions in the same match group.
  • Vendor payment import supports payment method name - Bulk vendor payment imports now accept a payment method name column, so you no longer need a separate step to set it after import.
  • Customer list includes default payment terms and AR account - The customer list now returns default payment terms and the default AR account for each customer, so these can be shown as columns without an extra lookup.
  • Journal entries orderable by date - You can now sort journal entries and vendor refunds by their posting date directly, matching what’s shown in the Date column.
  • Paginated vendor prepayment lines (API v2) - The v2 API now paginates vendor prepayment lines, making large prepayment schedules easier to retrieve.
  • Onboarding checklist visible for sandbox organizations - The onboarding checklist no longer hides itself in sandbox organizations, so a custom onboarding tour prompt can be shown.

Fixes

  • Billable expense markup applied to generated invoices - Item level markup defaults are now applied when generating invoices from billable expenses, so the markup shows up on the invoice as expected.
  • Default classification applied on API created items - Items created through the API now receive their default classification, matching behavior already present in the UI.
  • Change order reads no longer fail on legacy data - Reading a change order with malformed legacy data no longer crashes the request.
  • Expensify integration marked as coming soon - The unreleased Expensify integration is no longer shown as available in the integrations list.
  • Direct expenses list filter respects excluded account - Filtering direct expenses now correctly excludes the account specified in exclude_account_id.
  • Invoice line comparison detects account remapping - Resyncing invoices now detects when an account has been remapped in your accounting source, so updates apply to the correct account instead of silently drifting.
  • Bank sync no longer stalls on degraded connections - Bank connections in a degraded state are skipped during sync instead of being retried, and a visible sync run entry is recorded so the skip isn’t mistaken for a missed sync.
  • Long-running Cubby scans no longer trigger duplicate syncs - Long cash report scans now send a heartbeat during processing, preventing the system from mistakenly starting a second sync because the first looked stalled.
  • Reduced stuck pending syncs on repeated triggers - Sync requests that arrive while a sync is already queued no longer create duplicate pending syncs that could age into a false “did not complete” state.
  • Large Salesforce imports no longer skipped entirely - Salesforce opportunity imports now split large ID lookups into smaller batches sized to fit within request limits, so organizations with many custom fields no longer have their opportunity sync silently skipped.
Last modified on August 5, 2026