Shopify got disconnected
Dashboard shows "Shopify not connected" or orders aren't being created on Shopify. Re-OAuth procedure in 2 minutes.
TLDR: the Shopify OAuth token can expire or be revoked (store password change, app uninstalled). Reconnect from the Settings page in 2 minutes.
Symptoms
- Dashboard โ Settings โ "Shopify connection" shows status "Not connected"
- OnboardingBanner above the dashboard says Shopify isn't linked
- WooshPayment orders marked
COMPLETEDbut don't show in Shopify Admin - API calls to Shopify rejected with 401
"Right after OAuth" case
If you've just completed OAuth but the sidebar/Settings say "Not connected":
Cause: the dashboard cached the old merchant snapshot in localStorage (pre-OAuth). The store is already updated in the DB but the client doesn't know yet.
Fix: Cmd+Shift+R (hard refresh). The Zustand store calls refreshMerchant() on mount and fetches the correct state from /api/merchant/me.
This bug has been resolved: the dashboard now calls refreshMerchant() on every mount of the /dashboard/* segment. If you still see it, it's stale browser cache โ a hard refresh is enough.
Real causes of disconnection
| Cause | Frequency |
|---|---|
| Merchant uninstalled the app from Shopify Admin | Common |
| Shopify store owner password change | Frequent |
| Store owner revoked access from Settings โ Apps | Frequent |
| Shopify invalidated the token for security | Rare |
Re-OAuth procedure
- WooshPayment Dashboard โ Settings โ Shopify connection
- Status shows "Not connected"
- Enter your
your-store.myshopify.com(you find it in Shopify Admin โ Settings โ Domains) - Click "Start OAuth"
- You're redirected to Shopify Admin with an OAuth prompt (scopes: read_products, write_orders, read_customers, write_script_tags, etc.)
- Install app
- You land back on WooshPayment with status "Connected"
- The ScriptTag is reinstalled automatically
Average time: 2 minutes.
What happens to pending orders
If during the disconnection period you have orders paid on WooshPayment but not synced to Shopify (shopifyOrderId: null), there's no automatic backfill cron yet.
For now: write to us at noreply@wooshpayment.com with the list of affected orders and we'll sync them manually. Roadmap: merchant-facing "Sync pending orders" button.
Post-reconnection verification
- Create a test order (โฌ0.50) from your store
- Verify it appears in Shopify Admin โ Orders within 1 minute
- Verify the WooshPayment Dashboard โ Orders shows it
COMPLETEDwithshopifyOrderIdpopulated
Prevention
Don't uninstall the app randomly
If you only need to update scopes or reconnect, start from our dashboard (Settings โ Shopify connection โ "Restart OAuth"). Uninstalling from Shopify Admin revokes everything and you'll have to start over.
Notify on password change
When the Shopify owner password changes, the access token is NOT automatically revoked by design, but Shopify sometimes invalidates tokens for anti-abuse. If you see a sudden 401 from Shopify webhooks, this likely happened.
Shopify app/uninstalled webhook
When a merchant uninstalls WooshPayment from Shopify Admin, we receive an app/uninstalled webhook on https://api.wooshpayment.com/webhooks/shopify/app-uninstalled. At that point we mark shopifyConnected: false. If you want to come back in, restart OAuth.
Troubleshooting
Re-OAuth says "Invalid shop"
You entered a Shopify domain that doesn't exist or is misspelled. Correct format: store-name.myshopify.com, not store-name.com.
Re-OAuth says "App already installed"
Open Shopify Admin โ Apps โ WooshPayment โ verify it's really installed. If yes, simply re-authorize from there ("Open app" link). If our OAuth flow fails with this error, the handoff JWT token likely expired: try logging out and back into WooshPayment before restarting OAuth.
After re-OAuth, orders still don't sync
- Wait 1-2 minutes (some clients cache)
- Verify in the dashboard that the order is
COMPLETEDand notPENDING - If it still fails โ write to us with the session token
WooCommerce equivalent
For Woo, "disconnection" means:
- REST API consumer key/secret revoked on Woo
- WordPress site URL changed
- HTTPS expired on your Woo domain
Procedure: Settings โ E-commerce platform โ choose WooCommerce โ re-enter consumer key/secret credentials.
Useful links
- Shopify integration โ initial setup
- Script tag debug โ if OAuth is OK but script tag isn't
- Payment fails