Getting Started

Building Blocks

Custom Fields

Subscription Features




Order Management

Billing Features


Payment Methods

Direct Debit Payments

Configuring Gateways

Revenue Recovery

Hosted Pages


Reports and Analytics

Data Privacy & Security

Fraud Management


Open Source Resources

Other Features

API Integration

Third Party Integrations


  • This integration is supported for Salesforce Enterprise Edition and above.
  • Also, it's available only for select Chargebee plans. To know more, visit Chargebee's Plans and Pricing page.
  • All the features discussed here are also compatible with the Lightning UX in Salesforce.



The Chargebee package for Salesforce is not updated automatically, you must contact  to do so. To see if you have the latest version, select Setup > Installed Packages and then look up the Version Number for Chargebee for Salesforce.

Version: 1.19
Jan 15, 2019

  • Bug fixes.

Version: 1.18
Jan 7, 2019

  • Change Subscription: Now upgrade/downgrade Chargebee Subscriptions or add/remove addons from within Salesforce.
  • Specify Customer ID: Chargebee Customer IDs can now be set when syncing new Accounts from Salesforce.
  • Bug fixes and performance enhancements.

Version: 1.17
Nov 20, 2018

  • Invoice unbilled charges from a Salesforce contact
  • Sync credit notes into Salesforce
  • Cancel subscriptions from within Salesforce
  • Specify a subscription ID when creating a subscription from Salesforce
  • Improved validation checks prior to enabling the integration first time
  • Deleting a Chargebee invoice deletes the corresponding invoice in Salesforce too
  • General bug fixes

Salesforce is a CRM platform that allows you to keep track of the leads generated, deals closed, and new customers acquired.

Chargebee integrates with Salesforce to facilitate seamless sales and subscription data integration. Chargebee will sync all your customer data including plans, subscriptions, coupons, pricing etc., with Salesforce.


It is important to perform some checks on both Chargebee and Salesforce side to allow the integration to work smoothly:

On Chargebee Side:

1. Email ID

Customers in Chargebee need to have an email ID to be synced in Salesforce. If your customers do not have an email ID, they won't be synced and Chargebee will show the errors as part of the prerequisite check.

  • If 2 or more customers have the same email ID, the syncing will be erroneous.
  • In case you cannot ensure that all Customer email IDs are unique in Chargebee, you must map Customers in Chargebee to Contacts in Salesforce based on a field other than email ID (such as phone number or a custom field). Contact  to have this configured.

2. Field-Mapping Concerns

  • Mandatory Fields: Certain fields (whether regular or custom fields) for objects in Salesforce may have been designated as mandatory. It must be ensured that these fields are present in Chargebee, mapped to Salesforce and also populated in Chargebee to sync without errors.

  • Custom-Field Mapping: If there are custom fields in Salesforce that need to be mapped in Chargebee, create the fields in Chargebee under the relevant objects as per the image shown under this section. Then, contact  with the mapping requirement to have it configured.

    Custom field mapping is all the more important if you have configured mandatory custom fields in Salesforce.

    Eg. You may require comments to be entered when an opportunity is closed as lost in Salesforce. Now, when a subscription is canceled in Chargebee, the integration would attempt to update the original opportunity as closed-lost. This results in an error if the comments field has not been mapped or passed.

On Salesforce Side:

1. Field Accessibility:

The user logging into Salesforce, while setting up the integration, should have access to necessary objects (say, Pricebook) in Salesforce. Based on the user's credentials, Chargebee will get access to the fields/objects and the details will be synced to Salesforce accordingly.

2. Multicurrency:

If Multicurrency is enabled in Chargebee, it should be enabled in Salesforce as well.

3. Validation Rules:

Validation rules active in Salesforce can prevent the integration from successfully creating accounts in Salesforce.


Say you have a Salesforce rule that prevents duplicate accounts from being created. Now, if Chargebee has a customer with the same name as an account already existing in Salesforce, the duplication rule prevents the integration from creating the account in Salesforce.

Also, if in Step 4 of the integration, you choose to create a new account for each customer, the above duplication rule would lead to sync errors if more than one customer record has the same company name.

Such rules must be adjusted or worked around to allow the integration to work properly.

Integrating Salesforce and Chargebee 

The integration of Salesforce and Chargebee begins with the installation of the Chargebee package. The package authenticates, validates and syncs your customer information in Salesforce and Chargebee.
During the integration, the fields in Chargebee are mapped with the fields in Salesforce (with the help of standard and custom objects).

*These are created as Custom Objects in Salesforce. Read more about Custom Objects in Salesforce

Step 1: Connect to Salesforce

Navigate to Settings > Third Party Integrations > Salesforce. Click Connect. The Salesforce login page appears. Enter the credentials and proceed.

Step 2: Install the Chargebee Package

After the credentials are validated, the package installation process begins.

When prompted, choose to install the plugin for Specific Profiles…

Scroll down and enable access to the package for the appropriate Salesforce user profiles.

You will be navigated back to Chargebee after the installation finishes.


If you run into ‘Time Out' error during the installation of the Chargebee package, navigate back to Chargebee app's Settings > Third Party Integrations > Salesforce and refresh the page after a minute.

Step 3: Validate Prerequisite checks

In this step, Chargebee checks if certain prerequisites are met.
Here's the list of checks performed by Chargebee:

  1. All the customers should have an email ID in both Chargebee & Salesforce. Without the email ID, the customer will not be synced.

    When customers are synced from Chargebee to Salesforce, if the email ID is already present for any Salesforce Contact, the details for that customer are mapped to the Contact and no new records are created. If an email ID in a Chargebee customer record is present for any open Lead, the Lead is converted into an Account and Contact (contact  if you would like an Opportunity to be generated as well). The rest of the customer details are mapped to the Contact and new records are not created.

  2. If Multicurrency is enabled in Salesforce.

  3. If the user credentials have access to the necessary objects and fields in Salesforce.

  4. If you have custom mandatory fields set up in Salesforce, Chargebee can send default values to such fields. To set this up, contact .

Based on the checks performed, Chargebee will list the errors, if encountered:

  • The errors with emails IDs can be fixed then or later.
  • The errors concerning multi-currency and field access need to be fixed before proceeding

Here's how you could fix some of the common errors during the validation process:

Step 4: Configure Sync Preferences

Set a Date: You need to set a date for Chargebee to pick the records and sync with Salesforce. Based on your choice, Chargebee will sync all the records from the date specified by you.
Next, define how the changes in Chargebee should be updated in Salesforce.

What happens in Chargebee You can choose what should happen in Salesforce
When a Customer is created Create a new Account
Create a new Contact under an Account
When a Subscription is created Create a Subscription and an Opportunity
Create a Subscription but don't create an Opportunity
When a Subscription is upgraded Update the existing Opportunity
Create a new Opportunity and update the probability of existing Opportunity (to 0%)
Don't update the Opportunity
When a Trial is Created or changed (from Trial to Active state) Create an Opportunity
Don't create an Opportunity

What happens in Salesforce when a new customer is created in Chargebee is defined here. The customer details will be retained as Contact details in Salesforce along with the company name.
There are two ways of handling new customers in Chargebee

  1. Create an Account in Salesforce: This option will create a new Account in Salesforce for every new customer in Chargebee.
  2. Group the Customers: This option will create a Contact for an Account in Salesforce. The name of the Account will be the name of the customer given in Chargebee.

Every Subscription in Chargebee creates a subscription (custom object) in Salesforce.
Following are the scenarios as far as a subscription is concerned:

i) Create Subscription: When a subscription is created in Chargebee, you can choose to create a subscription and an equivalent Opportunity in Salesforce, or just create a Subscription but not an Opportunity

ii) Upgrade Subscription: When a subscription is updated in Chargebee, there are 3 ways of updating an Opportunity in Salesforce:

  1. The existing Opportunity can be updated
  2. Create a new Opportunity with the updated value
  3. Don't update the Opportunity in Salesforce

Subscription downgrades will not be updated to Salesforce

iii) Trial Subscriptions: When a trial subscription is created or changed, you can either create a zero value Opportunity in Salesforce or don't create an Opportunity in Salesforce. When the trial subscription is moved to active state in Chargebee, an Opportunity will be created in Salesforce.

When Chargebee is configured to create an Opportunity in Salesforce, Chargebee will check if there are any open Opportunities for the same Contact and map the corresponding Subscription with the Opportunity instead of creating a new Opportunity.

If there are more than one open Opportunities, the Opportunity with a matching product will be considered. If there are no matching Opportunities (with product), the most recently created Opportunity will be mapped to the Subscription and be updated with the relevant information like Products and Opportunity value.

Step 5: Run a Test Sync

Once the sync preferences are set, Chargebee will do a ‘Test Sync' with the first 10 records which were created on or from the date set by you. You could check how the sync reflects in your Salesforce account

The initial sync could be bumpy and you're likely to run into errors. Chargebee will give you a description of the errors. You can either resolve them and retry the sync or skip and proceed. If you choose to skip a customer record, keep in mind that the related records such as invoices, transactions will not be synced. You can always initiate a sync manually after fixing the errors with the given record.

After the test sync, you'll also find the option on Sync All Records which will initiate a sync for all records between Chargebee and Salesforce.


Once the integration has been setup, to avoid sync errors, it is recommended that you do not delete any of the Salesforce objects that Chargebee syncs to.

Manage Sync Preferences 

Auto Sync: This turns on automatic periodic syncing between Chargebee and Salesforce. The sync is done every 1 hour.

Sync Now: At any point in time, if there's a change in Chargebee that need to be reflected in Salesforce, Sync Now option will sync the changes made and update the same in Salesforce immediately.

Manage Preferences: This option allows you to update or change your sync preferences. However, the changes made after the initial setup will only take effect from the next sync onwards and will have no impact on the data that were synced previously.

Remove Integration: In case you want the integration to stop, this is the option to use. The link between Chargebee and Salesforce will be removed and will stop any further data from being synced until you set it up again. However, this will not affect the data which has been synced already.

Download: This option will download the error log (in a CSV format). This will help you sort the errors and prep the data again for sync.

From Salesforce to Chargebee 

Updates in your Salesforce account can be synced in your Chargebee site. Sync will take place in the background without you having to log in to your Chargebee account while working on your Salesforce Account, given Auto Sync is ON.
The following are the operations you can perform in Salesforce to sync in your Chargebee site :

Operation Description
Update Payment Method Prompts the customer to update their payment method. The customer will be redirected to Chargebee's Checkout page
Create Customer in Chargebee A leads conversion to customer can be recorded in your Chargebee site
Create Subscription Creates a subscription for a customer in your Chargebee site
Change Subscription Make changes to a subscription for a customer in your Chargebee site.

Custom Buttons

After setting up the integration of Chargebee with Salesforce, you will find Custom buttons of Chargebee in your Salesforce account. These buttons can be added to your existing Salesforce layout and can perform the operations ‘Update Payment Method', ‘Create Customer in Chargebee', ‘Create Subscription' and 'Change Subscription'.
You can place the buttons in the following objects in Salesforce:

  • Accounts
  • Contacts
  • Opportunities
  • CB Subscription

Only certain operations can be carried out in the given objects and here's how it works:

Salesforce Object Chargebee Operation
Account Create Subscription
Contacts - Create Customer in Chargebee
- Update Payment Method
- Create Subscription
Opportunity Create Subscription
CB Subscription Change Subscription

Configure Custom Buttons

There are three buttons available in Salesforce for the three Chargebee operations: ‘Update Payment Method', ‘Create Customer in Chargebee' and ‘Create Subscription'. Buttons for all three operations will be made available in your Salesforce account once the integration setup is done. Now to configure these buttons in the Salesforce Objects, follow the steps as below:

Step 1:

Navigate to Accounts/Contacts/Opportunities in your Salesforce Account

Step 2:

Select an Account or a Contact or an Opportunity and find the option Edit Layout on the left-top corner of the screen

Step 3:

In the ‘Account/Contact/Opportunity Layout' Menu, select Buttons where you will find the list of buttons along with the ones from Chargebee

Step 4:

Select the operation and drag it to the Account/Contact/Opportunity Detail section, in to the Custom Buttons box.

Step 5:

Save the changes you made using the Save option on the left-top corner.


If you're using Salesforce Lightning UI, Chargebee's buttons will be available in Mobile and Lightning Actions section.

Chargebee Operations 

Update Payment Method:

Payment methods and subscription are saved against a customer. Using this option you can prompt the customer to update their associated payment method.

An email will be sent to the customer with the link to the checkout page where they can add the payment details.

The information will be collected in Chargebee's end. Once the payment information is filed, new subscriptions can be signed up for.

If there is no customer or subscription linked to the Account, you can send a form to the customer to enter their details, the subscription they're opting for and the payment method. This will in turn create a customer, link a subscription to their Account and create an invoice and collect payment based on the payment method they saved.

Create Subscription:

This option will create a subscription for the customer from the list of plans.

Clicking on create subscription will allow you to create a subscription for the customer from your end.

However, if you want your customer to create a subscription themselves, you could use the option ‘Send Checkout Link'. This will send an email to your customer.

The checkout link included in the email will redirect the customer to the page where the Subscription details and the Customer information are pre-populated. The payment details needs to be entered by the customer in this page. However, the subscription created in Chargebee this way is reflected in Salesforce only on the next sync.

When a Subscription is created from an Account, you will be prompted to choose a Customer and an Opportunity. Choosing a Customer is mandatory. However, if you haven't chosen an Opportunity, Chargebee will create one in Salesforce by default.

When customer is created from a Contact, you will be prompted to choose an Opportunity. However, if you haven't chosen one, Chargebee will create an Opportunity in Salesforce by default.

Change Subscription:

This operation makes changes to a subscription in Chargebee through Salesforce and then syncs it back to Salesforce. You can make any combination of the following changes to a Chargebee subscription using this action:

  • Upgrade/downgrade the plan.
  • Add/remove addons.
  • Change the price.
  • Add coupon discounts.
  • Change the PO Number.
  • Change the number of billing cycles.

Furthermore, these changes can be applied immediately or on the next renewal. When changes are applied immediately, you can choose whether or not to raise any prorated charges/credits for them. Moreover, when charges are raised for the changes, they can either be invoiced immediately or added to unbilled charges.

To perform Change Subscription, open the CB Subscription record in Salesforce and click on Change Subscription.

Make the changes and click on Update to save the changes.

  • No Chargebee Checkout link can be sent to the customer via Salesforce for this operation.
  • How Opportunities in Salesforce are affected on performing Change Subscription is determined by your sync preferences.

Create Customer in Chargebee:

If there ever comes a need to save the details of a lead or a Contact in your Salesforce account as a customer in Chargebee, this option will come in handy. A new customer will be created in Chargebee based on your Customer's email ID.
In case you use Salesforce for customer acquisition and Chargebee for subscription creation & management, this is the right option for you.

Specifying the Chargebee Customer ID (available as of package v1.18)

The Customer ID is used to uniquely identify a Customer in Chargebee. You can specify this ID on the Salesforce side for every Contact synced to Chargebee.

Here's how:

  1. Create a custom field for the Contact object. This is the field that is intended to hold the Customer ID.
  2. Contact  and provide the API Name of the field to have it mapped to the Chargebee Customer object.
    Once the field has been filled in for a Contact, although you can keep changing the value in Salesforce, the value is unchangeable in Chargebee after syncing.


This integration has certain limitations which will be overcome in the upcoming releases.

  • Tiered, volume and stairstep pricing are not supported in this integration. Such plans and subscriptions do not sync to Salesforce.
  • When subscriptions are paused in Chargebee, there is no change in the subscription status in Salesforce. Moreover, when a subscription being synced to Salesforce for the first time is in paused state, it fails to sync showing an error.
  • When a plan is deleted in Chargebee, the corresponding Product in Salesforce doesn't get deleted, but stays active. It also remains active in the Salesforce Pricebook. However, on archiving a plan, the corresponding Product and its Pricebook entry get deactivated.


Is the Lightning UI framework supported?
Yes, the integration is supported in the Salesforce Classic and Lightning UI frameworks.

How do I change the Sync Start Date later?
Contact  to change the Sync Start Date you had set up initially, as the option is not currently available in the Chargebee App.

Does Chargebee support Person Accounts?
Chargebee does not support Person Account currently. However, if the feature is enabled in Salesforce, Chargebee will create Accounts in Salesforce with record type as Business Accounts.

Does Chargebee-Salesforce Integration support price overriding?
Price overriding done in Chargebee will reflect in Saleforce during one-way sync. If you're creating a subscription in Salesforce, you can define custom pricing

Will the shipping address of the subscription in Chargebee be visible in Salesforce?
Yes, the shipping address added for the subscription in Chargebee will reflect in the address section in ‘CB Subscription' custom object.

Was this article helpful?