/ документация
Скачать

Receipt purchases

Regular analytics answers “how much went on groceries”. Purchases answers a sharper question: what exactly you buy, how often and at what price. The data comes from the line items of FNS cash receipts — the ones that arrive together with a scanned QR code.

Svodly.ru
Вид
Analytics of a personal book, the “Purchases” tab: receipts, line items and the average receipt. The “By amount | By frequency” switch rebuilds the top, and a click on an item expands its receipt entries: date, seller, unit price.
On the phone “Purchases” is the same tab of “Analytics”: top items, the breakdown switch and entries expanded by tap.

Where the data comes from

Only from cash receipts pulled in by the FNS scanner. A transaction typed in by hand has no line items, so it never shows up in Purchases. That is why the tab appears only once the book has scanned receipts — without them it is simply not rendered in Analytics.

The “Purchases” tab in Analytics

The header holds three numbers for the selected period: how many receipts there were, how many line items they contained and what the average receipt came out to. Below is the top-items list with a breakdown switch:

Click an item and the row expands into its entries: date · seller · price × quantity · total. Every entry is clickable and opens the transaction that holds the receipt. On the desktop and on the web the top holds ten items, on the phone five — and the mobile card respects the category, counterparty and project filters chosen on the screen.

The “Purchases” screen

The All purchases button in the tab header opens the full list of the period’s items — not just the top. It has search by name, sorting and the period’s headline numbers.

Sorting on the desktop and on the web is a click on the table header (“Receipts”, “Qty”, “Avg price”, “Total”, “Δ price”); on the phone it is the “By amount · By frequency · By price · By price Δ” chips, and a second tap flips the order. Items with no match in the previous period always sink to the bottom when sorting by Δ.

The period is the one selected in Analytics: the screen opens on it and from there changes the period on its own, leaving analytics untouched.

The “Purchases” screen: the period’s numbers (receipts, average receipt, items, basket inflation), search by name and sorting by a click on the table header — here by “Δ price”.
On the phone “Purchases” opens from the “All purchases” button: large tiles for the average receipt and basket inflation, counters below the rule and sorting chips.

Basket inflation

This is your personal inflation, not the national average. Svodly takes the items present both in this period and in the previous one, measures how the median unit price of each of them changed, and weighs those changes by the item’s share of your spending. So the pricier coffee you buy every week moves the number far more than a one-off purchase.

If fewer than three items could be matched, the number is not shown — on such a sample it would be noise rather than signal. Instead you get the “not enough data” caption.

Rising basket prices are bad news, so positive inflation is highlighted as a negative change and a decrease as a positive one. This is the only place in Svodly where a “plus” is painted in an alarming colour.

The item card and its price trend

A click (a tap on the phone) on an item in the list opens its card. The heart of it is the chart of the unit price across all receipts, all-time — not just the selected period: a trend needs a long history. Next to the chart sit four anchor numbers: min, median, max and the latest price.

If an item was bought only once, there is no chart — instead a caption saying the trend will appear after the next purchases.

The item card: the all-time unit price trend with min, median, max and the latest price, the list of sellers and the full purchase history.
On the phone the item card opens as its own screen: the same price chart, the anchor numbers, the sellers and the purchase history.

Why the median and not the average price

Sales and promotions produce sharp outliers: a single half-price coffee would drag the average down and show a discount that never happened. The median — the price in the middle of the row — ignores such spikes, which is why both Δ price and basket inflation are computed on it.

How items are matched across receipts

Svodly recognises the same item across receipts by the line item name: extra whitespace and letter case are normalised, and that is all. No guesswork like “cut off the weight and the volume” — a false merge of two different products lies worse than two similar names in a list.

The practical consequence: within one retail chain matching is honest — the till prints the name identically from receipt to receipt. Different chains write the same thing differently (“Milk 3.2% 950 ml” vs “MILK PAST. 3.2% 0,95L”), so those stay separate items. When a name does coincide across chains, the item card lists all of them under “Bought at”.

A notable price change lands in “Observations”

You do not have to hunt for a price hike by hand: if an item’s median price moved more than 5 % against the previous period, the “Observations” block in Analytics gets a line like “«Coffee beans 250 g» got pricier vs. last year (median receipt price)”. To keep the observation from firing on randomness, the item must have been bought at least twice in each of the two periods.

Where to go next