What it does
This connector gives you a head start on moving a handmade or vintage catalog from Etsy into your own store. After you authorize your Etsy account, an import button fetches the active listings of your shop, up to 25 per run, and creates a VeloCMS product for each one. The listing title becomes the product title and its URL slug, the description is carried over unchanged, and the price is filled in when Etsy reports it in hundredths, which is the usual case. Every listing photo is downloaded and saved into your own media storage, so product images keep working if Etsy later changes or removes the original. New products arrive switched off, as drafts, and you publish them yourself from the Products page. The connection asks Etsy for read access only.
Who it's for
Etsy sellers who want a storefront of their own alongside their shop, or who are leaving Etsy and would rather not rebuild every product page by hand. It fits a smaller shop best, because each run reads the first 25 active listings Etsy returns. You need an Etsy account that owns a shop, and an editor role or higher in VeloCMS, since the import creates real products.
How it works
On the plugin page you press Connect Etsy and approve the request on Etsy. It asks for read access to your shop and your listings, nothing more.
Right after approval, VeloCMS asks Etsy which shop belongs to your account and saves that shop ID with the connection.
When you press Import products from Etsy, the plugin requests up to 25 active listings, including their images, from the Etsy Open API.
Each listing whose slug is still free in your store becomes an inactive physical product. Its photos are copied into your media storage first.
The panel shows how many products were created and how many were skipped. You check prices and photos, then activate each draft from the Products page.
Settings you configure
- Import products from Etsy
- Shown once your shop is connected. Each press runs one import of up to 25 active listings and then reports the created and skipped counts.
What it can access
The connection holds two read-only Etsy scopes, shops_r and listings_r. VeloCMS uses them to look up your shop ID and to read the title, description, price, variation flag and photos of your active listings. It cannot edit listings or read receipts and buyers. Requests go to api.etsy.com through the plugin network proxy, and the access token is kept encrypted and refreshed automatically when it expires.
Permissions
- Read your Etsy shop and listings
- Access the Etsy Open API on your behalf
External network access
This plugin makes requests to the following domains:
www.etsy.comapi.etsy.comopenapi.etsy.com
Capabilities
commerce:readcommerce:writenetwork:fetchui:settings
Screenshots

Honest limits
Each run reads only the first 25 active listings Etsy returns, with no paging. A shop with more active listings cannot reach the rest through this plugin yet, and a repeat run returns the same batch, which is then skipped.
Only listings that are active on Etsy are read. Drafts, expired and inactive listings are left out.
Variations are not imported. A listing with sizes or colours arrives as one product flagged as having variants, and you add the variant rows yourself.
The price is set only when Etsy reports it in hundredths. Otherwise the draft is created at 0 so you can price it by hand. A listing with no price defaults to USD.
Every imported product is typed as physical, including Etsy digital downloads. Change the product type where that is wrong.
Duplicates are detected by slug, which is built from the title. A listing whose title matches an existing product, or another listing in the same run, is skipped rather than merged or updated.
It is a one-time copy. Later edits on Etsy are not pulled into products you already imported, and stock levels, tags, shipping profiles and orders are not synced. Nothing is ever written back to Etsy.
If a photo cannot be copied, the product is still created with fewer or no images. The panel does not report image failures, so look over each draft.
If the connected Etsy account has no shop, or the Etsy API fails, the import reports that no active listings were found rather than a specific error.
Disconnecting deletes the token held by VeloCMS. The grant is not revoked on Etsy's side.
Frequently asked questions
Will importing change anything on my Etsy shop?
No. The connection only has read scopes, and the import makes read requests alone. Your listings, stock and orders on Etsy stay as they were.
Why can I not see the imported products in my store?
They are created inactive on purpose. Open the Products page, check each price and photo, then activate the products that are ready to sell.
Can I run the import again after adding listings on Etsy?
Yes, but each run still covers the first 25 active listings Etsy returns. Ones you already imported are skipped because their slugs exist, and a new listing only comes in if it falls inside that batch.
Are my product photos hotlinked from Etsy?
No. Each photo is copied into your own media storage during the import. The first one that copies successfully becomes the preview image and the rest go into the product gallery.
Do I need to paste an Etsy API key?
No. You sign in to Etsy and approve access, and there is no key field. If the panel says the connector is coming soon, the Etsy app has not been registered on that installation yet.
Related plugins
Specifications
- Category
- Commerce
- Price
- Included
- Version
- 1.0.0
- Source
- First-party
Browse more integrations
58 free first-party integrations available.