# Shopify + Salesforce integration and analysis

Connect Shopify and Salesforce to Hendrik. Use Shopify orders and refunds beside Salesforce lead and opportunity movement when a commerce sale includes a real CRM process.

## The question this stack can answer

Are Salesforce assisted sales showing up as Shopify purchases?

## What Hendrik reads from each source

- **Shopify:** Orders, refunds, payment status, product cost coverage, and location inventory show what happened in the store.
- **Salesforce:** Leads, opportunities, stages, and campaign membership show whether paid leads become qualified opportunities.

## What you need to connect

- Use one explicit 28-day comparison window, time zone, market, and legal-entity scope before comparing values.
- Connected Shopify order, refund, and inventory data for the same store and comparison window.
- Connected Salesforce org with agreed lead, opportunity, and stage definitions.
- Keep provider-specific definitions visible and use an identity or product mapping only where it is established for this workspace.

## Important limits

- Declared UTM text is not a verified ad-platform campaign identity; cost coverage and provenance control any margin claim.
- CRM campaign and opportunity records require an established identity relationship before attribution claims.

## Illustrative example

### Shopify + Salesforce review

Previous: 1–28 January. Current: 29 January–25 February. Both periods contain 28 days. Monetary values use USD and all timestamps use UTC. The example compares acquisition measures with CRM deal progression. A submitted lead and a qualified deal are different events, with different reporting dates.

*About this example: Synthetic data · illustrative analysis · Hendrik only acts with the permissions you give it.*

- net order value (USD, 28 days) (Shopify): 110,000 USD → 106,000 USD
- qualified opportunities created (count, 28 days) (Salesforce): 28 → 24
- refund value (USD, orders from the prior 28-day cohort) (Shopify): 6,800 USD → 9,200 USD

### What Hendrik checks

- **Order and refund cohorts:** Compare Shopify net order value with refunds by original order cohort. Keep paid status and the store currency visible.
- **Opportunity and campaign definition:** Check Salesforce record type, stage history, campaign membership, and identity coverage before using opportunity movement.
- **Explain the divergence:** Shopify: net order value (USD, 28 days) changed from 110,000 USD to 106,000 USD. Salesforce: qualified opportunities created (count, 28 days) changed from 28 to 24. Compare the timing and definitions before attributing one change to the other.

### What Hendrik sees

Shopify net order value fell and refund value rose. Salesforce qualified opportunities created fell.

### What to do next

Confirm the CRM-assisted commerce flow before changing acquisition; reassess after order and opportunity definitions are stable.

**Limit:** Shopify orders and Salesforce opportunities are not automatically matched or additive.

## Provider documentation

- [Shopify documentation](https://help.shopify.com/en/manual/reports-and-analytics)
- [Salesforce documentation](https://help.salesforce.com/s/articleView?id=sf.reports.htm)

## Start with this stack

[Create a workspace and connect Shopify + Salesforce](https://app.withhendrik.com/auth?mode=sign-up&acquisition_channel=marketing&return_to=%2Fonboarding%2Factivation&cta_location=integration_markdown&landing_page_id=combination-shopify-salesforce&combination=shopify-salesforce)
