FNS receipt scanner
Don't type a purchase in by hand — point your phone's camera at the QR code on a till receipt. Svodly requests the data from Russia's Federal Tax Service and fills in the transaction: the amount, date, seller and the full list of purchased items. The line items and receipt details are then visible right in the transaction card — on your phone, on the web and on desktop. And if the receipt is already saved as a picture or a PDF — just attach the file to a transaction, and Svodly offers to pull the purchased items from the FNS by itself.
What you get
- Purchased items — every line of the receipt with quantity, price and total.
- Seller — the company name and tax ID (INN), as in the FNS fiscal data.
- Amount and date — taken from the receipt; the transaction is filled in automatically.
- Verified by the FNS — the data comes from the official Open API, it isn't recognised from a photo. This is not OCR: Svodly reads the fiscal QR code, so the item list is exact.
With the camera, a receipt is scanned on the phone only. But recognising a QR code from an attached file works on the computer and on the web too — see “Receipt from an attachment” below. An imported receipt syncs to the cloud, and its line items can be opened in the transaction on any device.
How to scan a receipt on your phone
- Open a new transaction — the large + button in the centre of the bottom tab bar.
- Tap Scan a tax receipt next to the amount field.
- Point the camera at the QR code — it's usually at the bottom of the till receipt, next to the FN / FD / FPD details.
- Svodly requests the receipt from the FNS and within a couple of seconds fills in the amount, date and purchased items.
- Pick an account and category, add a note if you like — and save the transaction.
Receipt from an attachment: attach a file and the QR code is found for you
You don't have to catch the receipt with the camera at the moment of purchase. An electronic receipt arrives by email as a PDF, a paper one is often photographed already — just attach that file to a transaction. If it carries a fiscal QR code, Svodly asks — “Receipt QR code found”: “Request the purchase items and the seller from the tax service? The file stays attached to the transaction either way.” Two buttons: Not now and Request from FNS (on the phone — Request from tax service).
- You agree — the line items, seller and details are filled into the form by the rule “what you typed wins”: empty fields are filled in, and anything you already entered stays as it is.
- You decline — nothing happens.
- The attachment is saved either way — regardless of your answer and of how the request to the FNS ended.
This works both when creating a transaction and when editing a saved one. On the computer and on the web both pictures and PDFs are read — the pages are parsed right on your device, and nothing leaves it except the QR string itself, and only with your consent; the file can be picked in the file dialog or dragged in with the mouse. On the phone, pictures are read (PDFs are not).
Attachments are added one at a time — so a QR code that is found always belongs unambiguously to the file you have just added.
We only ask about a fiscal QR code. Links to the shop's website, SBP payment codes and promo coupons on the same receipt are filtered out — the question will not pop up on every other picture.
The question also appears without a connected Svodly Cloud — but it says honestly that the cloud is needed for recognition (the request to the FNS goes through it) and offers to connect it. If you don't need the cloud, this particular variant has a Don't remind me again checkbox: it is remembered on the device. Connect the cloud later and the question comes back.
Sharing a file from another app
On the phone there is an even shorter path. A file — a receipt photo from the gallery, a screenshot from a messenger, a PDF from email — can be sent to Svodly through the system “Share” without opening the app.
- In the app holding the file (Gallery / Photos, a messenger, email, a browser) tap Share.
- Pick Svodly in the list of apps.
- A new transaction form opens with the file already among its attachments.
- If a fiscal QR code is found on it, the app offers to pull the purchased items from the FNS. If none is found, the file simply stays attached — which is useful in itself.
- Pick an account and category — and save.
Any file is accepted, not just a picture. It works both when the app is already open and when it starts from scratch.
Viewing a receipt inside a transaction
Open the transaction the receipt is linked to — its card shows an “FNS receipt” block with the seller, tax ID (INN) and date. Tap Receipt items to expand the full list of goods with quantity, price and total, and at the bottom — the fiscal details (FN, FD, FPD) and the total. This works on any device where the book is open.
Splitting a receipt across categories
A supermarket receipt usually holds several categories at once: groceries, household chemicals, wine, cat food. Previously the whole amount fell into the single category of the transaction. Now a scanned receipt has Split receipt — every line item can be given its own category.
- Open the transaction with the receipt. On the computer and on the web press Split receipt in the receipt card — a window with the line items opens. On the phone expand the “Receipt items” card and press Split by category under the list — a sheet opens.
- Every line item has a category chip. By default it says “Same as operation”.
- Tap the chip on the line you need and pick a category.
- Press Done and save the transaction.
Assign automatically
Labelling thirty line items by hand is tedious. The Assign automatically button in the split window fills in categories for every item you haven't touched yet. Suggestions are marked “suggested”: they are a proposal, not a verdict — any chip can be changed with a single tap, and Reset clears the split entirely.
A category for an item is looked up in three sources, in this order:
- Your own past decisions. If you have already given this product a category in the receipts of this book, that category is used. Your decisions always outrank any rule.
- Your rules “keywords → category” — the same ones that drive auto-categorisation of transactions.
- A built-in dictionary of common goods — bread, milk, petrol, pet food. It only fires when a matching category already exists in your book; the dictionary never creates categories of its own.
Nothing matched — the item stays “Same as operation”, and a line appears under the summary: “No suggestions: these items have neither history nor rules yet”. The matching runs on your device and offline: no models, no outbound requests, and the contents of your purchases go nowhere. And until you save the transaction, the suggestions are not written anywhere.
There are no amounts to type in, and no remainder to balance. The parts are calculated from the line items themselves, and everything you did not touch stays in the transaction's category. A “the remainder doesn't add up” state simply does not exist here.
The receipt stays one transaction — nothing falls apart into several rows. In the journal it gets a +N marker for the number of extra categories. Analytics, however, counts the parts honestly: the “Analytics” donut, “Spending by category” on the Summary and budgets file every line item under its own category. A category filter finds such a receipt even when the category lives only in one of its parts, and the “Categories” list shows the last transaction date for the line item categories too. A line item given the same category as the transaction is not a separate part — the +N marker counts only other categories.
When every line item is split
Once every line item has its own category, the purchase has no “common” category left — not a single rouble stays in it. So the transaction takes the category of the receipt's largest part: instead of “Pets +2” the journal shows, say, “Health +1”, and the leftover category doesn't pop up anywhere. The “Category” field of the form is unavailable in this case, with a hint under it. To pick the transaction's category yourself, leave at least one line item as “Same as operation”.
Category totals don't change — only which of the receipt's categories is shown first. Receipts split before this rule are brought in line with it automatically after the app update — there is nothing to re-save.
The split syncs between devices together with the transaction. It works both when creating a transaction and when editing a saved one — in personal books, where the receipt scanner lives.
All receipts in the period
Individual receipts are convenient to look at inside a transaction, but sometimes you need a list: to find which shop the drill came from, or to collect every receipt of the quarter. That is what the “Receipts” screen is for: “Analytics” → the “Purchases” tab → the All receipts button at the bottom of the card.
Three figures for the selected period sit at the top:
- Receipts in period — and how many line items they hold.
- Receipts total. Refunds are not deducted from it: this is a register, not spending statistics.
- With attachments — how many receipts have a photo or a PDF saved.
Below is a table of date · seller · amount · items · category · attachment. The seller carries its tax ID (INN), a refund receipt is marked “refund”, and a receipt split across categories gets a +N marker for the number of extra categories. A click (a tap on the phone) on a row opens that very transaction.
The search box looks in three places at once: the seller's name, its tax ID and the names of the goods inside the receipts. So “milk” finds every receipt that contained it, even when the shop's name says nothing about it.
The period is the one selected in “Analytics”. The register holds every live transaction with a receipt, refunds included: it is precisely the purchase receipt you need when goods have to go back.
Exporting receipts
The Export receipts button collects every receipt of the period into one file. There are four formats:
- XLSX — a spreadsheet of two sheets: “Receipts” (date, seller, tax ID, amount, fiscal details, QR string, category, account) and “Items” (name, quantity, price, total, item category). The sheets are linked by the receipt number.
- CSV — the same thing “flat”: one row per receipt item.
- A PDF booklet — one receipt per page: seller, tax ID, date, total, the table of items, the FN / FD / FP details and a scannable QR code.
- ZIP — an archive with all of it at once: PDF, XLSX, CSV and the original attachments (photos and PDFs of the receipts).
Why a PDF with a QR code. To return goods, a shop needs the receipt. A paper one fades within a month, while the FNS app and the shop's till read that very QR — on a page of the booklet it is alive and scans off a screen or a printout. So “I lost the receipt” stops being a problem once the receipt has been through Svodly.
The export is a reconstruction from FNS data, not a fiscal document: Svodly prints what the tax service returned. That is stated plainly both in the export dialog and in the footer of every booklet page.
The search narrows the export too. Leave “milk” in the box and only the matching receipts are exported — the counter in the dialog says how many. Need them all? Clear the search with its ✕.
Platform differences. The PDF booklet is built on the computer and on the web; the phone offers XLSX, CSV and ZIP. In the web version the ZIP carries no attachments — the browser version does not store them (see synchronisation), and the format description says so outright.
Duplicates
The same receipt can't be added twice: Svodly recognises it by its fiscal details (FN + FD + FPD) and warns you if such a receipt is already in the book. The check runs on the device — the cloud never sees what your purchases contain.
If a receipt isn't found
The first request is deliberately fast — about two seconds. The “Try again” button in the “The receipt has not been found yet” dialog searches differently: the app re-asks the FNS for up to ten seconds, because the very same receipt is often found on the second or third attempt. There is no point in tapping it repeatedly — for a few minutes after a refusal the retry answers straight away, from the device's memory, so the daily request limit is not spent for nothing. You can always come back to the receipt later, once the till has passed it on to the FNS.
If that did not help either:
- A fresh receipt may not appear in the FNS database right away — try again later.
- Make sure the Svodly Cloud is connected: the request to the FNS goes through our server, and without the cloud the scanner is unavailable.
- Check that it really is the till receipt's QR code in the frame, not a product barcode.
- If the receipt arrived as a file — make sure the QR code is fully in the frame and not blurred. If no QR code is found there is no question, but the attachment is still saved.
- The receipt data is provided by the FNS — if the details on the receipt itself are wrong, it won't be found.
What accumulated receipts give you
Scanned receipts are not just a convenient way to enter data. Their line items feed the “Receipt purchases” section in analytics: what you buy most often, at what price, how that price moves month to month and how much your own basket got pricier. The more receipts there are, the longer the price history of every item.
Where to go next
- Receipt purchases — item statistics and price trends.
- Transactions — editing, search and attachments.
- Voice input — the other fast way: dictate a transaction out loud.
- Sync — so imported receipts are on every device.
- Auto-categorization — so the seller from a receipt yields a category right away.
- Categories & counterparties — where to file a purchase from a receipt.
- Tags — transactions from receipts carry the system “FNS receipt” tag.