How To Integrate WooCommerce With Salesforce Crm


  1. Download the .zip file from your WooCommerce account.
  2. Go to: WordPress Admin > Plugins > Add New and Upload Plugin with the file you downloaded with Choose File.
  3. Install Now and Activate the extension.

Setup and Configuration

Step 1: Create connection from Woocommerce to Salesforce

Go to WooCommerce > Setting > Sfdc and click “Add new connection”

Select Salesforce environment (Production or Sandbox) and click “Save changes“, you will be redirect to Salesforce login screen

After successful login, you will be redirected back to WooCommerce and that’s all you need to do.

Step 2: Create mapping

Go to Salesforce > Salesforce mappings and click “New mapping

First, select a connection and target Salesforce object as shown below:

Next, select an event to run this mapping. We have some options:

  • When an order is created
  • When order’s status changed
  • When product is created
  • When a customer registered

If you check the checkbox “Manual sync”, the current mapping will only run manually

Next, select order level. As you know, an order will have two parts:
1. Key information such as order total, order status, payment status, billing & shipping information.
2. Order items (also known as order products): There will be many records
at this step, you can choose what part to get

Next, mapping WooCommerce field to Salesforce object field. By default, the required fields of Salesforce object will be shown. If you want to add more fields, click button “Add fields” at the section’s bottom.

With each Salesforce field, we select an equivalent field of woocommerce to map.

On the left dropdown list, you can select mapping option, on the right, you select WooCommerce’s source data. We have some options:

  • Default mapping: One to One mapping.
  • Custom mapping: You can custom or combine multi WooCommerce fields to one Salesforce field.
  • Picklist value: Used to select a value for Checkbox, Boolean or picklist field.
  • Relation: Used to select a mapping that contains the parent record of the current mapping
  • Pick a Salesforce value: Used to select a parent record for reference field

At the end, select a primary key to prevent duplicate data (optional):


Customers will not see any changes on the storefront. At the backend, we can see the sync log at “Salesforce” metabox

You can also filter to see which orders have been synced, which orders have not been synced

Leave a Reply

Your email address will not be published. Required fields are marked *