Pages

Monday, May 4, 2026

Salesforce: CURRENCYRATE()

There are 2 types of currency exchange rates in Salesforce: the default/standard exchange rate and the dated exchange rate, but Dated Exchange Rates is optional; you can enable it if needed.


In this blog, we discussed how to create a formula field using CURRENCYRATE() in this blog; however, the CurrencyRate() function does not support dated exchange rate. So the formula will only use the standard exchange rate. See the report below as an example, dated exchange rate for:

  • USD/SGD, standard exchange rate = 1.28
  • USD/SGD, 2-May-2026 and before = 1.25
  • USD/SGD, 3-May-2026 and after = 1.3

Amount USD is a formula that uses CurrencyRate(), and because the standard exchange rate is 1.28, Amount (converted) uses the dated exchange rate based on the Opportunity Closed Date.


Reference:

Sunday, May 3, 2026

Open CTI Retirement Guide: Moving Salesforce Contact Centers Toward Agentforce

Guest blog by: Antonina Kharchenko

The countdown has officially begun for legacy telephony integrations. With February 28, 2028, marked as the Salesforce Open CTI end of life, IT teams and customer experience directors face a critical juncture. This isn't just another routine software patch or minor version update; it is a structural mandate to modernize how customer interactions are handled, routed, and resolved.

If you track recent call center AI news, the driving force behind this shift is undeniable. Industry forecasts anticipate that artificial intelligence will manage up to 50% of routine customer service inquiries by 2027. Clinging to outdated, disconnected frameworks ensures your operations will lag behind this massive wave of automation. The Open CTI retirement is an opportunity to rebuild a faster, smarter communication hub.

Here is your technical and strategic playbook for navigating the transition.


Diagnosing the Legacy Bottleneck

To map out a successful migration, we first need to understand why the existing framework is being phased out. For years, Open CTI served as a highly effective, browser-based bridge. It connected external telephony providers, such as Avaya and Cisco, and local PBX systems directly to the CRM without requiring clunky desktop software installations.

However, as the Salesforce Open CTI ends, its architectural flaws are holding businesses back. The core problem is data fragmentation. In an Open CTI setup, the external telecom provider handles all the heavy lifting: the actual audio stream, call recording, IVR menus, and routing logic. Salesforce merely receives a ping containing metadata (such as caller ID or call duration).

Because the systems are fundamentally decoupled, achieving real-time intelligence is nearly impossible. Organizations are forced to maintain custom JavaScript for every unique vendor API, leading to a fragmented user interface for agents and high technical debt for developers.


The Standard: A Native, Intelligent Engine

The replacement strategy revolves around consolidating operations into a unified Salesforce AI contact center. The combination of Salesforce Voice and Agentforce represents this new baseline.

Instead of relying on a brittle external bridge, Salesforce Voice brings the telephony experience natively into the platform. Calls are answered, transcribed, and logged inside the CRM. This unified data pool is exactly what Agentforce needs to operate effectively.

When you transition to an AI-powered contact center Salesforce model, artificial intelligence stops being a post-call analytics tool and becomes a real-time participant. During a live interaction, the AI monitors the conversation, gauges customer sentiment, automatically retrieves relevant knowledge base articles, and prompts the agent with next-best actions.

The operational impact is highly measurable:

  • 93% of service professionals report that integrated AI directly saves them time.
  • Agents actively utilizing these tools reduce time spent on routine, repetitive tasks by 20%.
  • Salesforce reports that Agentforce has already managed over 2 million conversations via Salesforce Help.


Voice call record page with transcription and next-best-action recommendation


The Enterprise Solution: A Hybrid Voice Architecture

While a fully native Salesforce voice AI setup is ideal for some, it is not a realistic immediate step for massive, complex enterprises. Many organizations operate with multi-regional hardware deployments, strict data residency compliance laws, or multi-year contracts with major telecom carriers. They cannot simply abandon their existing telephony infrastructure overnight.

For these complex environments, the solution is implementing an Enterprise Voice Control Layer.

This middleware approach allows a "Bring Your Own Telephony" (BYOT) strategy. Specialized applications found on the AppExchange act as an intelligent orchestrator. They allow you to maintain your current Avaya, Cisco, or Microsoft Teams routing for voice delivery, while seamlessly pushing the real-time interaction data into Salesforce’s AI engine.

By leveraging tools like AMC Technology's DaVinci, companies can trigger background identity authentication and feed live audio streams into Agentforce for real-time transcription, all without ripping out their underlying telecom hardware. Considering 76% of consumers now expect highly personalized and immediate service, deploying this intelligent middle layer ensures agents have the context they need the second the call connects.

Enterprise voice control layer solutions on AppExchange


Architectural Comparison Breakdown

Understanding your deployment options is critical. Here is how the three main architectural paths compare:



The Migration Playbook

Successfully moving away from legacy adapters requires a structured, phased approach to avoid dropping calls or losing data. Follow this sequence to safeguard your operations:

  1. Conduct a Deep Infrastructure Audit: Document every active CTI adapter, custom workflow, and screen-pop rule currently running in your environment. Identify exactly what data is being passed from your telecom provider to the CRM.
  2. Determine Your Architectural Path: Based on the audit, decide if your organization can migrate fully to a native Salesforce environment, or if you need an enterprise orchestration layer to protect existing vendor investments.
  3. Deploy the Connectivity Layer: If utilizing a hybrid setup, install and configure your central integration framework. Establish secure connections between your existing voice hardware and the Salesforce intelligence engine.
  4. Pilot the Intelligence: Roll out live transcription and Agentforce sentiment analysis to a small, controlled group of service reps. Use their feedback to fine-tune automated workflows and routing rules.
  5. Execute a Parallel Run: Run the legacy Open CTI setup alongside your new architecture for a designated testing period. Once stability and data accuracy are confirmed, scale the new solution company-wide and decommission the old adapters.


Conclusion

The retirement of Open CTI mandates a permanent shift in customer service infrastructure. Relying on fragmented, delayed call data is no longer a viable operational strategy. By planning your migration pathway now, whether through a fully native environment or a strategic enterprise voice layer your contact center will be positioned to leverage real-time intelligence, cut resolution times, and meet the rising expectations of today's consumers.






Sunday, April 26, 2026

Salesforce Data Quality: How to Audit Your Org Before AI and Automation

Guest blog by: Mykhailo Radchenko

Artificial Intelligence is no longer a futuristic concept; it is an active component of daily business operations. Many companies are currently in a race to integrate AI into their workflows, investing heavily in intelligent automation to achieve significant productivity gains. However, a silent hurdle is preventing these investments from reaching their full potential: messy data.


The Financial Reality of Poor Data Quality

The impact of bad data is cumulative and affects every corner of an organization. To prevent marketing campaigns from missing targets and forecasting from becoming unreliable, organizations often rely on a Salesforce data quality playbook to standardize their data entry and maintenance processes. This translates into significant financial losses. According to a 2024 Forrester Research report, over 25% of global data and analytics employees estimate annual losses exceeding $5 million due to poor data quality, with 7% reporting losses of $25 million or more. Gartner further supports this, noting that poor data quality costs organizations an average of $12.9 million annually.

Perhaps the most pressing concern is the threat to future competitiveness. Gartner predicts that through 2026, organizations will abandon 60% of AI projects that lack AI-ready data. This unreliability also severely impacts customer retention. According to a Zendesk study, over 50% of consumers will switch to a competitor after a single bad experience, and 73% after multiple poor experiences. 

Image source: Gartner


Why Companies Struggle with Salesforce Hygiene

For many firms, Salesforce acts as the "central nervous system" of their go-to-market engine. But as companies grow, they build complex technology stacks where marketing automation, ERP systems, and sales platforms all feed data into the CRM. These multiple entry points often result in a CRM filled with missing pieces and mixed-up details.

According to a recent study by Salesforce, the vast majority of executives–87%–view data silos as the primary hurdle preventing them from using artificial intelligence effectively. Despite this, a Salesforce/Forrester survey found that two out of three companies do not have a proper data strategy, although many of them already use AI.

Image source: Salesforce

Furthermore, data decay happens faster than most teams realize. At least 28% of business email addresses expire within a single year, according to a recent industry report. This means that without a consistent strategy to maintain data quality, more than a quarter of your database could be obsolete within 12 months. When Salesforce data hygiene is neglected, the results include:

  • Inaccurate Forecasting: 39% of sales professionals claim poor data prevents accurate pipeline reporting.
  • Lost Productivity: Sales reps spend 70% of their time on non-selling tasks, a figure largely unchanged since 2022.
  • AI Failure: 63% of sales professionals report that their company’s data is not properly set up for generative AI.
  • Loss of Trust: 65% of sales professionals report they cannot fully trust their organization's data.

Understanding Salesforce AI Data Quality Dimensions

Are you ready for AI? The growth potential is significant: Salesforce research indicates that 90% of SMB leaders report AI makes operations more efficient, while 87% say it helps scale services, and 86% believe it improves margins and competitive standing. Furthermore, sales teams that deploy AI with reliable foundations see a clear revenue advantage: 83% saw gains, compared to only 66% of teams without AI. However, these results are achievable only if the underlying data are reliable.

Image source: Salesforce


Before deploying bots or predictive models, it is essential to understand the data quality dimensions Salesforce AI requires to function. If the underlying data is fragmented or incomplete, AI tools will likely surface outdated info or produce "hallucinations". In one high-profile case, an AI support bot invented a fake login policy and sent it to users without human oversight, leading to canceled subscriptions and a public apology. To improve the quality of the data in Salesforce, organizations should audit their org against these four key dimensions:

1. Required Field Standards

AI models require specific "ingredients" to produce meaningful results. For objects like Leads, Contacts, and Opportunities, you must identify which fields, such as Industry, Job Title, or Annual Revenue, are mandatory for your specific AI use case. Identifying these gaps is the first step in creating a reliable dataset.

2. Picklist Uniformity

Inconsistent values are a primary cause of broken logic in AI segmentation. If your "Industry" field contains variations such as "Healthcare," "Health Care," and "Medical," an AI will treat them as separate categories. Normalizing these picklists is vital for Salesforce data quality.

3. Duplication Thresholds

You must define what constitutes a duplicate within your specific business context. For example, should "IBM" and "International Business Machines" be merged?. Using Salesforce deduplication filters to define these match criteria is necessary to prevent the AI from processing redundant or conflicting information.

4. Record Freshness

The "New/Modified Records" trend view is a useful metric to identify stale data. Tracking records created or updated over the past 360 days helps flag data that might confuse analytics or cause poor customer experiences.


The "New/Modified Records" trend view is a useful metric to identify stale data. Tracking records created or updated over the past 360 days helps flag data that might confuse analytics or cause poor customer experiences.


How to Improve Data Quality in Salesforce: A Phased Approach


Cleaning an entire Salesforce instance can feel overwhelming, but a phased strategy for Salesforce data cleansing can yield immediate results.

Phase 1
Target Exact Matches: Start with the "low-hanging fruit" – obvious exact matches where Leads or Contacts share the same email and account name. Merging these records immediately restores trust in the CRM for the teams using it every day.

Phase 2
Automate and Schedule: Once the initial "mess" is cleared, schedule automated merge jobs to handle low-risk duplicates in the background. This ensures that your efforts to maintain data quality in Salesforce are consistent and not just a one-time project.

Phase 3
Prevent at the Source: The most effective way to improve Salesforce data quality is to stop errors before they enter the system. Using API integrations, such as those offered by Cloudingo, allows external systems, such as marketing automation or ERPs, to be deduplicated before they land in Salesforce.


Real-World ROI: The Cost of Inaction


The need for a Salesforce data quality playbook is often best illustrated by companies that have faced "data disasters". For instance, Docker, Inc. faced a situation in which thousands of duplicate records filled its system – some companies appeared as 60 separate accounts due to repeated credit card payments. This led sales reps to stop trusting the CRM entirely, resulting in nearly $1 million in annual lost revenue.

Similarly, at 1-800Accountant, the team was "drowning in duplicates," with over 32,000 bad leads. This led to one in five sales calls being repeats, with clients contacted up to 10 times, resulting in significant prospect frustration. 

A similar situation occurred at Lucid Design Group, where a CRM with 75,000 records became so unmanageable that the sales team repeatedly called disqualified leads, and the sole Admin spent a full working day manually merging duplicates.

By implementing a structured audit and an automated cleanup solution, these companies restored trust and provided their teams with a reliable system.


Conclusion: Building the Future on a Clean Foundation


Salesforce data quality is no longer just a background administrative task; it is a core growth strategy. As organizations prepare for deeper AI integration, they must move away from manual, reactive cleanup and toward proactive, automated maintenance.

If your data is messy, AI will only amplify those errors. But if your data is clean, AI becomes a powerful multiplier for productivity and revenue. For a deeper dive into these strategies, you can download the full Salesforce data quality playbook or explore the technical requirements for Salesforce data hygiene.









Wednesday, April 15, 2026

Salesforce: Opportunity Contact Roles are Added by Default

When Opportunity Contact Roles are Added by Default?

  • From a Contact Record: When users create a new opportunity directly from the Related List on a Contact record, that contact is added as a contact role.
  • During Lead Conversion: When a Lead is converted into an Opportunity, Salesforce automatically links the converted Contact to the new Opportunity.
As above, this only happened during Opportunity creation, and not during Opportunity edit.

What is the Role and Primary?

  • Role = blank
  • Primary = Yes

Automation

Salesforce administrators/developers can create Flows or Apex Triggers to create contact roles automatically based on custom criteria when an opportunity is created or edited.


Friday, April 10, 2026

Salesforce: Restrict picklist to the values defined in the value set

There is a checkbox in the Picklist field "Restrict picklist to the values defined in the value set". What is the purpose of this checkbox? 


An unrestricted picklist means that users can add extraneous values to records having that picklist field. To restrict values only to those in the picklist definition, enable this setting.

Checking the "Restrict picklist to the values defined in the value set" box in Salesforce ensures that only predefined values are allowed in a picklist field, rejecting any others from API updates. This promotes data consistency and prevents invalid entries, such as typos or unauthorized data.

User will get the following error when saving the record: INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST: Brand: bad value for restricted picklist field: value [API_field_name__c]

But are there any character limits that the API call can push the data past if we remove the restriction? 

Error saving record: STRING_TOO_LONG: field_name: data value too large: new values (max length=255) [API_field_name__c]


Tuesday, March 24, 2026

Salesforce: Field History Tracking

By design, when a field is enabled for tracking, it is not tracked during record creation. For example: Primary Campaign Source (PCS) in Opportunity:

ActionAppears in Field History?
Create Opp with PCS filled❌ No
Create Opp blank PCS❌ No
Update PCS from blank → Campaign✅ Yes
Change PCS Campaign A → Campaign B✅ Yes

The same result using SOQL, sample: 
SELECT Id, OpportunityId, CreatedDate, Field, DataType, OldValue, NewValue FROM OpportunityFieldHistory WHERE DataType = 'Text' ORDER BY CreatedDate DESC



Page-level ad