MerchantFlowMerchantFlow Docs
Troubleshooting

Fix Integration Errors in MerchantFlow

Resolve OAuth authorization failures, expired tokens, and connection errors when connecting Shopify, Google, Meta, Pinterest, or other platforms to MerchantFlow, with the exact health messages MerchantFlow shows.

Fix Integration Errors

Integration errors in MerchantFlow occur when connecting or maintaining OAuth-based connections to platforms like Shopify, Google, Meta, TikTok, or Snapchat. Most integration errors can be resolved by clearing your browser cache, verifying account permissions, or reconnecting the integration through Settings.

How to Fix OAuth Authorization Errors

Authorization did not complete

Causes:

  • Browser cache interfering with OAuth flow
  • Logged into the wrong account on the third-party platform
  • Insufficient permissions on the platform account
  • Third-party platform experiencing issues

Fix:

  1. Clear your browser cache and cookies
  2. Try an incognito/private browser window
  3. Verify you are logged into the correct account (Google, Shopify, etc.)
  4. Ensure you have admin access on the platform
  5. Try again after a few minutes

Access denied or insufficient permissions

Causes:

  • Your account does not have admin/owner access
  • Organization policies restrict third-party app access
  • Google Workspace admin has restricted OAuth apps

When Shopify refuses the connection during onboarding you may see "Access denied. Please check your account settings."

Fix:

  1. Verify your role on the platform (must be Admin or Owner)
  2. For Google Workspace: contact your IT admin to allow MerchantFlow
  3. For Shopify: ensure you are the store owner or have full permissions

Inside MerchantFlow itself, a role that lacks the required permission gets "Insufficient permissions" with a 403 response. Ask an owner or admin to grant you the right role rather than reconnecting the integration.

How to Fix Token Errors

Expired tokens

OAuth tokens should refresh automatically. When one cannot be refreshed, the integration health message reads "Authentication expired. Please reconnect your account to continue syncing."

To fix it:

  1. Go to Settings > Integrations
  2. Click "Reconnect" next to the affected integration
  3. Complete the OAuth flow again
  4. Data syncing resumes with no data loss

Revoked access

This means access was explicitly removed on the platform side:

  • Shopify -- the MerchantFlow app was uninstalled from the store
  • Google -- access was revoked in Google Account > Security > Third-party access
  • Meta -- app access was removed in Facebook Business Settings

Fix: Reconnect the integration through Settings > Integrations.

Understanding Health Status Error Types

MerchantFlow tracks integration health with these failure types. Each one maps to a fixed message shown next to the integration in Settings > Integrations:

Error TypeMessage ShownAuto-Recovery
token_expired"Authentication expired. Please reconnect your account to continue syncing."No - requires reconnection
rate_limit"API rate limit reached. Sync will automatically retry in a few minutes."Yes (backs off and retries)
api_error"Unable to connect to the service. This may be temporary - we will retry automatically."Retries on next cycle
timeout"Sync took too long and was cancelled. This may indicate a large dataset or connectivity issue."Retries on next cycle
no_data"No data was returned from the API. Check if your account has active data."Check platform data
partial"Some data synced successfully, but some failed. Check integration settings."Retries failed portions
missing_credential"Integration setup incomplete. Please complete the connection in Settings."Requires reconnection
network_error"Network connectivity issue. Sync will automatically retry."Usually resolves quickly

What to Check After Connecting an Integration

After connecting, confirm the connection actually resolved to the right account:

  • For Google, re-open the Google integration settings and confirm the GA4 property, Search Console site, Merchant Center account, and Google Ads customer are still selected and saved
  • For Shopify, confirm the store domain shown on the integration card matches your live store
  • For WooCommerce, confirm the store URL and that the API key has read access

If MerchantFlow connects but returns nothing, the integration is flagged with the no_data failure type and shows "No data was returned from the API. Check if your account has active data." That usually means the wrong property or account is selected, not that the connection is broken. The Settings > Integrations card also shows an inline connection-test badge: Data detected, No data found, or Failed to fetch.

What Happens After Consecutive Failures

MerchantFlow tracks consecutive sync failures for each integration:

  • The integration status changes to "Error" and stores the failure message
  • You are notified on the first failure, then on every third consecutive failure, to avoid alert spam
  • An expired token always notifies immediately, regardless of the failure count
  • Syncing continues to retry on schedule
  • Once a sync succeeds, the failure counter resets to zero

Frequently Asked Questions

Do I lose data when I reconnect an integration?

No. Reconnecting an integration refreshes the OAuth token but does not delete any previously synced data. Syncing resumes from where it left off.

Why does my Google integration keep disconnecting?

Common causes include password changes on your Google account, revoked third-party access in Google Security settings, or Google Workspace admin policies. Verify your Google account settings and reconnect.

Can I connect multiple Google accounts?

You connect to Google services using one Google account per workspace. That account must have access to the GA4 property, Search Console site, and Merchant Center account you want to sync.

How do I know if an integration error will resolve itself?

Check the Auto-Recovery column in the health status table above. Errors like rate_limit, api_error, timeout, and network_error typically resolve automatically. Errors like token_expired and missing_credential require manual reconnection.


Last updated: August 23, 2026

Last updated on

On this page