Stripe to Salesforce Integration: Easy to Follow Guide

Digital data integrity is a must-have when talking about finance and sales data. Does your payment process align with the customer journey? If not, now might be a good time to overhaul your business processes to offer your customers an improved user experience.

With Stripe and Salesforce integration, businesses can create a winning strategy as these two services work in tandem, ensuring that the end-user experience is exceptional. As a result, business users can focus on improving their performance instead of the day-to-day routine data management.

This guide covers the key features and benefits of both Stripe and Salesforce and demonstrates two methods to connect them.

Table of contents

  1. What is Stripe?
  2. What is Salesforce?
  3. Why you should connect Stripe with Salesforce
  4. Stripe to Salesforce Integration using native App
  5. Cloud Integration Salesforce and Stripe
  6. Summary

What is Stripe?

Logo Stripe

Stripe is one of the most popular online payment gateways and the #1 option for many businesses. The service offers out-of-the-box integrations with Magento, Squarespace, Shopify, BigCommerce, etc. Stripe works as a mediator between buyers and sellers, providing secure payments and data protection.  

It makes it possible for any business to accept payments and solve various card payment problems, including card storage, recurring payments, and bank withdrawals. The platform is distinguished by high transaction processing speed and security due to its easy-to-use suite of payment APIs. From a business point of view, it’s a very convenient tool for integrating payments into websites and online stores.

Key features

  • Pre-built integrations and libraries for every stack, from React and PHP to .NET and iOS.
  • Works with all types of currencies, banks, credit cards, and wallets.
  • A complete set of security features and customization options.
  • ML fraud protection helps detect and stop fraud before it happens.

Additional resources

What is Salesforce?

Logo Salesforce

Salesforce is the world’s leading CRM platform, trusted by thousands of brands, and gaining the top 3 Forbes ranking of the most innovative companies for five years. It provides companies with a SaaS product that covers all stages and moments of the customer lifecycle. The product focuses on closing deals but also tracks sales activity in real time.

Salesforce integrates with the business’s exact needs rather than forcing it to adapt to a CRM product. It also equips businesses with valuable insights that improve their customer relationships and provide them with a much-needed competitive advantage.

Like Stripe, Salesforce allows for almost any integration and gives a chance to customize everything, the front-end, back-end, and even the database model.

Key features

  • Customer relationship management. Access customer data, the details of past and present interactions, and any updates or changes that could affect future interactions.
  • Dashboard functionality. Access interactive dashboards to analyze how sales and customer support issues impact business and get comprehensive company performance data.
  • Managing opportunities. An outstanding Salesforce feature offers a detailed view of customers, their history, buying patterns, etc., to provide powerful insights.
  • Support for email integration. Allows synchronizing calendars and schedules with various email applications, such as Microsoft Outlook and Gmail.

Additional resources

Why you should connect Stripe with Salesforce 

Integrating CRM and financial/accounting applications allows you to constantly collect sales data and track statistics in real time. Such integration is vital to creating sales reporting from a sales, marketing, and financial perspective. 

Whether done monthly, quarterly, or annually, business users rely on seeing their company’s accurate and reliable performance overview. At the same time, for finance, it’s an opportunity to model revenue forecasts based on the customers registered in the CRM system. Integration also affects the relevance of data by maintaining and promptly updating the customer database of any business. It consists mainly of the timely update of Salesforce accounts after successful payment through the payment gateway. Moreover, it can help enrich a customer profile for future purchases and provide cross-selling or subscription management opportunities.

  • Customer data synchronization. Create 360° customer overview — a single, integrated environment for sales, marketing, and finance teams to work together. Access unified customer data on both platforms. Business users receive information about clients faster, meaning they can resolve issues more quickly, bypassing the accounting link.
  • Data visibility. Use the power of the automated integration flows to reduce the number of errors, have enough access to data, and get data on time, complete, and without any data discrepancies. It also helps to shorten the time to value, which is crucial for businesses. 
  • Efficiency improvement. Automate processes, provide easy access to data for different teams, and speed up the whole sales process. Analyze unfinished transactions and erase the possibility of losing a client who stopped at the payment stage.

Stripe to Salesforce Integration using native App

Stripe Billing connector for Salesforce is a native integration developed by Stripe itself. However, this connector is still in beta and is only available to beta users as a managed package that installs into the Salesforce account.

Stripe Connector for Salesforce Billing

Stripe’s module runs by utilizing the additional Billing and CPQ Salesforce module (paid module). The application promises to provide a secure connection between Salesforce and Stripe systems. After the installation, the app can be opened within Salesforce, and further configuration can be set up. You must complete authorization via test or live mode and define the data mapping. 

Stripe’s application offers to add the necessary client data to the metadata field. If you add a Salesforce account ID as metadata for each Stripe account, you can see payments related to a specific Salesforce customer. However, in this case, you must manually enter the correct payment data into the CRM and coordinate the processes between the sales manager and the accountant. For now, there’s no answer on the Stripe forum on how to automate this case. 

Another significant upside of this method is the fact that this tool allows you to copy data from Salesforce to Stripe, not vice versa.

Note: Find complete installation documentation here.

Cloud Integration Salesforce and Stripe

Skyvia offers a wide range of capabilities for solving data-related tasks. It’s a cloud-based platform that supports ETL, ELT, and reverse ETL solutions and merges data from your local or cloud-based services and applications. The service meets all crucial business challenges:

  • Easy to use (set up, integrate, and maintain).
  • Scalable (capable of meeting any load and providing flexible pricing).

Skyvia also allows for building and managing complex data pipelines with many sources by applying Data Flow and Control Flow features. Using a variety of integration scenarios, you can receive fully automated and trouble-free data processes.

Key Skyvia advantages 

  • The platform provides rich functionality and more opportunities to implement complex integrations. The service implements more complex logic with trigger scenarios (not just If logic), applying parallel processing, error interception, etc.
  • The interface is user-friendly and convenient. As it’s a no-code wizard, business users can configure data flows visually. 
  • Skyvia’s approach has an advantage when it comes to debugging workflows. Since it’s a visual tool, users can observe the execution of the task in real-time, monitor the data count, and have detailed information about the errors.
  • The service offers template scenarios with pre-made connectors for cloud-based, on-premise, or hybrid ecosystems.
  • No deployment and installation are needed as the service is cloud-based and browser-based.
Skyvia Get Started

In this article, we show two popular client tasks and demonstrate how to easily and quickly configure data integration between Stripe and Salesforce.

  1. Automate the customer data upload from the payment gateway to the CRM system (as a periodic update).
  2. Upload pending payment information from Stripe PaymentIntents to Salesforce Opportunities.

Since the Skyvia platform is very flexible and has many capabilities, there are several scenarios for a periodic data update (like data import or synchronization). However, we’ll consider the most advanced solution — the Data Flow. 

Automate the customer data upload from the payment gateway to the CRM system (as a periodic update)

Business case description

Within the company, different departments are engaged in maintaining various data systems. For example, accountants are responsible for the payment system, whereas managers — for the CRMs and sales reporting. However, managers don’t have access to the payment data, meaning there’s data inconsistency. This can cause confusion in the information field, inaccuracies in the reports, and additional manual work to bring the data into a strongly consistent form. In this case, integrating financial applications with CRM increases the relevance of data, allowing businesses to maintain a database of customers who have interacted with their companies in the past. 

Before we start our step-by-step guide, there are some details on the specific way of data storage within these two platforms. 

In Stripe, the Customers entity (table) is responsible for customer information, this table stores data about those who made a payment or are still in the payment process. The Customers table also doesn’t have a field responsible for the last modification date. 

At the same time, Salesforce has several entities or candidate tables to accept data (Contacts, Leads, Customers). Additional details on the tables also include:

  • Contacts table is the largest entity regarding the number of representatives, as these are business contacts. 
  • Customers table isn’t a good fit for two reasons. In Stripe, the Clients table contains data of those users who haven’t yet made a purchase, so in fact, they aren’t yet customers. Also, this entity doesn’t fit the list of fields; there aren’t many of them in it.
  • Leads table is the most suitable one in terms of data filling and adequacy.

Step 1. Establish connections between the two services and Skyvia

Note! You must create a Skyvia account if you don’t have one yet. You can also try Skyvia with a free trial version.

First, you need to create connections between Stripe and Skyvia as well as between Salesforce and Skyvia. To do this, you must sign in with Skyvia and click +NEW in the top menu. Then, click the Connection button in the menu on the left.

Skyvia Default Workplace

On the opened page, select the service you want to connect: Stripe or Salesforce. Since the default name for a new connection is Untitled, don’t forget to change it. Then, sign in with the service, enter credentials for your account, and create a connection. In the screenshot below, you can see an example of a Salesforce connection.

Salesforce Connector Settings

Step 2. Setting up Data Flow for data integration

Data Flow is an easy-to-use no-coding tool designed for advanced data integrations. It helps to manage all data integration and transformation requirements in a single unified location.

Data Flow capabilities: 

  • Loads data into multiple sources at once.
  • Offers complex, multistage transformations.
  • Enriches data from different sources and loads into the data storage.
Stripe-Salesforce workplace

The first step in data integration begins with the creation of parameters and variables.

The first parameter transferred between runs is the date the data was last updated. With each data update, this parameter is changed.

Parameters settings

Since Data Flow doesn’t automatically count successful or failed load rows, we need to create two variables to record successful and failed uploads.

Variables for Stripe-Salesforce connection

In the next step, you need to connect pre-created data sources from services. First, we configure the Source connector, in this case, it’s Stripe. 

Note! We can check if the data source is running with a test.

With the Source connector, you can either make a query or execute a command. In our example, we will run the command.

Source settings

After selecting the action, choose the fields needed. In this example, the fields are Name, City, Country, Address (line 1, line 2), ZIP code, State, email, phone, date of account creation, and Metadata (for Last name and Company name lines are mandatory for Salesforce).

We also select Maxdate (an internal variable that stores the maximum date for further data updates).

Next, we work with the Target connector: Salesforce. Here we have to do the Insert operation and work with the Leads table. In the Mapping Editor, we see the list of properties/attributes that can be combined.

Mapping editor

The required field for Salesforce is Last Name; however, Stripe doesn’t use such a field; it only has a Name field. Therefore, using the Token function, we extract the desired data from the Name field.

We also need to convert the Company line as services apply a different number of fields. At Salesforce, it’s one field, and Stripe has two fields that need to be merged. 

The last thing to set up is the Result settings. It’s necessary to specify what we consider a successful number and what the number of unsuccessful rows is. After that, save the integration and run the integration package.

Upload pending payment information from Stripe PaymentIntents to Salesforce Opportunities

Business case description

It’s a common case when there are a number of customers who have been billed but who, for some reason, haven’t paid for the company’s services or goods, being literally five minutes away from the deal. These are potential customers with a high degree of purchase probability. 

Since Stripe stores data about such unfinished activities, it would be nice to turn this information into potential deals as well as figure out why the client left and didn’t finish the purchase.

Before we start our step-by-step guide, there are some details on the specific way of data storage within these two platforms. 

In Stripe, two entities (tables), PaymentIntents and Charges, are responsible for information about payments, the first table stores data about those who made the payment or are still in the process of paying (at some of the payment stages). The second one stores data on completed payments, including refunds. Since we need to consider account refunds, only the Charges entity suits us. 

In Salesforce, the most suitable entity for storing the transaction amount is Opportunity. It reflects business opportunities in potential deals, which then turn into real ones. Statuses reflect the stage at which the transaction is from creation to closing in case of success or failure. Since our payment hasn’t been completed, we migrate to transactions with the Need Analysis status. 

Step 1. Establish connections between the two services and Skyvia

Note! You must create a Skyvia account if you don’t have one yet. You can also try Skyvia with a free trial version.

Like the previous business case, the first stage is to set up the connections between the two services and Skyvia. See above to find out more details

Step 2. Setting up Data Flow for data integration

As in the previous case, you must first create a parameter for regular data updates. This parameter is updated every time the Data Flow is running.

Parameters settings

The next step is to create two variables to count successful and unsuccessful uploads.

Variables settings

In the next step, you must connect pre-created data sources from services. First, we configure the Source connector, in this case, it’s Stripe. 

Note! We can check if the data source is running with a test.

With the Source connector, you can either make a query or execute a command. In our example, we will run the command.

Select PaymentIntents to choose clients with different statuses (requires confirmation, processing, etc.), except for successful status. Successful status transactions are transferred to the Charges structure.

Source settings

As we need data that is later than the date specified in the parameter, an internal Maxdate variable is created. Thus, only the new data specified in the parameter will appear before execution. 

Stripe-Salesforce workspace

After completing the cycle, you need to update the New Data parameter. To do this, a corresponding variable is created that will define the Value type as Maximum.   

Value settings

Next, we work with the Target connector: Salesforce. Here, the data is written to the Opportunity table. In the Mapping Editor, you can use auto-mapping. Thus, most data is matched automatically (for example, description, amount, etc.). The rest of the fields need to be matched manually.

It’s important to note that a unique name must be generated when creating an Opportunity. In our example, such a name is generated as follows: Invoice plus InvoiceId. Among other options, you can use the company name, customer name, etc.

Another required field in Salesforce is StageName. There we prescribe the Needs Analysis stage.

Another critical point is to change the Amount value since Stripe displays the value in cents, whereas Salesforce shows it in dollars. Therefore, you need to register the Amount*0.01 value.

Mapping editor

After saving all the settings, you can run the package as everything is ready.

Summary

Data integration between Salesforce and Stripe helps businesses to stay ahead of industry shifts. As the number of people who can work from home or remotely during the pandemic has increased, so has online sales making it crucial for companies to optimize their sales and financial data. 

This article shows two ways of integrating data with native integration (beta version) and seamless integration by Skyvia with two real-life examples of solving business cases. If you want to discover what other integrations Skyvia can offer, sign up for a demo!

Skyvia Get started
Vlada Maksymiuk
Vlada Maksymiuk
Content Manager
10 tip to overcoming Salesforce integration challenges