In development · founding partners onboarding from Q4 2026
Channel Readiness
Find out from us, not from the marketplace.
Every channel has rules — required attributes, title limits, image sizes, identifier formats, and increasingly, legal fields. TOVIA runs those rules before you submit and tells you which attribute failed, on which rule, for which channel.
Builtlocal build · synthetic data
The failure classes
Why listings get rejected.
Five, and they account for most of it. We are not going to quote you a percentage: we do not have one that is ours to quote.
- 01Missing required attributeRequired for the product type on that channel, and the product type is the channel's, not yours.
- 02Identifier mismatchThe GTIN on the listing does not match the catalogue record, or its check digit is wrong.
- 03Title or bullet over the limit255 characters here, 200 there, 120 on the third — and truncation changes the meaning.
- 04Image fails the channel's ruleMinimum dimension, background, or the ratio the category requires.
- 05A compliance field the channel now enforcesGPSR responsible person, EPR registration, hazardous-goods flags. This is the row that grew in 2026.
How a check works
Three steps, and the middle one is the product.
Rule sets per channel
BuiltEach channel's requirements are encoded as rules and versioned, so a rule change is a diff rather than a surprise. Rules are data; adding a channel does not mean writing code.
A failing check, shown
BuiltThe product, the channel, the rule, the attribute, and what would fix it — in one row. Not a percentage score, not a red dot: the sentence a person can act on.
Resolution before submission
BuiltFix it once in the product master and every channel projection is re-checked, because the projections are generated rather than maintained.
- BlocksDEEPR packaging registration number missingLUCID number required before listing · 41 SKUs affected
- BlocksFRGPSR responsible person not setEU economic operator required on the offer · 41 SKUs
- CheckES · es-ESCN code missing on 2 of 6 variantsNeeded per variant for the flat customs duty
- ReadyDE · de-DETitle within channel limit55 / 200 characters
- ReadyAllGTIN present and check-digit valid8412345678904
Before, not after
A check runs against the channel’s rules, and a failure is a task.

Compliance attributes as blocking checks
The rows nobody else checks
In development
- EPR registration number, per market
- GPSR responsible person and contact, per product
- CN / HS code, per variant
- Product Identifiers for low-value consignments — mandatory from 1 November 2026
- Packaging data per market, under PPWR
These are product facts with a legal meaning and a per-market answer. TOVIA is building them as first-class readiness rules — with an authority, a validity window and a blocking outcome — rather than as free-text attributes that pass validation because nothing checks them.
Pre-submission validation is not a new category: Salsify, Sales Layer, Akeneo, WISEPIM and inriver all do it. This row is where TOVIA is different, and it is in development, not built.
Per market, not only per channel
A channel is not a country
In development
amazon.de places goods in Germany and in Austria, and the obligations differ. A readiness check that only knows the channel cannot say whether the listing is legal where it will actually be sold.
TOVIA’s rules are resolved over the markets a channel serves, so the answer to “is this ready?” is a per-market answer. That resolution is in development; the rule engine it runs on is built.
Joined to stock and orders
A listing with no stock is still a failed listing
Builtlocal build · synthetic dataPlanned
Readiness in TOVIA reads availability, because a listing that passes every content rule and has nothing behind it will still cost you a cancellation and a metric. On the local runtime that join is built; connector-fed availability is planned, and no connector is live.
Versus the alternatives
What else could tell you.
| The marketplace's own report | A feed tool | Enterprise PIM readiness | TOVIA | |
|---|---|---|---|---|
| When you find out | after submission | before, format only | before, content only | before submission |
| Names the failing rule | sometimes | yes | yes | yes |
| Compliance fields as blocking checks | no | no | rarely | in development |
| Resolved per market, not only per channel | no | no | no | in development |
| Reads stock | no | no | no | yes, on the local runtime |
FAQ
Questions people actually ask
Which channels' rules exist today?
Rule sets are configured per channel on the local runtime, against synthetic catalogues. None of them is fed by a live connector, so a rule set describes what a channel requires — it does not yet submit anything to that channel on your behalf.
Does it fix the listing for me?
No. It tells you exactly what to fix, on which attribute, for which channel. AI review is in development and is suggestion-only: nothing writes to your catalogue without a person approving it, and every approval is logged.
Can I add my own rules?
That is the design — rules are data, not code — and it is planned as configuration you can edit. Today they are authored with you rather than by you.
Does it cover Mirakl operators?
Each Mirakl operator is its own channel with its own taxonomy and its own required attributes, and is modelled that way rather than as one generic Mirakl connector. Planned.
What about bol, Kaufland, eMAG and Allegro?
Same model: the rule set is data and the connector is separate. The rule sets can exist before the connector does, which is exactly why readiness is useful before any connector is live.
What changes for you
What checking first changes.
A rejection becomes a task on a list before submission, instead of a suppressed listing found by whoever noticed the sales stop.
Marketplace manager
BuiltReadiness checks before submission
When a second country classifies your products differently for EPR, you change one classification rather than a spreadsheet.
Compliance or operations lead
In developmentEU compliance attributes as blocking checks
Nobody has to remember which marketplace calls the same field by which name — the rule set does, per channel and per market.
Anyone submitting a listing
BuiltChannel dialects and field mapping
Run it against your worst channel.
The one with the rejection history. Founding partners get their own rule sets configured with the team.