Troubleshooting Salesforce

This page documents potential issues encountered by integration users that are either obscure or frequently asked about. If an error message is not listed here, please search in Salesforce’s documentation to determine whether the error is Salesforce-related or Chargify-related, or peruse our Salesforce FAQ for general questions about the integration.

Chargify Log Errors

The Chargify Logs object will collect certain errors that occur from the integration’s natural sync.

Chargify Opportunity record missing

Sometimes when a webhook is sent from Chargify to Salesforce, there is no associated Opportunity currently in Salesforce. This error is intended to be an informational message to let you know that a particular webhook was not used to update a subscription because no associated Salesforce Opp exists. If you are receiving this message, please inspect your integration to understand why the Opportunity is missing.

As an example, let’s say a subscription was created in Chargify but the webhook failed to send to Salesforce. Later, a billing date change is made in Chargify. The billing date change webhook is sent to Salesforce for that subscription, but there is no corresponding subscription ID attached to an Opportunity in Salesforce. Therefore, this error is returned.

Webhook Errors

Webhooks sent from Chargify to Salesforce to sync subscription data can return particular errors that will be displayed in the Chargify webhook panel.

All webhooks returning 500 in Chargify

When all webhooks sent by Chargify to Salesforce are returning a 500 in the webhook panel and your account is on a free trial, it’s possible that your Salesforce license with the Chargify integration may be expired.

  1. Go to ‘Setup’
  2. Click ‘Installed Packages’
  3. Look for the ‘Chargify’ installed package and check the expiration date

If the license is expired, please contact support@chargify.com to purchase one.

Webhook returns success message, but data isn’t syncing

It’s possible that the webhook endpoint entered inside Chargify is incorrect, if there are no associated error logs in the Chargify Logs. The URL associated with Salesforce should be comprised of two parts:

  1. From Salesforce:
    • Click Setup
    • From the Quick Find box, search for “Site” and click on the link. It will be under the “Develop” section
    • Click on the “Site Label” for the Chargify Site that was created
    • Copy the site’s “Domain Name”. An example would be https://my-developer-edition.na40.force.com
  2. To that domain name, append this text to the end: /services/apexrest/CHRGFY/ChargifyWebhook

The full URL will resemble this: https://my-developer-edition.na40.force.com/services/apexrest/CHRGFY/ChargifyWebhook

Watch out for duplicate slashes in the URL. Additionally, all live Chargify sites must be using HTTPS in the webhook URL rather than HTTP.

Chargify Configuration Errors

Error: Please check Setup -> Security -> Remote site settings

Please verify that only the subdomain is entered in the “subdomain” field on the Chargify Configuration page, rather than the full Chargify URL. For example, if your Chargify URL is https://subdomain.chargify.com, the Chargify Configuration page should look resemble the screenshot below:

Opportunity Errors

Reync cannot be performed on this Opportunity

This error can occur when attempting to click the “Resync Subscription” button on the Opportunity when the following setting is configured under Chargify Configuration:

  • Update existing Opportunity on Chargify Product change

When a product change occurs, the original Opportunity’s subscription ID will be wrapped in parenthesis to signify that it should no longer be updated. Please search for the subscription ID in Salesforce and attempt to resync the active Opp; it will not have parentheses around the subscription ID.

API key and subdomain is missing

Each Visualforce page makes an API call to Chargify to retrieve the requested information and display it inside Salesforce. If this error is being returned when interacting with a Visualforce page, such as the invoices and transactions pages, it’s possible that there is not enough information in the Opp to complete the API call.

Please ensure that the following requirements are met on the Opp:

  • It contains a subscription ID and Chargify subdomain
  • The subdomain is spelled correctly
  • The subdomain matches one that is configured as part as the integration

Other Salesforce Errors

“Your account has been disabled” when configuring permissions for Site User

On step 3 of the Salesforce installation, when clicking “Edit Assignments” on the Site Guest User to grant them the “Provide Permissions to Chargify” permission set, this error may be returned.

The cause is that the Site associated with the Site User may be inactive. Please follow these steps:

  1. Click ‘Setup’
  2. In the Quick Find box, type “Sites” and click the appropriate link; it will be under Build > Develop
  3. Click “activate” on the site created in the previous step of the install process.

If you have enabled the Salesforce Summer 20’ release early and are experiencing 500 errors with your webhooks this workaround will correct the issue.

When you experience such error, please follow the below steps:

  1. Create new Permission Set granting “Read” access to Price Book object
  2. Assign newly created permission set to the Guest Site User

Detailed step by step instruction:

  1. Create new Permission set with “Read” access to Price Book

    a. Navigate to Setup -> Manage Users -> Permissions Sets

    b. Click the “New” button to create a new Permission Set

    c. Populate the form (Label, API Name) and Save. Do not select any License.

    d. Open the “Object Settings”

    e. Scroll through the content and open “Price Books” link

    f. Now “Edit” the configuration

    g. Set the checkbox next to “Read” permission and Save the configuration

You have successfully created the “Access to Price Book for Guest User” permission set. Now lets assign it to the Guest Site User

  1. Assign newly created permission set to the Guest Site User

    a. Navigate to Setup -> Build -> Develop -> Sites

    b. Open the site dedicated to Chargify integration (you might have more than one site for Chargify, just pick any)

    c. Click the button “Public Access Settings”

    d. Go to “Assigned Users”

    e. Open the Site Guest User record by clicking the Full Name (not Edit)

    f. Locate the Permission Sets section and click “Edit Assignments”

    g. On the list of available permission sets find the one we created previously and enable it by moving from left to right window. Save the configuration.

You have successfully assigned the permission set to the Guest User. On the list of Permission Set Assignments for the Guest Site User you should now see the newly assigned “Access to Price Book for Guest User” (like in the screen above)

The integration is ready for retest: you can either resend the failed webhooks from Chargify to Salesforce, or trigger new webhooks by creating a new Subscription. Now the Webhooks “payment_success” and “statement_settled” should be processed successfully in Chargify and Salesforce.