Stripe

Integrating Stripe With Salesforce Using Chargent

Chargent is the leading payment application available on the Salesforce AppExchange. Chargent allows you to process payments directly from within Salesforce. This guide shows you how you can easily connect Stripe with Salesforce using Chargent.

Not yet a Chargent customer? Get started today with a 30-day free trial!

About This Guide

This guide walks you through the steps needed to integrate Stripe with Salesforce using Chargent. We’ve provided links to installation, user management, and configuration topics for more details, so you can get up and running quickly. We’ve also added links to Stripe’s documentation for testing and account management.

Updated for Stripe’s Payment API

In May 2026, our Stripe Gateway Integration was reworked to use Stripe’s modern Payment API. This means a more current and secure integration for Chargent customers, along with a faster and more stable way to keep transaction statuses up to date. One of the many driving factors that led us to improve our Stripe integration was Stripe’s removal of support for ACH Direct Debit using legacy integrations, but there are many additional benefits to using Stripe’s newest Payment API:

  • Payment Method Flexibility: Take both credit card and ACH payments via Stripe in Salesforce.
  • ​​More Reliable Status Updates: Webhooks help transaction updates flow back faster and more consistently.
  • Continued Long-Term Support: This update keeps Chargent aligned as Stripe phases out older APIs.
  • Future-Ready Foundation: The groundwork is in place for new and exciting payment experiences.

Customers using our older Stripe integration can update by visiting How to update your Stripe gateway to use the Payment API.

Before You Begin

Before setting up your gateway, install the latest version of Chargent and configure your user permissions. Guides for these topics are available below to help you get started. If you’re not yet a customer, you can sign up for a free 30-day trial.

Set Up Your Environment

The following sections provide instructions for obtaining Stripe credentials and creating a gateway record in Salesforce. Ensure you run test transactions in a sandbox environment before processing live transactions in your production environment.

Create Your Stripe Account

If you don’t already have Stripe credentials for testing, sign up and create a Stripe account.

Using Your Stripe Account

Stripe has two modes: Test and Live. For testing, ensure that the setting is toggled to ‘Test mode’. This setting can be enabled by logging in to your Stripe account and activating the ‘Test mode’ toggle on the top right of your window.

When ‘Test mode’ is activated, you will see a bar at the top of your screen notifying you that “You’re using test data. To accept payments, complete your business profile.” You will not be able to perform live transactions when in ‘Test mode’. Learn more by visiting Test Mode and Use Cases.


Enable the Remote Site

Before setting up your Stripe gateway in Chargent, you must activate the Remote Site for Stripe in your org.

  1. Click the gear icon at the top right and choose Setup.
  2. In the Quick Find, search for and select Remote Site Settings.
  3. Locate the following Remote Site name and make sure the “Active” box is selected:
    • StripeConnect (https://connect.stripe.com)
  1. If the “Active” box is not selected, click Edit, select Active, and click Save.

Create Your Test Gateway in Chargent

Follow these steps to authenticate your Stripe account in Salesforce, create a gateway record, and complete the integration process:

  1. Log in to your Salesforce environment.
  1. Go to the App Launcher and click the Chargent app.
  2. Click the Chargent Settings tab and choose the Setup Wizard subtab.
  3. Click Yes when prompted, “Do you have a Payment Gateway account?”.
  4. Select ‘Stripe’ from the list and click Continue.
  1. (Optional) If you plan to process ACH transactions, add a Webhook Signing secret to ensure your transaction statuses remain up to date. See the Webhook Configuration section below for more information.
  2. Click Sign In to open a pop-up window.
  1. In the pop-up window, enter the email address connected to your Stripe account and click Continue.
  2. Enter your Stripe account password and click Submit.
  3. If you haven’t set up two-step authentication, you will be prompted to do so now. Use any of your preferred authenticator apps (Google Authenticator, Microsoft Authenticator, Authy, etc.). Once set up, click Next to continue.
  4. If you have multiple accounts, ensure you select the correct one and click Connect.
  5. Complete the remaining steps in the form related to your Stripe account.
  6. In the same pop-up window, select your Salesforce account.
  7. Enter your Salesforce credentials and click Log In.
  8. Complete the MFA requirement if applicable.
  9. Click Continue to save your changes.
  1. When you receive a message stating “Your credentials have been successfully verified!”, click Continue to complete the steps in the wizard.

The remaining choices in the Gateway Setup Wizard depend on your specific use case. For example, do you want to enable ACH payments? For more detailed information about the steps, see Gateway Setup Wizard.

Webhook Configuration

Chargent listens for real-time payment status updates from Stripe via webhooks. A webhook is an HTTPS notification that Stripe sends to your Salesforce org whenever a payment event occurs (e.g., a payment succeeds, fails, or is refunded). Without this configuration, Chargent will not automatically update transaction records when Stripe processes asynchronous events such as ACH payments.

For instructions, visit the Stripe Webhook Configuration Guide for Chargent.

Enable Your Direct Debit Network

Setting up your direct debit network is optional but recommended. When you reach the gateway setup wizard page labeled “Select the Payment Methods you accept,” select the direct debit network for your region.

Our Stripe integration supports the ‘ACH – US’ direct debit network. Choosing the correct direct debit network allows you to accept bank account payments and display the correct direct debit network fields in Chargent.

Running Test Transactions

After successfully creating your test gateway record, you can attempt your first test transaction. See Testing in Sandbox for instructions and best practices for testing. Every gateway has its own test payment methods and response codes. See the list below for information and resources specific to Stripe.

Testing Credit Card Transactions

Visit Stripe’s Testing Documentation for a complete list of test credit card numbers. To quickly verify your integration, you can use the following test credit card number to ensure Chargent is appropriately configured:

Processing Network Card Number Expiration  CVC
Visa 4242424242424242 Any date in the future Any 3-digit number
MasterCard 5555555555554444 Any date in the future Any 3-digit number
American Express 378282246310005 Any date in the future Any 4-digit number
Discover 6011111111111117 Any date in the future Any 3-digit number

Testing Bank Account Transactions

Visit the Testing Non-Card Payments section in Stripe’s testing documentation for a complete list of test bank account information. To quickly verify your integration, you can use the following test bank account information to ensure Chargent is appropriately configured:

Routing Number Account Number Bank Name Account Type
110000000 000123456789 Any bank name Checking

Testing Response Codes

It’s important to test different gateway responses to ensure that your gateway is configured properly. The gateway’s response is stored on a transaction record (see the Response Code and Response Status fields) in Salesforce.

Every gateway has its own response codes. For more information about testing various responses, such as declined transactions, see the Declined Payments section in Stripe’s testing documentation. See the table below for a few example test cards that will generate a decline.

Decline Reason Card Number Expiration  CVC
Generic decline 4000000000000002 Any date in the future Any 3-digit number
Insufficient funds 4000000000009995 Any date in the future Any 3-digit number
Lost card 4000000000009987 Any date in the future Any 3-digit number
Processing error 4000000000000119 Any date in the future Any 3-digit number

Running Live Transactions in Sandbox

Testing live transactions in your Sandbox is not considered best practice. However, if you wish to send live transactions from a Salesforce Sandbox, as a final step in testing, you must complete these steps:

Going Live in Production

Once you’ve tested your gateway integration in a Salesforce sandbox, you’re ready to move to production. See Moving from Sandbox to Production to learn how to migrate your Chargent configuration changes to your production environment. After moving Chargent to production, see Testing in Production for best practices prior to going live.

You can learn more about Going Live via Stripe’s Go-Live Checklist.

Prepare Your Stripe Account for Live Transactions

To prepare your Stripe account to accept live payments, please follow these steps:

  1. Ensure you’ve completed the Prerequisites for Stripe.
  2. Complete your business profile and activate Payments.
  3. Disable ‘Test mode’ for your Stripe account.
    • This setting can be turned off by logging in to your Stripe account and disabling the ‘Test mode’ toggle on the top right of your window. When ‘Test mode’ is disabled, you cannot perform test transactions using test cards.
  4. Find and save your ‘Live Secret Key’.

Creating Your Live Gateway Integration in Salesforce

So far, you’ve used your test Stripe credentials and created a test gateway in your Sandbox. Now, it’s time to create a new gateway record in your production environment specifically for processing live transactions.

  1. Log in to your production Salesforce org.
  2. Go to the App Launcher    and click the Chargent app.
  3. Click the Chargent Settings tab and choose the Setup Wizard subtab.
  4. Click Yes when prompted, “Do you have a Payment Gateway account?”.
  5. Select ‘Stripe’ from the list and click Continue.
  6. Click Live Transactions and enter your new live gateway credential, leaving the Endpoint Override field blank.
  1. Click Sign In.
  2. When you receive a message stating “Your credentials have been successfully verified!”, click Continue to complete the steps in the wizard.

For more detailed information about these steps, see our documentation for the Gateway Setup Wizard.

Running Live Transactions

With your live gateway record created, you are ready for the final phase of testing: running live transactions in a production environment. Visit Testing in Production for considerations and best practices related to testing in your production environment.

When testing with live payment information, you can prevent transactions from settling by voiding them immediately afterward. For more information, see Refunding and Voiding Transactions. As a precaution, we recommend using very low amounts to minimize any impact in the event you forget to void them.

To test gateway responses in the live environment, submit live transactions with the correct street address, zip code, and CVC information to generate successful responses. Likewise, submit incorrect street address, zip code, and card code information to generate other responses. You can void successful transactions immediately to prevent live test transactions from being processed.

Congratulations! You have successfully integrated Salesforce and Stripe! You can now process transactions through Stripe directly in Salesforce using Chargent!

Supported Features

All of Chargent’s gateway integrations support most of Chargent’s core features. Some features are reliant on support by the gateway itself. Chargent’s integration with Stripe includes, but is not limited to, the following features:

Address Verification System (AVS)

Using Stripe, you can validate US bank accounts on the Automated Clearing House (ACH) network via our partner, Lyons, a leading data verification provider. This feature is designed to satisfy NACHA’s mandate—Supplementing Fraud Detection Standards for Web Debits.

For more information, see ACH Validation.

Currencies

Chargent’s integration with Stripe supports multiple currencies. See Stripe’s documentation for Supported Currencies.

Additionally, Salesforce’s Multiple Currencies feature is supported when integrating Stripe with Salesforce using Chargent.

For more information about currencies in Chargent, see Understanding Currencies.

Data Levels

Data levels allow you to send more information with each transaction, ensuring the security and authenticity of the payment. Higher data levels translate to higher savings on transaction fees. The following levels of data are supported by Stripe using Chargent:

  • Level I

For more information about data levels, see Understanding Data Levels.

Payment Method Types

Below, we’ve listed the payment method types that are supported when using the Stripe gateway integration. For more information about payment methods supported by Chargent, see Payment Methods Supported.

Credit Cards

  • Visa
  • Mastercard
  • Discover
  • American Express
  • MC Eurocard
  • UK Maestro
  • JCB Card
  • Diners Club

For more information, see Understanding Credit Card Payments.

Bank Accounts

  • ACH – US

For more information, see Understanding Bank Account Payments.

Tokenization

Tokenization allows you to store payment information at your gateway and not in Salesforce. Tokenization helps you decrease the scope of your PCI compliance and improve security by storing your customers’ payment information on Stripe’s servers and not in Salesforce.

Chargent’s Stripe integration supports tokenization for the following payment method types:

  • Credit Card
  • Bank Account

The token returned by Stripe is stored in the Token field on the Chargent Order and Tokenization on the Transaction records in Salesforce. Additionally, tokens are stored in a Chargent Tokens record when Payment Methods is enabled in your org.

To learn more about why we recommend tokenization, visit Salesforce Tokenization.

Transaction Types

Chargent’s integration with Stripe supports the following transaction types:

  • Authorize
  • Capture
  • Partial Capture
  • Refund
  • Partial Refund

For more information about Transaction Types, see Understanding Payments.

Field Mapping

Salesforce sends payment information to your gateway based on the field values in your Chargent Order records. You can find your payment information in your Stripe account by clicking Transactions in the left sidebar. Then, the gateway sends a response to Salesforce, storing it in a Transaction record. Here are a few important examples of how the data is mapped between Salesforce and Stripe.

Chargent Field Salesforce Object Direction Stripe Field
Gateway ID Transaction < Payment ID
Tokenization Transaction < Customer
Token Chargent Order > Customer
Order Information* Chargent Order > Description
Billing First Name Chargent Order > Card[name]
Billing Last Name Chargent Order > Card[name]
Billing Country Chargent Order > Card[address_country]
Billing Email Address Chargent Order > Email
Currency Chargent Order > Currency

*The Order Information field allows you to send additional custom information about your transaction. Chargent does not automatically populate this field.

Gateway Responses

The Reason Code field on a Transaction record stores a response code provided by Stripe. To learn more about a specific response code, including the HTTP status code summary, see Stripe’s Error Documentation.

To review gateway responses in Salesforce, go to the transaction record in Chargent and examine these field values:

Transaction Field Name Description
Response Status The state of the transaction, such as “Approved,” “Declined,” or  “Error” received from the payment gateway.
Reason Code The code provided by the gateway, indicating why the transaction was successful or not. Stripe stores a code of 200 for successful transactions.
Gateway ID Corresponds to the Payment ID in Stripe. Use this field to reconcile your Salesforce transaction records with Stripe’s transaction records.
Gateway Response Contains the entire message received from the gateway and stored in the Salesforce transaction record. This field is helpful when troubleshooting your transactions.

Troubleshooting

If you are having trouble connecting to your gateway, we recommend starting with these troubleshooting steps.

For additional troubleshooting tips or frequently asked questions about Stripe, check out Chargent’s knowledge base articles or see the specific notes below:

Missing required param: mandate_data[customer_acceptance][online][user_agent]

If your ACH Transactions are failing with Response Status: Declined and Response Message: Missing required param: mandate_data[customer_acceptance][online][user_agent].

When using the Charge button on the Chargent Order object, or when initiating recurring transactions via the batch, the Payment Method Default field must be populated on the Chargent Order record. This field is typically populated automatically when a Chargent Order record is created using Chargent Anywhere, but if you are manually creating your Chargent Orders, ensure this field is populated before processing a charge. For more information about this field, see Payment Methods Object Relationships.

Getting Help

Contacting Stripe Support

Please contact Stripe if you experience any issues with or have questions about your gateway account.

Contacting Chargent Support

Contact our support team if you encounter any issues related to Chargent.