Selling on Vinted and in your online store without selling the same item twice
Vinted has become one more sales channel for many fashion and second-hand stores, but with one-off pieces every sale means taking the item down on the other side. We go through what needs to be synchronised, where it usually goes wrong and how to organise it.
You run a second-hand, vintage or outlet clothing store. Your customers are on your website, but a large share of the people who buy this kind of product are on Vinted. Listing there makes sense. The problem shows up the first day a jacket sells in both places half an hour apart: one of the two buyers goes without it, and you have to cancel, refund and explain.
With new products and plenty of units, overselling is an occasional scare. With one-off pieces it is the norm unless something prevents it: every item has a stock of 1, and any delay in removing it from the other channel turns into a duplicate sale.
Vinted Pro: selling as a professional
If you are a company or a self-employed seller who sells regularly, you should not list with a private account. Vinted has a plan for professional sellers, Vinted Pro, and as a professional you have the same obligations towards the buyer as in your own store: pre-contractual information, right of withdrawal, guarantees and invoice.
To connect a store to Vinted automatically you also need access to its integrations API for professionals, which Vinted grants to the account. It is not something a module or your agency can switch on: you request it from the platform, and until you have it you can only work by hand.
What has to be synchronised
“Synchronising with Vinted” is usually summed up as “the stock”, but it is several different things:
- What is listed. An item with stock in your store may or may not be on Vinted; you decide which products or categories go out.
- A sale on Vinted has to reduce your store's stock once, and only once.
- A sale in your store has to remove the item from Vinted if no units are left.
- Cancellations on either side have to return the unit and, where appropriate, list it again.
- Listing data: title, description, photos, brand, size, colour, condition and price.
One-off pieces change the rules
On Vinted every listing is a single piece. If you have three units of the same T-shirt in your store, you do not list “three units” on Vinted: you list one item, and when it sells, you list the next one. This has practical consequences:
- The sensible rule is “the item stays listed as long as my stock reaches a minimum”, not “Vinted mirrors my stock”.
- Combinations (sizes, colours) are better listed as separate items, each with its own photos.
- If you sell the second-to-last unit in your store, the Vinted listing can stay up; if you sell the last one, it has to come down.
Prices: they do not have to be the same
Many stores sell on Vinted slightly cheaper or slightly dearer than on their website, depending on fees, the type of buyer and the competition on the platform. What matters is that the difference is a rule and not an item-by-item decision:
- Start from your store's final price.
- Apply a fixed or percentage adjustment.
- Round to prices that read well (ending in .99 or .95, or whole numbers).
- Allow manual exceptions for the products that need them.
If your store works in a different currency from the Vinted market you list on, convert before rounding; otherwise a round price in your store ends up with odd cents in the listing.
Typical mistakes when it is done by hand
- Removing too late. An item sells on the website at night and stays on Vinted until someone takes it down in the morning.
- Forgetting the cancellation. A buyer cancels on Vinted and the item stays out of your store with stock 0 for weeks.
- Inconsistent product pages. The listing says “size M” and your store's product page says “size 38”; one of them is wrong and the customer returns it.
- Intermediate spreadsheets. A list of “what is on Vinted” that someone updates when they remember.
- Deducting twice when manual handling and partial automation are mixed.
How to organise it properly
What works is making your PrestaShop catalogue the single source: product pages, photos, stock and base price live in your store, and Vinted is a channel fed from it. From there:
- Instant notifications. The fastest way to learn about a sale is for the platform to notify you at that moment (webhook), and for your store to check that the notification is genuine before accepting it.
- Queue with retries. If the API does not respond at that moment, the operation is retried, not lost.
- Periodic review. Even with notifications, a scheduled process should check every so often that what is listed matches what your store says.
- Log per item sold. That way the same notification arriving twice does not subtract two units.
- Map attributes once. Brand, size, colour and condition are matched to Vinted's values just once, with default values for anything you have not filled in.
Before connecting: a dry run
An integration with a sales channel is not tested live. The sensible approach is to simulate the full cycle —list, sell, cancel— and check in your store that the stock moves once and in the right direction. Run that test with products with combinations and with a product that has several units too.
And something else worth checking beforehand: your store's version. An integration that relies on signed notifications, queues and scheduled tasks needs a supported store and PHP version; if you are still on 1.6 or an old 1.7, this is a good time to plan the upgrade before adding channels.
Checklist
- Vinted Pro account, and access to the integrations API requested.
- Decided which categories and products go out on Vinted.
- Price rule defined, with rounding and exceptions.
- Attributes mapped (brand, size, colour, condition, parcel size).
- Full cycle tested: sale on Vinted, sale in the store and cancellations.
- A place to see what has been sent, what has failed and why.
How to solve it in PrestaShop
RKR Sync Vinted Pro lists your products on Vinted Pro by product or by whole category, one item per product or per combination, with title and description templates per language. A Vinted sale reduces your store's stock only once even if it arrives by several routes, a sale in the store removes the item when stock no longer covers it, and cancellations return the unit. It receives signed webhooks, retries with a queue and a cron job, reconciles every hour and applies price rules with rounding and an optional cap on the price suggested by Vinted. It includes a simulation mode to test everything before you have API access, and statistics for each channel.