Integrate Chargebee with Freshdesk

Appy Pie Connect allows you to automate multiple workflows between Chargebee and Freshdesk

  • No credit card required
  • 7 days free trial
  • Lightning Fast Setup
Heart

20 Million work hours saved

Award Winning App Integration Platform

About Chargebee

Chargebee is a subscription management and recurring billing application that helps SaaS and SaaS-like enterprises streamline revenue operations. Chargebee works with the world's most popular payment gateways.

About Freshdesk

Freshdesk is a cloud based customer support software for companies with multiple support agents and complex customer service requirements. It combines the power of social networks, crowd support, email and phone with information channels like forums and internal notes.

Want to explore Chargebee + Freshdesk quick connects for faster integration? Here’s our list of the best Chargebee + Freshdesk quick connects.

Explore quick connects

Looking for the Freshdesk Alternatives? Here is the list of top Freshdesk Alternatives

  • Salesforce Integration Salesforce
  • Intercom Integration Intercom
  • Zendesk Integration Zendesk
  • Front Integration Front
  • HappyFox Integration HappyFox
  • Help Scout Integration Help Scout
  • LiveAgent Integration LiveAgent
  • Zoho Desk Integration Zoho Desk
Connect Chargebee + Freshdesk in easier way

It's easy to connect Chargebee + Freshdesk without coding knowledge. Start creating your own business flow.

  • Triggers
  • Customer Details Updates

    Triggers when customer details such as first name, last name, email, billing address, etc., are updated.

  • New Customer

    Triggers when a customer is created.

  • New Invoice

    Triggers when a new invoice is generated(with line item support).

  • New Payment

    Triggers when a payment is collected successfully.

  • New Subscription

    Triggers when a subscription is created.

  • Payment Failure

    Triggers when a payment fails.

  • Subscription Cancellation

    Triggers when a subscription is cancelled.

  • Subscription Cancellation Scheduled

    Triggers when a subscription is scheduled for cancellation.

  • Subscription Details Updates

    Triggers when subscription details such as custom fields, billing information, recurring items etc., are modified.

  • Subscription Pause

    Triggers when a subscription is paused.

  • Subscription Resumption

    Triggers when a paused subscription is resumed.

  • New Contact

    Triggers when a new customer is created.

  • New Ticket

    Triggers when there is a new ticket is created in Freshdesk.

  • Update Ticket

    Triggers when a Ticket is updated.

  • Actions
  • Change Next Billing Date

    Updates next billing date of a subscription.

  • Create Customer

    Creates a new customer in Chargebee.

  • Create Subscription

    Creates a new subscription along with the customer in Chargebee. This action does not support adding subscription to an existing customer.

  • Pause Subscription

    Pauses a subscription in Chargebee.

  • Record Offline Payment for an Invoice

    Records an offline payment for unpaid invoices.

  • Resume Subscription

    Resumes a paused subscription in Chargebee

  • Update Customer

    Updates customer details in Chargebee.

  • Create Contact

    Allows you to create a User/Customer in Freshdesk for your support domain.

  • Create Ticket

    Create a ticket in Freshdesk for your domain.

How Chargebee & Freshdesk Integrations Work

  1. Step 1: Choose Chargebee as a trigger app and authenticate it on Appy Pie Connect.

    (30 seconds)

  2. Step 2: Select "Trigger" from the Triggers List.

    (10 seconds)

  3. Step 3: Pick Freshdesk as an action app and authenticate.

    (30 seconds)

  4. Step 4: Select a resulting action from the Action List.

    (10 seconds)

  5. Step 5: Select the data you want to send from Chargebee to Freshdesk.

    (2 minutes)

  6. Your Connect is ready! It's time to start enjoying the benefits of workflow automation.

Integration of Chargebee and Freshdesk

Chargebee?

Chargebee is a subscription billing provider, specialized in providing merchant accounts for subscription-based businesses. It provides recurring billing and invoicing services to its clients extending various payment options like Credit Card, PayPal or Stripe payment facility. They also provide inbuilt analytics which helps the clients to see their revenue per month, how many customers are opting to make payments via credit card, how many customers are paying using PayPal, etc. Chargebee also provides its customers with a dashboard that helps them manage their subscription rates, customer loyalty programs and other details that they would need to effectively run a subscription-based business.

Freshdesk?

Freshdesk is a cloud-based customer support software that helps companies deliver best possible customer experience to their users. It offers multiple features that help businesses of all sizes manage their customer service operations efficiently. It includes features like live chat, email support, social media support, FAQs, etc. Freshdesk also has an app for iOS and Android devices that can be used for managing customer service operations on the go.

Integration of Chargebee and Freshdesk

In this section, it will be discussed how Chargebee and Freshdesk can be integrated together. The integration process between these two platforms is quite easy as both of them have implemented a standard API structure which makes it easier for developers to integrate one platform with another. In this case, Chargebee and Freshdesk can be integrated through the use of Chargebee’s API. From Chargebee’s side, this integration can be done using any programming language like PHP, Python, etc. On the other hand, integration from Freshdesk’s side can be done using their scripting language called FreshScripts.

This integration can be done in the fplowing steps:

Step 1. Create a Freshdesk account by visiting their website at https://www.freshdesk.com/pricing/. Make sure that during the sign up process you select “Start free trial” option instead of “Free edition” option because “Free edition” option does not have a scripting language. Once you have created your account, set up your business on Freshdesk so that it can cplect information about you and your company that will later be displayed on your dashboard. After creating your business on Freshdesk, create a new project in your dashboard and name it whatever you want it to be. Next, create a new script by clicking on the “New script” button in the top right corner of your screen. This will open up a new page where you are asked to enter the details about your new script. Make sure that “This is a FreshScript” checkbox is checked and leave everything else untouched and click on “Create” button to save your script. Your script will now open up in the editor page where you can enter your code to integrate Chargebee with Freshdesk. Here is an example of what this code should look like:

var callbackURL = "https://callback-url"; var chargebee_api_key = "Your_API_Key"; var chargebee_secret_key = "Your_Secret_Key"; //API Key and Secret Key of Chargebee var chargebee_client = chargebee({ api_key. chargebee_api_key, secret_key. chargebee_secret_key },{ 'method'. 'POST', 'host'. 'api.chargebee.com', 'path'. '/rest/v2/reference/subscriptions', 'headers'. { 'X-ChargeBee-User-Id'. api_user_id } }); /* Callbacks / // This function is executed after callback is validated and before sending the actual data var function(error, response. { if (error. { callbackURL = "http://www.example.com/error"; conspe.log(error); } else { var data = JSON.stringify(response); conspe.log(data); } }; // This function is executed after receiving the actual data from ChargeBee var function(error, response. { if (error. { callbackURL = "http://www.example.com/error"; conspe.log(error); } else { callbackURL = "http://www.example.com/success"; conspe.log(response); } }; chargebee_client({ method. "POST", headers. { "Content-Type". "application/json" }, body. { transaction. { subscription. { id. "subscription-id", plan. { type. "plan-id", attributes. [] } , customer. { firstname. "Jane", lastname. "Doe", email. "[email protected]" } , type. "one-time" } , next_billing_attempt_at. null }, metadata:{ source_token. source_token } } }.then(function(. { conspe.log("Receiving next billing date"); return callback(null, {next_billing_attempt_at:"2016-05-16"} ); }, function(err, response. { if (err. { conspe.log(err); } else { conspe.log(response); } }); 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 var callbackURL = "https://callback-url" ; var chargebee_api_key = "Your_API_Key" ; var chargebee_secret_key = "Your_Secret_Key" ; //API Key and Secret Key of Chargebee var chargebee_client = chargebee ( { api_key . chargebee_api _ key , secret _ key . chargebee _ secret _ key } , { 'method' . 'POST' , 'host' . 'api.chargebee.com' , 'path' . '/rest/v2/reference/subscriptions' , 'headers' . { 'X-ChargeBee-User-Id' . api _ user _ id } } . ; / Callbacks */ // This function is executed after callback is validated and before sending the actual data var function ( error , response . { if ( error . { callbackURL = "http://www.example.com/error" ; conspe . log ( error . ; } else { var data = JSON . stringify ( response . ; conspe . log ( data . ; } } ; // This function is executed after receiving the actual data from ChargeBee var function ( error , response . { if ( error . { callbackURL = "http://www.example.com/error" ; conspe . log ( error . ; } else { callbackURL = "http://www.example.com/success" ; conspe . log ( response . ; } } ; chargebee _ client ( { method . "POST" , headers . { "Content-Type" . "application/json" } , body . { transaction . { subscription . { id . "subscription-id" , plan . { type . "plan-id" , attributes . [ ] } , customer . { firstname . "Jane" , lastname . "Doe" , email . [email protected]" } , type . "one-time" } , next _ billing _ attempt _ at . null } , metadata . { source _ token . source _ token } } } . . then ( function ( . { conspe . log ( "Receiving next billing date" . ; return callback ( null , { next _ billing _ attempt _ at . "2016-05-16" } . ; } , function ( err , response . { if ( err . { conspe . log ( err . ; } else { conspe . log ( response . ; } } . ;

As you can see in the above code, there are three functions namely. init(), successCallback(), errorCallback(. that are being called at different points in time depending on whether there was an error or not during the execution of our script respectively. In init(. function, we are setting the value for callbackURL variable which is basically the URL that Freshdesk will call when our script succeeds or fails to execute properly so that we can inform the user about its results. In successCallback(. function we are logging out the output received from ChargeBee into our server logs

The process to integrate Chargebee and Freshdesk may seem complicated and intimidating. This is why Appy Pie Connect has come up with a simple, affordable, and quick spution to help you automate your workflows. Click on the button below to begin.

Page reviewed by: Abhinav Girdhar  | Last Updated on March 14,2023 02:59 pm