Gift Cards: Redeem Gift Cards While Collecting Calendar Payments
🚀 What’s New?
Businesses can now redeem a customer’s Gift Card while collecting payments directly from an appointment — across Meetings, Services, and Rentals calendars.
Previously, Gift Cards could only be redeemed by customers through customer-facing checkout flows. With this update, businesses can apply a customer’s available Gift Card balance when collecting a payment on their behalf, including when charging a saved card or adding a new card.
This brings Gift Card redemption to offline/off-session Calendar payment flows, creating a consistent redemption experience regardless of who initiates the payment.
⚙️ How Does It Work?
To redeem a Gift Card for an appointment:
- Open the Appointment.
- Navigate to the Payments tab.
- Click Collect Payment.
- Select Charge a Card.
- Choose Redeem a Gift Card and apply the customer’s available balance.
The Gift Card balance is applied before any remaining amount is charged to the customer’s saved payment method.
🎁 Consistent Gift Card Redemption
Gift Cards now behave the same way whether the customer or the business initiates the payment:
- Full balance available: If the Gift Card covers the entire payment, no additional payment method is charged.
- Partial balance available: The Gift Card is redeemed first, and the remaining amount is automatically charged to the customer’s saved payment method.
- Invalid or unavailable balance: Clear validation messages are shown for invalid, expired, or zero-balance Gift Cards.
This means businesses can confidently accept Gift Cards regardless of who is initiating the transaction.
💳 Better Payment Visibility
Whenever a Gift Card is redeemed:
- Transaction Details clearly show the amount redeemed using the Gift Card.
- For split payments, the Gift Card amount and the amount collected through the other payment method are displayed separately.
- The associated Gift Card Order is automatically updated with the remaining balance after every successful redemption.


Native Speech-to-Speech Voice AI Support in Chat Widget
👀 What’s New?
Chat Widget now supports HighLevel’s native Speech-to-Speech (S2S) Voice AI agents alongside existing Voice AI agents.
- S2S and existing Voice AI agents are available within the same Agent dropdown.
- The Chat Widget automatically identifies the selected agent type and launches the appropriate voice experience.
- Existing Voice AI agents continue to work as before, with no changes required to the widget UI or embed code.
- If an existing agent is switched to a supported S2S model, widgets already using that agent update automatically.
- The existing Chat Widget calling experience remains unchanged, including:
- Two-way audio
- Mute / unmute
- Call status
- End-call controls
- The S2S SDK is loaded only when a visitor initiates a call with an S2S agent, keeping regular widget loads and existing Voice AI calls unaffected.
👷 How It Works:
- Enable Speech-to-Speech Voice AI from Labs.

- Create a new S2S agent or switch an existing Voice AI agent to a supported S2S model.

- Navigate to Chat Widget → Agent.
- Select the required Voice AI or S2S agent from the unified dropdown.

- Save the widget.
- The widget automatically launches the correct voice experience when a visitor starts a call.
When an existing agent is switched to an S2S model, widgets already linked to that agent update automatically, no re-save, re-embed, or new agent ID is required.
If a cloned agent is used instead, select the new cloned agent within the Chat Widget builder.
⭐ Why It Matters:
- Agencies can now use HighLevel’s native S2S Voice AI agents across both phone and website Chat Widget conversations.
- Existing widgets can adopt S2S capabilities without requiring website code changes or widget reconstruction.
- A unified agent picker simplifies configuration by removing the need for separate S2S and Voice AI setup flows.
- Automatic syncing makes it easier to upgrade existing agents to S2S models without manually updating every widget.
- On-demand SDK loading ensures S2S functionality is introduced without impacting standard Chat Widget performance.
📝 Notes:
- Availability: Live in production for agencies with Speech-to-Speech Voice AI enabled through Labs.
- Existing Voice AI agents and widgets remain fully compatible.
- Existing embed snippets do not need to be updated.
AI Agent action now upto 50% cheaper to run
Overview:
The AI Agent Action just got a lot cheaper to run. We have shipped a set of cost optimizations across the agent execution pipeline that cut the cost of every agent run, with no change to agent behaviour, output quality, or setup. In internal testing, agent executions are now 40 to 50 percent cheaper.

What's New
- Up to 50 percent lower cost per AI Agent execution
- Prompt caching: repeated context across agent steps is now cached instead of being resent on every call, removing a large chunk of redundant token spend.
- Leaner system and tool prompts: system and tool instructions have been rewritten to be tighter and more precise, which lowers the token cost of every single run.
- Right sized models for supporting calls: internal operations like summarization, structured output, and memory generation now run on lighter models, while the core reasoning stays exactly where it was.
- Fewer tokens consumed per execution overall, on top of the per call savings.
Why It Matters
The AI Agent Action has become one of the fastest growing parts of the Workflow AI suite, and this change puts it on an even steeper curve. Cheaper runs mean users can reach for the agent in more places, more often.
The choice between an agent and a long manual workflow now comes down to what fits the use case, not what fits the budget.
The heaviest agents benefit most. Long conversation and multi tool agents see the largest drop.
High volume workflows are now well within reach, so agents can run across a much larger share of a user's automations.
New users get a far lower entry cost to start building with agents.
How to Use
Nothing to do. The optimizations are already live and apply automatically to all new and existing AI Agent Actions.
How to setup AI agent action – https://ideas.gohighlevel.com/changelog/ai-agent-action-in-workflows
Clearer and More Accurate Invoice Line Items for Rentals
🧭 Overview
We've improved how rental pricing is represented on invoices. Each invoice line item now shows the true per-unit cost and the actual quantity booked — making rental invoices more transparent, accurate, and easier for customers to understand at a glance.
🚀 What's Improved?
✅ Invoice line items now show accurate per-unit pricing
- Invoices now show the true per-unit cost as the unit price, with quantity reflecting the actual number of units booked — making every invoice line item clear and verifiable.
- Before: A rental booked for 3 days across 4 units at $50/day
- Invoice showed → Unit price: $540.00 | Qty: 1
- After: A rental booked for 3 days across 4 units at $50/day
- Invoice now shows → Unit price: $135.00 | Qty: 4 | Total: $540.00
✅ More precise internal pricing calculations
- Pricing is now calculated per unit before arriving at the final total, ensuring greater accuracy across all discount configurations and booking setups.
📝 Note: In rare cases involving non-round discount percentages (e.g., 16.67%), per-unit rounding ensures the invoice always foots cleanly. Due to this, final totals may vary by $0.01 in such cases. This is the most accurate representation of the configured price and reflects best-in-class invoicing precision.
🎯 Why This Matters
- Clearer invoices — Customers see a meaningful unit price and quantity instead of a single lump sum, making it easier to understand what they're being charged for.
- Consistent across all setups — Whether someone is renting a single item or managing bulk inventory with multiple discount tiers, the calculation now follows the same predictable per-unit logic throughout.

Chat Widget – Embed Any Chat Widget Inline
👀 What’s New?
We’ve expanded Embedded placement support to all Chat Widget types, giving users greater flexibility over how conversations appear across websites, funnels, landing pages, and other embedded experiences.
Previously, the Sticky / Embedded placement option was available only for Live Chat and Voice AI. Other chat types always appeared as a floating chat bubble in the bottom-right corner, even when the widget was added within a specific section of a page.
Now, users can choose Embedded placement across all supported Chat Widget types and display the complete conversation experience directly within the page.
Embedded placement is now supported for:
- All-in-One Chat
- Email / SMS
- Live Chat
- Voice AI
👷♂️ How It Works:
- Navigate to the Chat Widget Builder and select any supported Chat Widget type.
- Under the widget placement settings, choose between Sticky and Embedded.


- When Embedded placement is selected, the widget:
- Opens automatically within the page.
- Displays as an always-open inline chat experience.
- Does not show the floating chat bubble.
- Does not display the initial prompt popup.
- Cannot be minimized, keeping the conversation experience visible within the page.
- Uses dimensions optimized for an embedded layout.
- For All-in-One Chat, visitors can:
- Choose between the available communication channels.
- Navigate between channels without leaving the embedded widget experience.
- The Chat Widget Builder preview automatically adapts to show the inline experience when Embedded placement is selected.
- Settings and controls that apply only to floating chat bubbles are automatically hidden when using Embedded placement.
⭐ Why It Matters:
This enhancement gives businesses more control over where and how conversations happen across their digital experiences.
Users can now create dedicated chat experiences within:
- Landing pages and funnels
- Website pages
- AI-powered experiences
- Contact and support pages
- Custom embedded layouts
Instead of requiring visitors to interact with a floating bottom-right chat bubble, messaging can now become a native part of the page experience, helping businesses create more intentional and contextual customer journeys.
📝 Notes:
- Embedded placement is available across all supported Chat Widget types.
- Embedded widgets remain continuously visible and cannot be minimized.
- Floating bubble and initial prompt behaviors are automatically disabled in Embedded mode.
- The builder preview and configuration controls dynamically adjust based on the selected placement.
