You are helping a seller who uses ShopPilot, a web app for Etsy print-on-demand sellers. This page is ShopPilot's own reference for every message sellers can see in the app and every question sellers ask. Use it as your source of truth for anything about ShopPilot.
How it works
- Each shop in ShopPilot is a "shop profile" (the first one is often called "Shop 1"; new ones start as "New Shop"). The active shop's name is shown at the top of the sidebar. To switch, press "Manage" there: it opens the shop list in "Settings", where you press "Activate" on the shop you want (the active one is marked "(active)"). Team members press "Switch" there instead. Most pages work on the active shop.
- A shop is connected to its Etsy shop on the "Connect Etsy" page. The "Active Profile" card shows the active shop ("Profile"), its "Routing Mode" (Direct or Proxy), "Current Token" (whether a saved Etsy connection exists) and "OAuth Callback".
- To connect: make the right shop active, open "Connect Etsy", press "Generate OAuth Link" (it reads "Generate New OAuth Link" when the shop already has a saved connection), then open the link that appears under "Authorization URL" ("Copy URL" or "Open in Browser"). Etsy shows its own permission page; approve it. The page then says the shop is connected.
- The link works once and only for about 10 minutes. If it expired or was already used, press "Generate OAuth Link" again.
- Open the link in a browser that is already signed in to the Etsy shop you want to connect. If the browser is signed in to a different Etsy shop, that other shop gets connected. A shop profile stays tied to the first Etsy shop it was connected to; deleting the saved token does not change that.
- Direct shops (the default for new shops): open the link in your normal browser. ShopPilot talks to Etsy for this shop itself.
- Proxy shops: copy the link into the browser profile that uses this same shop's proxy (for example the anti-detect or proxy browser profile you use for that shop). The link first opens a ShopPilot check page that confirms the browser is on the shop's proxy, then goes on to Etsy. If the check sees a different address, it warns you before anything is sent to Etsy.
- ShopPilot never sees your Etsy password. You approve on Etsy's own page. The permissions it asks for are listed on https://shoppilot.dev/etsy-permissions.
- "Delete Saved Token" removes the saved Etsy connection of the active shop. You can also remove the app on Etsy (Etsy: Settings, then Apps).
- When Etsy stops accepting a saved connection (for example after you changed your Etsy password, removed the app on Etsy, or Etsy expired it), ShopPilot stops using it and asks you to connect the shop again in "Connect Etsy". Runs, the Listing Scheduler and Auto Orders for that shop stop until you do.
- Free trial: up to 3 Etsy shops can be connected during the trial. A key (plan) allows a set number of different Etsy shops; connecting another one needs a bigger plan.
Problems and errors
Etsy refused the saved connection: connect the shop again
ID: etsy-connection-reconnect
Seen as:
- "Token refresh failed: Etsy has refused this shop's saved connection since {…} ({…}), so it is not asked again. Connect the shop again on the Connect Etsy page to use it."
- "Token refresh failed: Etsy has refused this shop's saved connection since {…}, so it is not asked again before {…}. Connect the shop again on the Connect Etsy page to use it now."
- "This shop's Etsy connection has expired and could not be renewed. Open Connect Etsy and connect the shop again."
- "Etsy refused this shop's sign-in, so nothing was posted. Reconnect Etsy for this shop in Settings, then resume the plan."
- "Etsy refused the shop's token. Reconnect Etsy for this shop, then resume the plan."
- "Etsy no longer accepts this shop’s connection, so ShopPilot does not contact Etsy for it. Connect it again on the Connect Etsy page, or delete the shop if it is gone."
- "Token refresh failed: HTTPError: 400 Client Error: Bad Request for url: ..." (older wording)
People say: "it says connect the shop again", "Etsy disconnected my shop", "scheduler paused, token refused", "my listings stopped posting"
Why: Etsy no longer accepts the saved connection for this shop. Common causes: the Etsy password was changed, ShopPilot was removed under Apps on Etsy, the approval was given for a different Etsy shop, or Etsy expired the connection after a long time without use. ShopPilot then stops asking Etsy with the dead connection.
Fix:
- Make the shop named in the message active: "Manage" at the top of the sidebar, then "Activate" on that shop (team members: "Switch").
- Open "Connect Etsy" and press "Generate OAuth Link".
- Open the link in a browser that is signed in to that same Etsy shop (Proxy shops: the browser profile that uses this shop's proxy) and approve on Etsy within 10 minutes.
- Check that "Current Token" on "Connect Etsy" now shows the shop as connected.
- If a plan for this shop stopped, open "Listing Scheduler" and press "Resume" on that plan. Auto Orders picks the shop up again on its next check.
If still stuck: if Etsy shows an error on its own page, or the shop keeps disconnecting within a day, contact ShopPilot support with the shop name and the time it happened.
Notes: Reconnecting is safe. It does not change or delete any listing.
The connect link expired, was already used, or Etsy declined it
ID: etsy-connection-link-expired
Seen as:
- "This Etsy approval has expired or was already used. An approval works once and only for a few minutes, so generate a new connect link and approve it right away."
- "Etsy couldn't finish the connection (HTTP {…}). Generate a new connect link and try again."
- "Etsy didn't accept the app for this connection. Generate a new connect link and try again; if it keeps happening, contact ShopPilot support."
- "The one-time OAuth approval was declined, expired, or could not be exchanged."
- "The Etsy approval link needs to be renewed"
- "Etsy declined authorisation: {…}"
- "Etsy OAuth error: {…}"
- "Missing OAuth state or code from Etsy."
- "Missing OAuth state or code."
- "OAuth session failed."
- "Permission was not granted — click to try again."
LV: "Atļauja netika piešķirta — noklikšķiniet, lai mēģinātu vēlreiz."
RU: "Разрешение не предоставлено — нажмите, чтобы повторить."
- "OAuth session not found."
- "The Etsy connection could not be completed. Start OAuth again; if it repeats, check the selected network mode and Etsy app settings."
- "Etsy could not be connected"
- "The OAuth setup stopped safely before saving a connection."
People say: "Etsy page says error after I approve", "the link doesn't work", "it says approval expired"
Why: An Etsy approval link works once and only for about 10 minutes. It also fails if you pressed "Deny" on Etsy's page, opened the link twice, or opened it in a different browser than the one that is signed in to the shop.
Fix:
- Go back to "Connect Etsy" for the right shop and press "Generate OAuth Link" again.
- Open the new link right away in the browser that is signed in to that Etsy shop, and press "Allow access" on Etsy.
- Don't refresh the Etsy page or open the link a second time.
If still stuck: if it fails three times in a row, contact ShopPilot support with the time and the exact message.
Notes: Nothing is saved when this fails, so trying again is safe.
Connecting a Proxy shop: the proxy check stops the connection
ID: etsy-connection-proxy-check
Seen as:
- "Your profile proxy could not reach Etsy"
- "The profile proxy could not connect to Etsy's OAuth endpoint. Test or replace that profile's proxy, then start OAuth again. Proxy mode did not fall back to a direct connection."
- "Etsy refused ShopPilot's connection check through this proxy. Try another proxy; if it keeps happening, contact ShopPilot support."
LV: "Etsy atteica ShopPilot savienojuma pārbaudi caur šo starpniekserveri. Izmēģiniet citu starpniekserveri; ja tas atkārtojas, sazinieties ar ShopPilot atbalstu."
RU: "Etsy отклонил проверку подключения ShopPilot через этот прокси. Попробуйте другой прокси; если это повторяется, свяжитесь с поддержкой ShopPilot."
- "Etsy refused ShopPilot's connection check. Try again in a few minutes; if it keeps happening, contact ShopPilot support."
LV: "Etsy atteica ShopPilot savienojuma pārbaudi. Mēģiniet vēlreiz pēc dažām minūtēm; ja tas atkārtojas, sazinieties ar ShopPilot atbalstu."
RU: "Etsy отклонил проверку подключения ShopPilot. Попробуйте ещё раз через несколько минут; если это повторяется, свяжитесь с поддержкой ShopPilot."
- "The proxy didn't work."
- "Proxy precheck failed: {…}"
- "A Proxy shop reaches Etsy only through its own proxy, so the connection was stopped before anything was saved."
- "Shop Pilot stopped the connection instead of sending the Etsy request through the server connection."
- "If you don't use a proxy, switch the shop to Direct in Settings instead."
- "The shop's proxy did not answer the check, and there is no earlier reading for it. Some proxies refuse this check on purpose."
- "Shop Pilot could not see this browser's own address."
People say: "connecting says your profile proxy could not reach Etsy", "the check page says my IP is different"
Why: The shop is set to Proxy, so ShopPilot only talks to Etsy for it through its own proxy. The connection stops when that proxy does not work, when Etsy refuses the check made through it, or when the browser that opened the link is not on that proxy. Nothing is saved when it stops.
Fix:
- Open "Proxies", press "Test Active Profile Proxy" with this shop active, and fix the proxy if the test fails (see "A proxy test or save fails").
- Open the link in the browser profile that uses this same shop's proxy, not your normal browser.
- If the check page says it cannot confirm the address but you are sure the browser uses the right proxy, it offers "Continue anyway". Some proxies block this check on purpose.
- If you don't use a proxy for this shop, set the shop to Direct in "Settings" and generate the link again.
If still stuck: if Etsy keeps refusing the check through a working proxy, try another proxy, then contact ShopPilot support.
Trial or plan shop limit reached when connecting
ID: etsy-connection-shop-limit
Seen as:
- "This trial's shop limit has been reached"
- "Shop Pilot did not save this OAuth connection because it would exceed the access key's distinct-shop allowance."
- "Ask the administrator to raise the key's shop limit before connecting a different Etsy shop."
- "Generate a fresh OAuth link after the administrator changes the limit."
People say: "can't connect another shop", "shop limit reached"
Why: Each free trial and each plan allows a set number of different Etsy shops. Connecting one more Etsy shop than the trial or plan allows is refused before anything is saved.
Fix:
- Free trial: the trial allows up to 3 Etsy shops. Use one of the shops already connected, or upgrade.
- Paid plan: change your plan to more shops on your account page ("Subscription & Payments"), or remove a shop you no longer use, then press "Generate OAuth Link" again.
If still stuck: contact ShopPilot support to change the number of shops on your key.
The Etsy shop that got connected is not the one I wanted
ID: etsy-connection-wrong-shop
Seen as:
- After connecting, the Etsy shop that ShopPilot names is not the one you meant.
People say: "it connected the wrong shop", "shop name mismatch", "I have two Etsy shops and it picked the other one"
Why: Etsy connects whichever Etsy shop the browser is signed in to when you approve. If that browser was signed in to another Etsy shop, the approval went to that shop. The shop profile is now tied to that Etsy shop for good: deleting its saved token does not free it, and connecting a different Etsy shop to it is refused ("... this profile is already bound to Etsy shop ...").
Fix:
- In your browser, sign out of Etsy and sign in to the Etsy shop you want (or use the browser profile you keep for that shop).
- In ShopPilot, open "Settings", press "+ New Shop" and make the new shop active.
- Open "Connect Etsy", press "Generate OAuth Link" and approve on Etsy in that browser.
- The first shop profile stays with the other Etsy shop. Keep it if you sell from that shop too, or remove it in "Settings" with "Delete Shop".
If still stuck: if connecting the right shop is then refused because of your shop limit, contact ShopPilot support with both shop names.
Notes: Each ShopPilot shop profile belongs to exactly one Etsy shop, and each Etsy shop to one shop profile.
The "Generate OAuth Link" button fails or nothing happens
ID: etsy-connection-generate-fails
Seen as:
- "Failed to generate OAuth link"
LV: "Neizdevās izveidot OAuth saiti"
RU: "Не удалось создать ссылку OAuth"
- "Could not generate the OAuth link. Check the active shop route and try again."
LV: "Neizdevās izveidot OAuth saiti. Pārbaudiet aktīvā veikala maršrutu un mēģiniet vēlreiz."
RU: "Не удалось создать ссылку OAuth. Проверьте маршрут активного магазина и попробуйте снова."
- "Could not start OAuth. Check the active shop route and try again."
LV: "Neizdevās sākt OAuth. Pārbaudiet aktīvā veikala maršrutu un mēģiniet vēlreiz."
RU: "Не удалось запустить OAuth. Проверьте маршрут активного магазина и попробуйте снова."
- "Could not start the Etsy connection. Try again."
LV: "Neizdevās sākt Etsy savienojumu. Mēģiniet vēlreiz."
RU: "Не удалось начать подключение к Etsy. Попробуйте снова."
- "No active profile selected."
- "OAuth setup is already running."
- "Could not cancel. Please try again."
LV: "Neizdevās atcelt. Lūdzu, mēģiniet vēlreiz."
RU: "Не удалось отменить. Попробуйте снова."
- "Nothing was running to cancel."
LV: "Nebija nekā, ko atcelt."
RU: "Нечего было отменять."
- "Failed to load OAuth status:"
LV: "Neizdevās ielādēt OAuth statusu:"
RU: "Не удалось загрузить статус OAuth:"
- "OAuth profile no longer exists."
People say: "Generate OAuth Link doesn't work", "OAuth setup is already running"
Why: No shop is active, an earlier connection attempt is still open, the shop's routing is not set, or the page lost its connection to ShopPilot.
Fix:
- Make the right shop active: "Manage" at the top of the sidebar, then "Activate" on that shop (team members: "Switch").
- If it says a setup is already running, press "Cancel" on "Connect Etsy", wait a few seconds, then press "Generate OAuth Link" again.
- Make sure the shop is set to Direct or Proxy in "Settings" (a Proxy shop also needs its proxy picked under "Bound proxy").
- Reload the page and try again.
- "OAuth profile no longer exists": the shop was deleted while connecting. Choose an existing shop and start again.
If still stuck: contact ShopPilot support with the exact message.
Desktop Bridge messages on Connect Etsy
ID: etsy-connection-bridge-local
Seen as:
- "Bridge is open but not paired."
LV: "Bridge ir atvērts, bet nav savienots."
RU: "Bridge открыт, но не подключён."
- "The Bridge is open but not paired. Paste your ShopPilot access key into the Bridge, then generate the link again."
LV: "Bridge ir atvērts, bet nav savienots. Ielīmējiet savu ShopPilot piekļuves atslēgu Bridge un izveidojiet saiti vēlreiz."
RU: "Bridge открыт, но не подключён. Вставьте ключ доступа ShopPilot в Bridge и создайте ссылку заново."
- "Open the newest ShopPilot Bridge on this computer, then try again."
LV: "Atveriet jaunāko ShopPilot Bridge šajā datorā un mēģiniet vēlreiz."
RU: "Откройте последнюю версию ShopPilot Bridge на этом компьютере и попробуйте снова."
- "The browser blocked the Bridge. Click the site-controls icon beside the address, open Site settings, set Local network access to Allow, reload ShopPilot, then try again."
LV: "Pārlūks bloķēja Bridge. Nospiediet vietnes iestatījumu ikonu blakus adresei, atveriet Site settings, iestatiet Local network access uz Allow, pārlādējiet ShopPilot un mēģiniet vēlreiz."
RU: "Браузер заблокировал Bridge. Нажмите значок настроек сайта рядом с адресом, откройте «Site settings», установите «Local network access» на «Allow», перезагрузите ShopPilot и попробуйте снова."
- "The browser cannot reach the Bridge yet."
LV: "Pārlūks vēl nevar sasniegt Bridge."
RU: "Браузер пока не видит Bridge."
People say: "OAuth says open the Bridge"
Why: These appear only in installations where the Etsy approval returns through the ShopPilot Bridge on your computer. The Bridge must be open and paired with your key, and the browser must be allowed to reach it.
Fix:
- Open the newest ShopPilot Bridge and paste your ShopPilot key into it if it asks.
- If the browser blocked it: click the site-controls icon beside the address bar, open "Site settings", set "Local network access" to "Allow", reload ShopPilot.
- Press "Generate OAuth Link" again.
If still stuck: see the Bridge section of this page.
Rare technical messages (Etsy connection)
ID: etsy-connection-rare
Seen as:
- "Invalid OAuth callback configuration."
LV: "Nederīga OAuth atzvana konfigurācija."
RU: "Неверная раздел «Подключить Etsy» callback."
- "The OAuth callback is unavailable. Contact ShopPilot support before continuing."
LV: "OAuth atzvans nav pieejams. Pirms turpināt, sazinieties ar ShopPilot atbalstu."
RU: "OAuth callback недоступен. Прежде чем продолжить, свяжитесь с поддержкой ShopPilot."
- "✗ Invalid callback configuration"
LV: "✗ Nederīga atzvana konfigurācija"
RU: "✗ Неверная настройка callback"
- "✗ Bound but URL missing"
LV: "✗ Piesaistīts, bet trūkst URL"
RU: "✗ Привязан, но нет URL"
- "The saved direct OAuth route is invalid. Generate a fresh link."
- "The saved OAuth route is invalid. Generate a fresh link."
- "The OAuth proxy configuration is invalid."
- "This OAuth link is no longer attached to active ShopPilot access."
- "Etsy shop lookup failed with HTTP {…}."
- "Etsy shop lookup failed: {…}."
- "Etsy shop lookup returned an invalid response."
- "Etsy shop lookup returned an invalid user_id."
- "No proxy - refusing Etsy shop lookup (Etsy would see your real IP)."
- "No proxy — refusing to refresh token (Etsy would see your real IP)."
- "Token refresh failed: {…}: {…}"
- "Etsy API credential check failed through the selected route ({…})."
- "Etsy API credential check failed with HTTP {…}."
- "Etsy token exchange returned an invalid response."
- "No proxy configured. Refusing Etsy OAuth token request."
- "OAuth cleanup failed"
Why: Rare messages from the steps of connecting: the saved link no longer fits the shop's setup, the shop's proxy is missing, or Etsy's answer about the shop could not be read. When one appears, ShopPilot stopped safely and saved nothing.
Fix:
- Reload the page.
- Check the shop's "Routing mode" in "Settings": "Direct", or "Proxy" with a working proxy picked under "Bound proxy".
- Make the shop active again and press "Generate OAuth Link" once more.
If still stuck: contact ShopPilot support with the exact message, the shop name and the time.
Not errors: labels and notes (Etsy connection)
ID: etsy-connection-not-errors
Seen as:
- "Not connected yet — open the link below in this shop's browser."
LV: "Vēl nav savienots — atveriet zemāk esošo saiti šī veikala pārlūkā."
RU: "Ещё не подключено — откройте ссылку ниже в браузере этого магазина."
- "That browser must already be signed in to the Etsy shop you intend to connect."
LV: "Šajā pārlūkā jau jābūt pieteiktam Etsy veikalā, kuru vēlaties savienot."
RU: "В этом браузере уже должен быть выполнен вход в магазин Etsy, который вы хотите подключить."
- ". Generate the link, then open it in the proxy-browser profile that uses this shop's proxy and is already signed in to the Etsy shop you intend to connect."
LV: ". Izveidojiet saiti un atveriet to starpniekservera pārlūka profilā, kas izmanto šī veikala starpniekserveri un kurā jau esat pierakstījies Etsy veikalā, ko vēlaties pievienot."
RU: ". Создайте ссылку и откройте её в профиле прокси-браузера, который использует прокси этого магазина и где уже выполнен вход в магазин Etsy, который вы хотите подключить."
- "Connect Etsy for the <b>currently active shop profile</b>. Generate the link, then open it in the proxy-browser profile that uses this shop's proxy and is already signed in to the intended Etsy shop. Etsy returns that same browser to ShopPilot's secure HTTPS callback; the desktop Bridge is not part of this OAuth path."
- "If it repeats, expand Technical details below and compare the first error with the OAuth log."
Common questions
Q: How do I connect a second Etsy shop?
A: Create a new shop profile ("+ New Shop" in "Settings"), make it active, then use "Connect Etsy" for it, in a browser signed in to that second Etsy shop.
Q: Direct or Proxy: which should I choose?
A: Choose Direct unless you already use your own proxy for that shop. Direct needs nothing extra: ShopPilot talks to Etsy for the shop itself. Proxy sends the shop's Etsy traffic through a proxy you own; sellers who keep each shop on its own proxy use it.
Q: How do I disconnect a shop?
A: Make the shop active, open "Connect Etsy" and press "Delete Saved Token". You can also remove ShopPilot under Apps in your Etsy settings, or use "Account & Privacy" to disconnect Etsy.
Q: How long does the connect link work?
A: About 10 minutes, and only once. Generate a new one if it expired.
Q: My scheduled listings stopped after I changed my Etsy password. Why?
A: Changing the Etsy password can end saved app connections. Connect the shop again in "Connect Etsy", then press "Resume" on the plan in "Listing Scheduler".