Salesforce Integration 

Connecting Chargebee Retention to Salesforce makes it possible to personalize your customer's Cancel Experience based on Account information in Salesforce.

About the Salesforce Integration 

Chargebee Retention's Salesforce integration is via a Salesforce Connected App. Access to Salesforce is configured using OAuth. Currently, it's only a one-way sync. We integrate with the Accounts Table in Salesforce and pull back all fields from the Account record that match the internal_id for the exit session.

How and when data is synced 

The Salesforce integration does account lookup on session creation. When a new session is created for one of your accounts, it will do a lookup for that account in Salesforce and pull the account fields to use in setting up the session. We also query the metadata API for the account object schema. We also query the Salesforce metadata API to describe the Account object in your Salesforce org during integration configuration, or when integration settings are reviewed or edited.

There are currently 3 queries we run on the Salesforce API:

  1. Get the (single) id of an object where an indexed field matches the value passed to us.
  2. Describe the Account object to us (metadata/schema)
  3. Get a single Account object by id

Query #1 and #3 only run when your customer lands on the Chargebee Retention Page. We run query #2 more often, like when the integration is configured and when related Settings pages are loaded.

Logging Syncs 

We currently internally track when the last successful sync and the last unsuccessful sync were. Outside of our general server logs, we don't formally track every sync, and we don't have a public log exposed. We can verify whether or not data is being successfully retrieved, and what error messages may have occurred on the last sync when necessary.

Installing the Salesforce Integration

Setting up the Salesforce integration is as easy as a few clicks. Since it's an OAuth integration, whoever connects the integration will need the following permission set:

You'll need to pass us a unique id that is present in the Account record for us to sync those customer's records. Ensure that you are using a field marked as an "External ID" before connecting Chargebee Retention.

  1. Go to the Chargebee Retention Admin Page
  2. Click Settings in the lower left-hand corner
  3. Next click Integrations.
  4. Navigate to "Salesforce" listed under "Integrations" and click "Manage"
  5. The modal will pop up that lists the benefits of connecting to Salesforce

6. Click "Connect to Salesforce"

7. You will be asked to allow Chargebee Retention to have Salesforce Access click "Allow"

Upon clicking Allow, the Accounts table Salesforce data will automatically sync with Chargebee Retention.

8. After you enable the integration, click manage again and choose the Salesforce field that Chargebee Retention will use to sync records.

9. Send the ID when your customer clicks cancel. What you chose in step 8 is the property you'll need to pass us in your precancel request in the account.internal_id field along with the other fields you would like to send with your cancel session. For more information on Chargebee Retention installation methods, click here.

    "app_id": "APP_ID",
    "account": {
        "internal_id": "SFDC_EXTERNAL_ID"
Was this article helpful?