3/21/2025 Release (41.13)
Revenue account selection on Invoice line items, Aged Accounts Payable report, and Transaction Rules in the Audit Trail.
New Brand
Today, my team and I have soft-launched our new brand name, Tight, along with our new website at tight.com and new logo representing the flow and balance of debits and credits, bound together by a tight knot. This name was initially inspired by the saying “keep your books tight,” and also evoked “tight integration,” the essence of embedded accounting. Finally, it evolved into this: “When your customers do their accounting on YOUR platform – that’s Tight.”
Our new brand is reflective of the tight partnership we have with all of you. Your feedback and collaboration has been instrumental in our growth and product evolution. We’ve been investing heavily in our product and team (50% headcount increase over the past six months) and are continuing to build out new features to meet the needs of your users.
Otherwise, there is no other change; we are the same company, same team, and same product… we simply have a new brand name. Hurdlr remains as a direct-to-SMB mobile and web app for freelancers and small business. Tight is the embedded accounting product that you have embedded into your software platforms to serve the small businesses that use your platform.
Thank you, and let's continue to keep it Tight!
New Features/Enhancements
Invoicing
- Stripe Payment Processing: Reduced Stripe merchant fees by automatically saving client payment methods.
- Line Item Revenue Account: Now allows selection of a revenue account for each invoice line item.
- Email Errors API: Programmatic access to setting email errors on invoices for use in Embedded UI.
- Refund API: A new endpoint has been added for programmatically refunding invoices.
- Payment Processing Tutorial: A new listener in the Embedded UI adds a CTA that allows customer partners to route users to a payment processing tutorial.
- Invoice Audit Trail: Ability to audit changes to invoices, including a history of client interactions. This functionality is currently only accessible from the accountant-facing Embedded UI and via API.
- Invoice Payments: Minor UI update removes the prompt to set up a payment processor for an invoice when payments are already associated with that invoice.
Bank Transactions
- Audit Trail: The Audit Trail now logs the rule used to categorize each transaction.
- Rule Matching: Expense rule matching now defaults to the most recent matching rule when multiple rules apply.
Integrations
- Rutter: Enhanced payout matching for the Rutter integration.
- Plaid: Updated the Plaid integration to utilize the new
persistent_account_idfor better bank account de-duplication. - Integrations API: Introduced a DELETE /integration endpoint for disconnecting a user’s integration via the Tight API.
- Lifecycle Event: Added the
INTEGRATION_REPAIREDevent to notify when an integration connection has been repaired.
Reports
- Aged Accounts Payable: New Aged Accounts Payable report supported via both API and UX.
- Aged Accounts Receivable: Enhanced with drill-down functionality.
- Trial Balance: Updated to include custom data support on GL accounts, additionally reflected in the Trial Balance Report.
Bug Fixes
Accounting
- Fixed issues with deleting and restoring invoice payments.
- Corrected signage on manual journal entries in bank reconciliations.
- Added an alert when attempting to cancel an invoice in a closed year.
Invoicing
- Corrected the display of clients in invoice settings on mobile devices.
- Fixed UI issues for invoice line items on mobile.
- Resolved some issues with expanding and reordering invoice line items.
- Enabled invoiced expenses to be reconciled.
- Corrected the UI for the source name on direct / cash invoice payments.
Bank Transactions
- Prevented the matching of expenses to deleted payrolls.
- Corrected the API to more consistently include default clients on bank transactions when one is not provided.
Client Management
- Fixed the API for fetching clients using a given businessId.
