Getting Started

Building Blocks

Custom Fields

Subscription Features

Localization

Invoices

Credits

Order Management

Billing Features

Taxes

Payment Methods

Direct Debit Payments

Configuring Gateways

Revenue Recovery

Hosted Pages

Notifications

Reports and Analytics

Data Privacy & Security

Fraud Management

Migration

Open Source Resources

Other Features

API Integration

Third Party Integrations

Salesforce 

Information
  • 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.
  • Salesforce Lightning UI is supported by the integration.

RELEASE NOTES

Information

The Chargebee package for Salesforce is not updated automatically, you must contact support@chargebee.com  to do so. To see if you have the latest version, in Salesforce, 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.

View All Releases 

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.

Prerequisites 

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.

Note
  • 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 support@chargebee.com  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 support@chargebee.com  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.

Example

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: Enable the Integration

Contact support@chargebee.com  and give us your Chargebee test site domain name (or live site domain, if you have already tested your workflows well). We will then enable the integration for the domain.

CAUTION

  • Connect one, and only one Chargebee site to your Salesforce instance.
  • Connect your Chargebee test site to a Salesforce sandbox environment with a copy of the Salesforce production data and test your workflows fully before connecting the production sites. This is to ensure that everything behaves the way you expect.

Step 2: Connect to Salesforce

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

CAUTION
Use a dedicated Salesforce user account for the integration.
All operations in Salesforce done by Chargebee via the integration are logged in Salesforce as done by the user account used in this step. If this user account belongs to an actual human Salesforce user, it wouldn't be immediately clear whether a given operation was performed in Salesforce by this user or by the integration.

Step 3: 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.

Note

If the installation takes too long and times out, navigate back to Chargebee app's Settings > Third Party Integrations > Salesforce and refresh the page after a minute.

Step 4: Data and Configuration Validation

In this step, Chargebee checks if certain prerequisites are met for syncing.

The following checks are done and any failures are reported:

In Chargebee:

  • Customer records in Chargebee are checked to see if email addresses are present. Any records without email addresses are listed. For the moment, you can choose to not sync those records and continue with the integration steps.

In Salesforce:

  1. If multicurrency is enabled in Chargebee, then it must be enabled in Salesforce.
  2. The Salesforce user account used to setup the integration must have access to the necessary objects and their fields in Salesforce.
  3. Mandatory Custom Fields in Salesforce must be mapped to fields in Chargebee. Any unmapped ones are flagged.

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

Step 5: 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
OR
Create a new Contact under an Account
When a Subscription is created Create a Subscription and an Opportunity
OR
Create a Subscription but don't create an Opportunity
When a Subscription is upgraded Update the existing Opportunity
OR
Create a new Opportunity and update the probability of existing Opportunity (to 0%)
OR
Don't update the Opportunity
When a Trial is Created or changed (from Trial to Active state) Create an Opportunity
OR
Don't create an Opportunity

Customer:
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.

Subscription:
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
Note

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 6: 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.

Information

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.

Note

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

Chargebee Operations 

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.

Note
  • 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 support@chargebee.com  and provide the API Name of the field to have it mapped to the Chargebee Customer object.
  3. From then on, whenever Create Customer in Chargebee is invoked for a Contact, the value placed in the custom field will get synced as the Customer ID for the Customer record in Chargebee. Moreover, once synced, the Customer ID in unchangeable is Chargebee though you can edit the mapped custom field in Saleforce.

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.

Limitations 

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.

FAQ 

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 support@chargebee.com  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?
Loading…