<!--NOLIM--><!--NLM011--><!--settings{"applyTo":"1","elemClass":"animat"}settingsend--> <script> (function(){ function t_ready(e) { "loading" != document.readyState ? e() : document.addEventListener ? document.addEventListener("DOMContentLoaded", e) : document.attachEvent("onreadystatechange", function() { "loading" != document.readyState && e() }) } var t396_waitForFinalEvent = function() { var e = {}; return function(t, n, o) { o || (o = "Don't call this twice without a uniqueId"), e[o] && clearTimeout(e[o]), e[o] = setTimeout(t, n) } }(); function checkscale() { let e = document.querySelectorAll(".t396__artboard_scale .animat .tn-atom"); Array.prototype.forEach.call(e, function(e) { let t = window.getComputedStyle(e.closest(".tn-atom__scale-wrapper")).transform; if(t!='none') { e.closest(".tn-atom__scale-wrapper").style.removeProperty("transform"), e.closest(".animat").style.transform = t } }) } t_ready(function() { if (window.isFirefox || window.isOpera) { let e = document.querySelector("body"), t = document.createElement("style"); if (e.appendChild(t), t.setAttribute("id", "nlm011delete"), t.type = "text/css", t.styleSheet ? t.styleSheet.cssText = ".animat{display:none!important;" : t.appendChild(document.createTextNode(".animat{display:none!important;")), document.querySelectorAll(".t396__artboard_scale").length > 0) { let elList = 0; let count = 0; let int = setInterval(function() { let e = document.querySelectorAll(".t396__artboard_scale .animat"); let elList2 = e.length; if (elList == elList2) { count += 1; if (count == 3) { clearInterval(int); if (e.length == document.querySelectorAll(".t396__artboard_scale .animat .tn-atom").length) { checkscale(); setTimeout(function() { checkscale(); }, 0); let e = document.querySelector("#nlm011delete"); null !== e.parentNode && e.parentNode.removeChild(e), window.addEventListener("resize", function(e) { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }, !0); window.addEventListener("orientationchange", function() { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }); } } } else { count = 0; elList = elList2; } },50); } } }); })() </script> <style> .animat{ overflow:hidden!important; } </style>
Increased productivity and collaboration of a dental invisible braces manufacturer
<!--NOLIM--><!--NLM011--><!--settings{"applyTo":"1","elemClass":"animat"}settingsend--> <script> (function(){ function t_ready(e) { "loading" != document.readyState ? e() : document.addEventListener ? document.addEventListener("DOMContentLoaded", e) : document.attachEvent("onreadystatechange", function() { "loading" != document.readyState && e() }) } var t396_waitForFinalEvent = function() { var e = {}; return function(t, n, o) { o || (o = "Don't call this twice without a uniqueId"), e[o] && clearTimeout(e[o]), e[o] = setTimeout(t, n) } }(); function checkscale() { let e = document.querySelectorAll(".t396__artboard_scale .animat .tn-atom"); Array.prototype.forEach.call(e, function(e) { let t = window.getComputedStyle(e.closest(".tn-atom__scale-wrapper")).transform; if(t!='none') { e.closest(".tn-atom__scale-wrapper").style.removeProperty("transform"), e.closest(".animat").style.transform = t } }) } t_ready(function() { if (window.isFirefox || window.isOpera) { let e = document.querySelector("body"), t = document.createElement("style"); if (e.appendChild(t), t.setAttribute("id", "nlm011delete"), t.type = "text/css", t.styleSheet ? t.styleSheet.cssText = ".animat{display:none!important;" : t.appendChild(document.createTextNode(".animat{display:none!important;")), document.querySelectorAll(".t396__artboard_scale").length > 0) { let elList = 0; let count = 0; let int = setInterval(function() { let e = document.querySelectorAll(".t396__artboard_scale .animat"); let elList2 = e.length; if (elList == elList2) { count += 1; if (count == 3) { clearInterval(int); if (e.length == document.querySelectorAll(".t396__artboard_scale .animat .tn-atom").length) { checkscale(); setTimeout(function() { checkscale(); }, 0); let e = document.querySelector("#nlm011delete"); null !== e.parentNode && e.parentNode.removeChild(e), window.addEventListener("resize", function(e) { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }, !0); window.addEventListener("orientationchange", function() { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }); } } } else { count = 0; elList = elList2; } },50); } } }); })() </script> <style> .animat{ overflow:hidden!important; } </style>
  • Manufacturing
  • Healthcare
  • Retail
Industry
The company was founded in Singapore and is a healthcare brand that produces dental invisible braces. It has quickly grown to become one of Asia’s largest consumer brands in the making, establishing its presence in nine markets across Asia.
Client
  • Experience cloud for Partner Doctor Portal and Manufacturing Portal
  • Digital Engagement
  • Custom Development
Salesforce Solutions
  • A lack of collaboration with doctors, patients and manufacturers
  • Lost data due to creating records from different social media manually
  • Need to store all files in AWS storage
Challenges Outline
1 year
Duration
1 Salesforce Developer
Vimera Team
<!--NOLIM--><!--NLM011--><!--settings{"applyTo":"1","elemClass":"animat"}settingsend--> <script> (function(){ function t_ready(e) { "loading" != document.readyState ? e() : document.addEventListener ? document.addEventListener("DOMContentLoaded", e) : document.attachEvent("onreadystatechange", function() { "loading" != document.readyState && e() }) } var t396_waitForFinalEvent = function() { var e = {}; return function(t, n, o) { o || (o = "Don't call this twice without a uniqueId"), e[o] && clearTimeout(e[o]), e[o] = setTimeout(t, n) } }(); function checkscale() { let e = document.querySelectorAll(".t396__artboard_scale .animat .tn-atom"); Array.prototype.forEach.call(e, function(e) { let t = window.getComputedStyle(e.closest(".tn-atom__scale-wrapper")).transform; if(t!='none') { e.closest(".tn-atom__scale-wrapper").style.removeProperty("transform"), e.closest(".animat").style.transform = t } }) } t_ready(function() { if (window.isFirefox || window.isOpera) { let e = document.querySelector("body"), t = document.createElement("style"); if (e.appendChild(t), t.setAttribute("id", "nlm011delete"), t.type = "text/css", t.styleSheet ? t.styleSheet.cssText = ".animat{display:none!important;" : t.appendChild(document.createTextNode(".animat{display:none!important;")), document.querySelectorAll(".t396__artboard_scale").length > 0) { let elList = 0; let count = 0; let int = setInterval(function() { let e = document.querySelectorAll(".t396__artboard_scale .animat"); let elList2 = e.length; if (elList == elList2) { count += 1; if (count == 3) { clearInterval(int); if (e.length == document.querySelectorAll(".t396__artboard_scale .animat .tn-atom").length) { checkscale(); setTimeout(function() { checkscale(); }, 0); let e = document.querySelector("#nlm011delete"); null !== e.parentNode && e.parentNode.removeChild(e), window.addEventListener("resize", function(e) { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }, !0); window.addEventListener("orientationchange", function() { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }); } } } else { count = 0; elList = elList2; } },50); } } }); })() </script> <style> .animat{ overflow:hidden!important; } </style>
Business Goals
  • Create a convenient way of collaborating with doctors, patients and the braces manufacturers themselves, providing automation and customizations
  • Store X-rays, scans and other files related to the treatment plan in AWS Cloud on Amazon
  • Create a convenient way to route leads and cases to the relevant skilled agent as well as communicate with the customer via social media
CPQ

DocuSign
<!--NOLIM--><!--NLM011--><!--settings{"applyTo":"1","elemClass":"animat"}settingsend--> <script> (function(){ function t_ready(e) { "loading" != document.readyState ? e() : document.addEventListener ? document.addEventListener("DOMContentLoaded", e) : document.attachEvent("onreadystatechange", function() { "loading" != document.readyState && e() }) } var t396_waitForFinalEvent = function() { var e = {}; return function(t, n, o) { o || (o = "Don't call this twice without a uniqueId"), e[o] && clearTimeout(e[o]), e[o] = setTimeout(t, n) } }(); function checkscale() { let e = document.querySelectorAll(".t396__artboard_scale .animat .tn-atom"); Array.prototype.forEach.call(e, function(e) { let t = window.getComputedStyle(e.closest(".tn-atom__scale-wrapper")).transform; if(t!='none') { e.closest(".tn-atom__scale-wrapper").style.removeProperty("transform"), e.closest(".animat").style.transform = t } }) } t_ready(function() { if (window.isFirefox || window.isOpera) { let e = document.querySelector("body"), t = document.createElement("style"); if (e.appendChild(t), t.setAttribute("id", "nlm011delete"), t.type = "text/css", t.styleSheet ? t.styleSheet.cssText = ".animat{display:none!important;" : t.appendChild(document.createTextNode(".animat{display:none!important;")), document.querySelectorAll(".t396__artboard_scale").length > 0) { let elList = 0; let count = 0; let int = setInterval(function() { let e = document.querySelectorAll(".t396__artboard_scale .animat"); let elList2 = e.length; if (elList == elList2) { count += 1; if (count == 3) { clearInterval(int); if (e.length == document.querySelectorAll(".t396__artboard_scale .animat .tn-atom").length) { checkscale(); setTimeout(function() { checkscale(); }, 0); let e = document.querySelector("#nlm011delete"); null !== e.parentNode && e.parentNode.removeChild(e), window.addEventListener("resize", function(e) { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }, !0); window.addEventListener("orientationchange", function() { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }); } } } else { count = 0; elList = elList2; } },50); } } }); })() </script> <style> .animat{ overflow:hidden!important; } </style>
Challenges
Solutions
There was a lack of collaboration with doctors, patients and manufacturers. As a result, employees had to spend more time putting together all the information and keeping their patients up-to-date.

The company had to create Leads manually when a potential patient wrote on Facebook, WhatsApp or WeChat. As a result, some of the data was lost and manual entry increased the time spent by agents on tedious tasks.


According to companies policy, they needed to store all files in AWS storage and arrange files by every treatment plan and type of files whilst accessing them from Salesforce and Partner Doctor portal (Experience cloud site).

The company had a lack of automation that could reduce the Agents’ workload such as Lead routing via Omni-channel, Lead auto-conversion and so on.
The Vimera developer built two experience cloud portals, one for manufacturing purposes and the second one for patients and partners such as medical clinics, doctors and others to make appointments and see treatment plans. Partners could log in and find medical treatment plans, cases, opportunities and other necessary information to use.

Due to the absence of a standard component, the Vimera developer developed the custom File component to upload/download the files to/from AWS from Salesforce and Experience Cloud site. Customization was about delivering a function to display content’s thumbnails, and file format, auto-create a folder in AWS for each new treatment file and use a gallery which the customer/agent could scroll right and left.

To improve the customer’s digital engagement through different channels, the Vimera developer configured an integration between Salesforce and various social media such as Facebook, WhatsApp, WeChat.

When a patient decided to order medical equipment the Vimera developer implemented a solution to send a request to the Manufacturer site via the Partner site, then a new request for braces was created and a doctor could receive notifications when it’s ready.

The issue was about routing leads and cases to the right agents, hence a Vimera developer configured Omni-Channel solution to deal with it. Usage of customer support multiple channels allowed the company to interact with customers and find the best solutions to solve issues easily and fast.

The Vimera developer has investigated the current process of Lead to Customer conversion and identified that on certain conditions it’s possible to auto-convert Lead to Account without manual interaction by Agent. Therefore, the Vimera developer implemented an auto-conversion process.
2
3
4
1
<!--NOLIM--><!--NLM011--><!--settings{"applyTo":"1","elemClass":"animat"}settingsend--> <script> (function(){ function t_ready(e) { "loading" != document.readyState ? e() : document.addEventListener ? document.addEventListener("DOMContentLoaded", e) : document.attachEvent("onreadystatechange", function() { "loading" != document.readyState && e() }) } var t396_waitForFinalEvent = function() { var e = {}; return function(t, n, o) { o || (o = "Don't call this twice without a uniqueId"), e[o] && clearTimeout(e[o]), e[o] = setTimeout(t, n) } }(); function checkscale() { let e = document.querySelectorAll(".t396__artboard_scale .animat .tn-atom"); Array.prototype.forEach.call(e, function(e) { let t = window.getComputedStyle(e.closest(".tn-atom__scale-wrapper")).transform; if(t!='none') { e.closest(".tn-atom__scale-wrapper").style.removeProperty("transform"), e.closest(".animat").style.transform = t } }) } t_ready(function() { if (window.isFirefox || window.isOpera) { let e = document.querySelector("body"), t = document.createElement("style"); if (e.appendChild(t), t.setAttribute("id", "nlm011delete"), t.type = "text/css", t.styleSheet ? t.styleSheet.cssText = ".animat{display:none!important;" : t.appendChild(document.createTextNode(".animat{display:none!important;")), document.querySelectorAll(".t396__artboard_scale").length > 0) { let elList = 0; let count = 0; let int = setInterval(function() { let e = document.querySelectorAll(".t396__artboard_scale .animat"); let elList2 = e.length; if (elList == elList2) { count += 1; if (count == 3) { clearInterval(int); if (e.length == document.querySelectorAll(".t396__artboard_scale .animat .tn-atom").length) { checkscale(); setTimeout(function() { checkscale(); }, 0); let e = document.querySelector("#nlm011delete"); null !== e.parentNode && e.parentNode.removeChild(e), window.addEventListener("resize", function(e) { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }, !0); window.addEventListener("orientationchange", function() { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }); } } } else { count = 0; elList = elList2; } },50); } } }); })() </script> <style> .animat{ overflow:hidden!important; } </style>
Results
Productivity increased by 30% due to automation and integration of the data from all sources.
Interaction between manufacturing, doctors and patients improved by 55% due to the Manufacturing and Partner portals implementation and mutual notifications.
The number of errors made by specialists in orders decreased by 15%.
Company managers reported an overall increase in staff motivation and a decrease in complaints about the monotony of work.
<!--NOLIM--><!--NLM011--><!--settings{"applyTo":"1","elemClass":"animat"}settingsend--> <script> (function(){ function t_ready(e) { "loading" != document.readyState ? e() : document.addEventListener ? document.addEventListener("DOMContentLoaded", e) : document.attachEvent("onreadystatechange", function() { "loading" != document.readyState && e() }) } var t396_waitForFinalEvent = function() { var e = {}; return function(t, n, o) { o || (o = "Don't call this twice without a uniqueId"), e[o] && clearTimeout(e[o]), e[o] = setTimeout(t, n) } }(); function checkscale() { let e = document.querySelectorAll(".t396__artboard_scale .animat .tn-atom"); Array.prototype.forEach.call(e, function(e) { let t = window.getComputedStyle(e.closest(".tn-atom__scale-wrapper")).transform; if(t!='none') { e.closest(".tn-atom__scale-wrapper").style.removeProperty("transform"), e.closest(".animat").style.transform = t } }) } t_ready(function() { if (window.isFirefox || window.isOpera) { let e = document.querySelector("body"), t = document.createElement("style"); if (e.appendChild(t), t.setAttribute("id", "nlm011delete"), t.type = "text/css", t.styleSheet ? t.styleSheet.cssText = ".animat{display:none!important;" : t.appendChild(document.createTextNode(".animat{display:none!important;")), document.querySelectorAll(".t396__artboard_scale").length > 0) { let elList = 0; let count = 0; let int = setInterval(function() { let e = document.querySelectorAll(".t396__artboard_scale .animat"); let elList2 = e.length; if (elList == elList2) { count += 1; if (count == 3) { clearInterval(int); if (e.length == document.querySelectorAll(".t396__artboard_scale .animat .tn-atom").length) { checkscale(); setTimeout(function() { checkscale(); }, 0); let e = document.querySelector("#nlm011delete"); null !== e.parentNode && e.parentNode.removeChild(e), window.addEventListener("resize", function(e) { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }, !0); window.addEventListener("orientationchange", function() { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }); } } } else { count = 0; elList = elList2; } },50); } } }); })() </script> <style> .animat{ overflow:hidden!important; } </style>
Our testimonials
We continue to work with them, and we highly recommend them.
Nicholas Chang
VP of Sales & Marketing
Flower Company
Miami, Florida, US
They generally are happy to work on all aspects of custom Salesforce development.
Fedor Orth
Head of Software Engineering
Clear Aligner Provider
Berlin, Germany
Discuss your task with our team
<!--NOLIM--><!--NLM011--><!--settings{"applyTo":"1","elemClass":"animat"}settingsend--> <script> (function(){ function t_ready(e) { "loading" != document.readyState ? e() : document.addEventListener ? document.addEventListener("DOMContentLoaded", e) : document.attachEvent("onreadystatechange", function() { "loading" != document.readyState && e() }) } var t396_waitForFinalEvent = function() { var e = {}; return function(t, n, o) { o || (o = "Don't call this twice without a uniqueId"), e[o] && clearTimeout(e[o]), e[o] = setTimeout(t, n) } }(); function checkscale() { let e = document.querySelectorAll(".t396__artboard_scale .animat .tn-atom"); Array.prototype.forEach.call(e, function(e) { let t = window.getComputedStyle(e.closest(".tn-atom__scale-wrapper")).transform; if(t!='none') { e.closest(".tn-atom__scale-wrapper").style.removeProperty("transform"), e.closest(".animat").style.transform = t } }) } t_ready(function() { if (window.isFirefox || window.isOpera) { let e = document.querySelector("body"), t = document.createElement("style"); if (e.appendChild(t), t.setAttribute("id", "nlm011delete"), t.type = "text/css", t.styleSheet ? t.styleSheet.cssText = ".animat{display:none!important;" : t.appendChild(document.createTextNode(".animat{display:none!important;")), document.querySelectorAll(".t396__artboard_scale").length > 0) { let elList = 0; let count = 0; let int = setInterval(function() { let e = document.querySelectorAll(".t396__artboard_scale .animat"); let elList2 = e.length; if (elList == elList2) { count += 1; if (count == 3) { clearInterval(int); if (e.length == document.querySelectorAll(".t396__artboard_scale .animat .tn-atom").length) { checkscale(); setTimeout(function() { checkscale(); }, 0); let e = document.querySelector("#nlm011delete"); null !== e.parentNode && e.parentNode.removeChild(e), window.addEventListener("resize", function(e) { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }, !0); window.addEventListener("orientationchange", function() { t396_waitForFinalEvent(function() { window.isMobile ? document.documentElement.clientWidth !== window.tn_window_width && checkscale() : checkscale() }, 500, "resizeruniqueid") }); } } } else { count = 0; elList = elList2; } },50); } } }); })() </script> <style> .animat{ overflow:hidden!important; } </style>
We assign a wide range of services
Salesforce Implementation & Customization

Salesforce Consulting & System Architecture

Salesforce Integration

Salesforce Org Audit

Salesforce Org Support

Salesforce Quick Start

Salesforce AppExchange Applications Development

Data Management & Migration

Migration to Salesforce Lightning