What is Freshchat


Freshchat is a modern messaging app for sales, support and customer engagement. A leap from legacy live-chat systems, it brings the continuity and experience of consumer messaging apps to businesses to help them convert visitors and delight customers.


Here's what you need to do once you sign up for a Freshchat account...


Activate your Freshchat account and set up a password


When you sign up with Freshchat, you will be directly taken to your Freshchat account. But before you do anything else, you need to activate your account and set a password.


You would have gotten an email from team freshchat. Click Activate Account and you will be taken to Freshworks account page, where you can fill your details and setup a password.


Install Freshchat on your website (logged-out visitors)


It’s easy to install the Freshchat messenger on your website. It only takes a few minutes and you can start chatting with your website visitors (people who haven’t logged in).


You can get the Javascript code from here. Or you can use the code snippet below. 

<script>
  function initFreshChat() {
    window.fcWidget.init({
      token: "WEB_CHAT_TOKEN,
      host: "https://wchat.freshchat.com"
    });
  }
  function initialize(i,t){var e;i.getElementById(t)?initFreshChat():((e=i.createElement("script")).id=t,e.async=!0,e.src="https://wchat.freshchat.com/js/widget.js",e.onload=initFreshChat,i.head.appendChild(e))}function initiateCall(){initialize(document,"freshchat-js-sdk")}window.addEventListener?window.addEventListener("load",initiateCall,!1):window.attachEvent("load",initiateCall,!1);
</script>
Note

Replace ‘Web Chat Token’ in the above code with your Freshchat token by going to 

Settings > Web Messenger.


Paste the code snippet on every page of your website where you want your Freshchat messenger to appear.


Install Freshchat on your webapp and restore conversations(logged-in users)


You can install Freshchat on your webapp in a few minutes and start communicating with logged-in users on your website.


You can restore user conversations for logged-in users on your webapp, every time they initiate a conversation from a different device or browser. To do this, you need to set a unique external ID and restore ID for every user. 


Use the following code snippet to identify logged-in users and restore conversations across browsers and devices.

<!--Body-->
function initFreshChat() {
 window.fcWidget.init({
  token: "WEB_CHAT_TOKEN",
  host: "WEB_CHAT_URL",
  externalId: '1234567',
  restoredId: restoreId? restoreId : null,
   onInit: function() {
     window.fcWidget.on('widget:loaded', function() { 
       window.fcWidget.user.get(function(resp) {
	 var status = resp && resp.status,
	 data = resp && resp.data;
	 if (status !== 200) {
	   window.fcWidget.user.setProperties({
	   firstName: "John", //user's first name
	   lastName: "Doe", //user's last name
	   email: "john.doe@gmail.com", //user's email address
	   phone: "8668323090", //phone number without country code
	   phoneCountryCode: "+1",  // phone's country code
	   plan: "Estate",  // user's meta property 1
	   status: "Active", // user's meta property 2
	  "Last Payment": "12th August" // user's meta property 3
	});
	window.fcWidget.on('user:created', function(resp) {
	  var status = resp && resp.status,
	  data = resp && resp.data;
	  if (status === 200) {
	    if (data.restoreId) {
		// Update restoreId in your database
	       }
              }
            });
           }
        });
     });
   }
 });
}
function initialize(i,t){var e;i.getElementById(t)?initFreshChat():((e=i.createElement("script")).id=t,e.async=!0,e.src="WEB_CHAT_URL/js/widget.js",e.onload=initFreshChat,i.head.appendChild(e))}function initiateCall(){initialize(document,"freshchat-js-sdk")}window.addEventListener?window.addEventListener("load",initiateCall,!1):window.attachEvent("load",initiateCall,!1);
<!--Body-->


  • External ID - This has to be unique to each logged in user. This information should be passed to Freshchat from your side. For example, a user’s email ID can be their external ID.
  • Restore ID - This will be created by Freshchat when a logged-in user (from your webapp) initiates a conversation on Freshchat for the first time. Restore ID is also unique to each user. This ID will be passed to your website from Freshchat on the user creation callback function. You need to store this ID in your database. 


The next time the same user starts a conversation through Freshchat, from a different browser or app, this restore ID, along with the external ID must be passed from your side to Freshchat for the user conversation to be restored. Otherwise every conversation initiated by the user on a new/fresh browser session will create a new user and the conversation history will be lost.


Note
  1. Replace ‘Web Chat Token’ in the above code with your Freshchat token by going to Settings > Web Messenger.
  2. Replace user values with your placeholders.
  3. Paste the code snippet on every page of your website where you want Freshchat to appear.


Customize the Freshchat messenger to reflect your brand


You can rebrand the Freshchat messenger to reflect your business theme, so that it looks completely at home on your website or product.

Step 1: Add your business logo and name


Go to Settings > Account Settings > Site/App Settings


Here you can upload your business logo, add your business name, and web notifications domain name.



The ‘Preferred Web Notifications Domain Name’ is useful when users choose to enable browser notifications from you.


Step 2: Pick a theme for your messenger


Go to Settings > Web Messenger > Customize Appearance


Here you can choose the color, background, and size of your Freshchat messenger. You can see a preview of your changes in the right.



Invite team members to Freshchat

You can invite team members to Freshchat by going to Settings > Team Members and adding them there.




When you add a team member, you can also define their role. The team member’s access to your Freshchat account will be restricted based on the role you assign to them. 



Freshchat comes with four default roles,

  • Account Admin/Owner can do everything in Freshchat.

  • Admin can do everything the account admin can do but Admin cannot access Billing settings.

  • Super User’s access is similar to Agents but a super user will also be able to create/edit campaigns and FAQs.

  • Agents have the most basic access in Freshchat. They can engage in customer conversations, access the People section and edit their own profile information.

If you’re on our Forest plan, you can also define custom roles with Roles and Permissions feature. 


You can change a team member's role or delete them anytime. 




Organize team members into Groups


If you have multiple teams working with your Freshchat account, like ‘Sales’, ‘Support’, or ‘Marketing’, you can create those teams in Freshchat as Groups.


Go to Settings > Groups > Add Group




You can set up Business Hours for your different teams, across regions, to keep customers in the loop about your business's availability. 


Once you create Groups, you can assign/auto-route incoming messages to different Groups instead of individual team members. Team members who are available/free can then pickup conversations and start replying.


You can edit group details/delete groups anytime by clicking on the drop-down option against the Group name.