The supplier sends a ratelist. Polaris reads it.
Upload the PDF, CSV, XLS or XLSX the supplier actually sent you — up to 20 MB. A PDF goes to 5 hand-written parsers first, with a language model as the fallback; a CSV, XLS or XLSX is read as a table and you map the columns.
- On a PDF, deterministic parsers first and a model second
- 5 hand-written parsers try the PDF before anything else, and a parse is accepted only if at least 75% of the rows come out clean and at least half the source lines are covered. Only when no parser clears that bar does a language model read the document. A CSV, XLS or XLSX never reaches either path: the table is extracted and mapped column by column.
- Duplicates inside one upload are skipped, an earlier match is flagged
- Every file is hashed by content and checked across your organisation. Two copies of the same file inside a single upload — the second one is skipped. A file that matches something you imported earlier is recorded and flagged for you, not dropped silently. The supplier itself is auto-detected by token match against your supplier list, and only when the best match leads the runner-up by a clear margin.
- Rows matched to your catalogue at 70% confidence
- Each quoted line is fuzzy-matched against the products you already stock. It auto-matches only above a 70% confidence floor and only with a margin over the second-best candidate — otherwise it waits for a person.
- Their unit converted into yours
- A price quoted per carton, per dozen or per pack normalises into your unit or subunit by conversion factor or pack size, so what lands in the batch is comparable to the price you already sell at.
- A purchase price that moves 25% against the last ratelist is flagged
- Import compares every quoted purchase price against what the same product cost on the previous ratelist. A move of more than 25% is flagged, more than 50% severe, so a decimal typed in the wrong place surfaces during review rather than after you have bought at it.
- Rows land in 5 states, on one review screen
- An imported row lands as matched, suggested, unmatched, conflict or conversion-blocked, and the 4-step workspace walks you through upload, parse, match and apply. You review the rows that need judgement, not the ones that do not.