Connect your Shopify store to Chatwoot using a custom Shopify app. Once connected, your team can view customer orders, payment status, and fulfillment status from the conversation sidebar.
This option is available for selected workspaces. Contact Chatwoot support if you would like it enabled.
Before you start
-
Administrator access to your Chatwoot workspace.
-
Permission to create and install apps for your Shopify store.
-
Access to a Shopify Partner organization in the Dev Dashboard. This setup requires a Custom distribution installation link.
You can connect one Shopify store per workspace. This integration connects order information; it does not install a live chat widget or change your subscription. Custom-app setup is unavailable for workspaces billed through Shopify.
1. Create your app in Shopify
-
Open the Shopify Dev Dashboard and select your Partner organization.
-
Go to Apps → Create app → Start from Dev Dashboard.
-
Name your app, for example Chatwoot Support, and create it.
-
Open Versions and create an initial version.
-
Turn off Embed app in Shopify admin. If Shopify requires an App URL, use
https://shopify.dev/apps/default-app-hometemporarily. You will replace it in step 4. -
Release the initial version.
See Shopify’s app creation guide for more information.
2. Find your app credentials and installation link
Open your app’s Settings → Credentials and locate the Client ID and Client secret. Keep this page open.
Return to the app overview and find the Distribution card:
-
Select Custom distribution.
-
Enter your permanent store domain, such as
your-store.myshopify.com, and restrict installation to your intended store. -
Generate and copy the complete installation link.
Shopify does not let you change the distribution method after selecting it. The Distribution card is available for apps belonging to a Partner organization. If it is missing, check which organization owns your app. See Shopify’s distribution guide.
3. Save the app details in Chatwoot
Open Settings → Integrations → Shopify and expand Connect using your own Shopify app.
-
Shopify store domain: enter your permanent domain, such as
your-store.myshopify.com, withouthttps://or a path. -
Client ID: copy it from your app’s Shopify credentials page.
-
Client secret: copy it from the same credentials page.
-
Shopify installation link: paste the full link generated under Custom distribution. It must belong to the same app and store.
Select Save and get setup URLs. Chatwoot stores the client secret encrypted and does not display it again. Saving these details does not connect your store yet.

4. Finish setup in Shopify
Chatwoot now displays the callback URL, required permissions, and webhook URL for your workspace. Keep this page open.
Set the app and redirect URLs
Create a new version in your Shopify app. Copy the callback URL displayed in Chatwoot into both App URL and Allowed redirection URL(s).
Keep Embed app in Shopify admin turned off. If the form shows Use legacy install flow, keep it enabled for this connection flow.
Always copy the URL from your own workspace. Do not use a staging URL or an account ID from an example screenshot.
Add the required permissions
Add these Admin API access scopes:
read_customers,read_orders,read_fulfillments
Configure webhooks
Use the webhook URL shown in Chatwoot as the destination for app/uninstalled and the applicable privacy webhook subscriptions. This is a different URL from the OAuth callback.
Webhook destinations are configured separately from redirect URLs. If your Dev Dashboard does not expose subscription settings, ask the developer managing your Shopify app to configure them. Changing the Webhooks API version alone does not create subscriptions.
Release the version
Save and release the updated version. Confirm that Shopify marks it Active and that it includes the URLs and permissions above.

This screenshot shows an example workspace. Copy the setup URLs from your own Chatwoot workspace.
5. Connect your store
-
Return to Chatwoot and select Connect store in Shopify.
-
Sign in to the intended Shopify store and complete any two-factor verification.
-
Approve the installation or requested access in Shopify.
-
After authorization, return to Chatwoot. The integration page will confirm that your store is connected.
6. Check customer orders
Open a conversation with a contact whose email address or phone number matches the customer’s Shopify record. Expand Shopify Orders in the conversation sidebar.
Available orders show their total, payment status, and fulfillment status. Select an order to open it in Shopify. If you see No orders found, check that the contact details match a Shopify customer who has orders.

Update or reset your setup
Before connecting, select Edit app details to update the client secret or installation link. Leave the secret blank to keep the saved value, and paste the installation link again when updating the form.
If you saved the wrong store or Client ID, select Reset setup and enter the correct details.
After connecting, use Delete on the integration page to disconnect. This also removes the custom-app configuration and credentials saved in Chatwoot.
Troubleshooting
I do not see the custom-app option
Contact Chatwoot support to check whether custom-app setup is enabled for your workspace.
Shopify reports an invalid redirect URL
Copy the callback URL from Chatwoot again. Confirm that it appears in the active Shopify app version, then start a fresh connection attempt.
Shopify requires two-factor authentication
Complete verification in Shopify, then return to Chatwoot and select Connect store in Shopify again.
The app details will not save
Check the permanent store domain, credentials, and installation link. Use the complete Shopify-generated custom installation link for the same app and store.