July 20th, 2026

Release notes v218 - 20 July 2026

This release focuses heavily on stability — with an extensive round of fixes across quotes, sync, distributors, and the marketplace — alongside one customer-visible improvement: broader catalog control through the public API.

🔗 Public API — manage labels and setup pricing programmatically

The public API gains more complete catalog control. You can now create product labels that actually persist and assign or remove labels on products through the API — previously labels could only be read. We've also made setup cost and setup price writable on the product endpoint (PUT /public-api/product/{id}), matching how the regular cost and price fields already behave.
What this enables

  • Programmatic catalog clean-up — for example, flagging products that need attention during onboarding with a label instead of clicking through each one

  • External catalog management tools can now round-trip setup pricing instead of falling back to manual edits

  • More complete read/write parity for teams building on top of Salesbuildr

🛠️ Under the hood

This release also includes platform work you'll notice in day-to-day reliability:

  • Bulk email sending now runs in a background queue — sending to hundreds of contacts no longer risks timeouts, and failed sends are retried. Duplicate recipients within a single batch are removed, though re-submitting the same send can still resend to those contacts.

  • Marketplace and Distributor Hub search hardened — broad searches no longer time out, and new index maintenance keeps search fast as catalogs grow

🛠️ Stability improvements

This release puts a heavy focus on reliability, with fixes spanning quotes, sync, distributors, storefront, procurement, and more:

  • Quotes & editor — fixed product quantities reverting after saving, deleted payment terms still being applied, a $0.00 setup price showing on the presentation view, the financial summary showing 0,- on the All Quotes overview, quotes failing to send when a product had no category, the share link missing from the finished-quote header, the download button not visible on mobile Chrome, crashes when opening quotes or adding text widgets, expiry notifications defaulting to a date in the past, the term variable rendering in Dutch on English quotes, the zero-quantity removal popup skipping mandatory items, and draft quotes on a closed opportunity becoming impossible to open or close

  • Templates & widgets — widget edits no longer silently fail to save, formatting is preserved when adding a widget to a template or quote, widget text edits survive switching languages, label changes save reliably, and overly large attachments now get a clear error instead of a generic one

  • Approvals & notifications — fixed approval rule toggles showing an incorrect off state, declined-quote notifications going to the approver instead of the quote owner, expiry reminders reaching customers while a quote was still pending internal approval, quote creators getting "Access Forbidden" on their own approved quote, end customers unable to e-sign due to an authorization error, and a mandatory IBAN field that could be skipped on acceptance

  • Autotask — restored automatic opportunity sync, fixed the "Use Revenue/Cost of Quoted Items" flag not being sent on quote approval, service price updates not syncing to Salesbuildr, long company addresses being rejected on quote push, a duplicate EUR 0 one-time charge from setup fees, and intermittent webhook signature errors

  • ConnectWise — primary-contact changes now carry through to new quotes, product categories map to their real CW names instead of single letters, ticket notes with MPN and cost data sync correctly after quote-to-ticket conversion, and approved quotes update their status reliably

  • Halo — resolved connection and sync errors, missing Halo price/cost no longer overwrites manually set Salesbuildr pricing with 0, adding items to contracts works again, sales probabilities and opportunity start dates now sync correctly, sales-order titles fall back to the linked opportunity or quote title when left blank, and large imports no longer exhaust system capacity

  • Products, pricing & search — fixed products being blocked from pricing books after an update, custom distributor prices missing from search results, "Fetch info" returning access errors and clearing tax values, product search failing on special characters, the price-recency filter checking the wrong timestamp, and distributor auto-selection ignoring price thresholds and stock availability

  • Distributors & marketplace — resolved marketplace data not loading, a ScanSource USD/CAD currency mix-up, ignored internal stock still being used in price calculations, temporary feed and connection settings not saving, an unhelpful RoutIT connection error, and the "Import Products" button doing nothing on quotes

  • Storefront — bundle items no longer show an empty grid, the cart icon is visible for first-time visitors, only a subset of products showing in a category is fixed, and storefront settings no longer leak when the feature is disabled

  • Procurement & orders — fixed purchase-order submission failures to TD Synnex, aligned Salesbuildr's temporary PO numbers with the PSA-generated ones to avoid confusion, and companies can now clear a default delivery address and fall back to the primary company address

  • Opportunities & platform — opportunities now close correctly when their primary quote is approved, UDF fields are editable right after creating an opportunity, public API server-to-server authentication now works for requests without an Origin header and returns machine-readable 403 reason codes, duplicate line items no longer sync to Dynamics Business Central, and HubSpot sync attempts stop once the integration is disabled

These changes don't add major new functionality, but they reduce friction and improve day-to-day trust in the platform.

🔭 In progress

  • Spreadsheet View for Quotes — the fast, grid-style line-item editor continues to take shape; the core table and architecture are in place and inline editing and bulk actions are actively being built

  • Error Registry — clearer, actionable in-app error messages with a "View help" link and a central place to track recurring issues; the foundations are live and the customer-facing messaging is on the way

  • Quote Approvals V1 — the full rework continues with approval status visibility, a preview of the approval flow, and a richer multi-approver experience

Features are subject to change — follow along in the feedback portal for updates.