One tax year, from the wardrobe to the file
Five steps, and the first one is the only one that takes any real time.
- Fill in what you paid, Per item, or set across a whole selection at once, or brought in with a CSV import. Every item left blank is counted as having cost nothing, and that is the single thing most likely to make the file useless.
- Let the year happen, As the wardrobe syncs, a sold item records what it sold for and the day it sold. The day it was listed is already on it, though a relist resets that to the day of the relist.
- Pick the year, The Stats page has a tax year picker: the current one, or an earlier one. Choosing it fills the two date boxes with the range the server resolved, and the figures on the page redraw for it.
- Download the CSV, One row per sold item inside that range, oldest sale first. It exports whatever range is on screen, so a hand-typed range works the same way.
- Give it to whoever does your return, It is a list of sales with costs against them, not a return and not a set of accounts. What it is missing is everything Cavri never saw: postage you paid, packaging, mileage, anything you sold elsewhere.
There is a second, wider export on the account screen that takes your whole workspace out as JSON and CSV, photos included if you ask. That one is everything, unfiltered, and has no profit column. This one is the year.
Every column in the file, and where it comes from
Ten columns, in this order, one row per sold item.
| Column | What it holds | Where it comes from |
| item_id | The reference Cavri gave the item, VIN-0001 and counting within its wardrobe. | Cavri. It survives a relist, which Vinted's own item id does not, so a relisted item is still one line in your records. |
| title | The listing title. | Your listing, whether you wrote it or the AI drafted it and you published it. |
| storefront | Which marketplace the sale was on. It reads “vinted” on everything today. | The item. The column exists because the inventory model takes more than one marketplace, not because Cavri lists to one yet. |
| condition | The condition the item was listed in. | Your listing, or the import that read it. |
| purchase_price | What you paid. Blank if you never filled it in. | You, only. Nothing on Vinted knows this number. |
| listed_price | What it was asking. | Your listing, including any change the price curve made to it. |
| sold_price | What it actually sold for. | The sale, as read back from Vinted. |
| profit | The sold price minus what you paid, with a blank cost counted as zero. No platform cut is taken off. | Worked out at export time from the two columns above it. |
| listed_at | The day the listing went up. | The listing. A relist resets it to the day of the relist, which is worth knowing before you read anything into the gap between the two dates. |
| sold_at | The day it sold, and the date the range filters on. | The sale. An item marked sold with no date on it falls outside every dated range, so it is in an all-time export and in no tax year. |
Prices come out to two decimal places. The dates are full ISO timestamps, which sort correctly as text and are unambiguous about which number is the month, though a spreadsheet may need telling that a column of them is dates.
Where Cavri stops and HMRC starts
Nothing on this page is tax advice and none of it should be read as any. Cavri is inventory software. It records what happened to your stock; what that means for your return is between you, HMRC and, if you want one, an accountant.
The question underneath most searches for this is whether selling on Vinted is taxable at all, and the honest answer is that it depends on what you are doing rather than on how much went through. HMRC draws a line between selling things you owned and used, and buying or making things in order to sell them. Which side of it you are on is about your intent and your pattern of trading, and HMRC publishes a tool that walks you through the question. It is linked below.
There is a tax-free allowance for trading income, and a point above which you have to register for Self Assessment. The figures are on gov.uk, linked below, where they are kept current. They are not printed here, because a number typed into a page like this stays there long after it moves.
Separately from any of that, online marketplaces have to pass seller information to HMRC once a seller goes past a certain number of sales or a certain amount in a calendar year. That is a rule about what the platform reports, not a statement about what you owe, and the two get confused constantly. The thresholds and the reporting dates are on gov.uk too.
What this doesn't do
- It is not tax advice, and it files nothing. There is no return, no submission to HMRC and no agent authorisation behind any of it.
- It does not track postage you paid, packaging, mileage or your time. What you paid for the item and what it sold for, and that is the list.
- It takes no platform fee off. Vinted charges a private seller none, and anything your own account was charged belongs somewhere this file is not.
- It does not value unsold stock. The export is sold items only.
- It knows nothing about VAT, and nothing about running this through a limited company.
- It cannot reconstruct a cost you never recorded. An item sold before you filled the field in exports with the cost blank and the profit equal to the takings.
Where the rules are, and who keeps them
Cavri does not restate these. The figures in them move and this page would not, so the page describes the shape of each rule and sends you to the copy that is maintained.