Troubleshooting
| Symptom | Cause and fix |
|---|---|
| “Invalid API key” on Test connection | The keystring or shared secret is wrong or has spaces. Copy both again from etsy.com/developers > Your apps. |
| Etsy shows an error instead of the sign-in page | The callback URL in your Etsy app differs from the one on the Connection page (http vs https, a trailing slash, www). Copy it exactly. |
| “The link is not valid any more” after signing in | The connect link is valid one hour and once. Go back to the Connection page, reload and click Connect again. |
| “Syncing is paused” | Etsy rejected the stored authorization (app revoked, access unused for 90 days, scopes changed). Click Connect again. |
| “Choose an Etsy shipping profile” | Load profiles from Etsy on the Connection page and choose one. |
| “No Etsy category (taxonomy) is mapped” | Map one of the product’s categories on the Categories tab. |
| “quantity of at least 1” | The product is out of stock; Etsy cannot create a listing with quantity 0. |
| Etsy 400 about the title | Etsy allows only letters, numbers, punctuation and a few symbols, and %, :, & and + once each; the add-on cleans the title, but check unusual characters in the product name. |
| “SKU … was not found on Etsy” | The Etsy listing has a different SKU. Set the SKU on Etsy or the Etsy SKU of the mapping to the same value. |
| “No product mapping for SKU” on an order | The Etsy listing’s SKU matches no mapped product. Map the product with that SKU and click Retry on the Orders tab. |
| Tracking push answers 403 | In regions where Etsy’s Preferred Partner Program applies, Etsy lets only some apps add tracking (see Etsy’s createReceiptShipment notes). Add the tracking on etsy.com. |
| Orders arrive late | Check the cron job (Settings > Cron) and the Jobs tab. Webhooks make imports faster. |
| Too many requests (429) | Etsy’s per-app limits were reached; the queue waits and continues. Etsy raises limits on request ([email protected]). |
The Log tab shows Etsy’s exact answer for each problem. With “Debug log” on it also stores the masked HTTP calls.