Skip to content

Enrichment pipeline ​

Status: pilot. Draft — needs review before publishing.

Enrichment turns the raw input into a canonical card. It runs on the backend and is observed through jobs — one job per product, with stages you can follow.

Stages ​

  1. Identity resolution. From photo, name, SKU or barcode the system establishes the canonical identity: GTIN, brand, model, category. Identity has a status — when it cannot be resolved, the identity is unresolved and the canonical fields stay empty while the submitted values are preserved.
  2. Fact extraction. Attributes are collected from sources, each value with its evidence: a source URL and the snippet it came from.
  3. Content generation. Description, highlights, FAQ, SEO meta, image alt texts.
  4. Finalize. A quality report is computed and the card becomes readable.

What is verified and what is proposed ​

Every attribute carries a status. Values confirmed against a source are distinguished from values the system proposed. The distinction is visible in the card and is what the review step is built on — a human only decides the fields the system flags.

Each attribute also carries a numeric confidence, and each piece of evidence points to the source it came from.

Quality report ​

The card exposes a quality section:

FieldMeaning
completeness_scoreHow much of the expected structure is filled
confidence_scoreHow reliable the filled values are
validation_statusOverall validation state
missing_attributesAttributes expected for the category and still absent
low_confidence_attributesAttributes that need a human decision

The completeness score is only meaningful when the expected attribute set for the category is known. That set is not exposed by the API yet, so treat the score as an indicator, not as an acceptance criterion.

Editing a card ​

Review is not a separate system — the card itself is editable:

  • product fields — name, SKU, brand, category;
  • content — title, both descriptions, bullets, FAQ, SEO, alt texts;
  • identity — brand, model, MPN, category, canonical title;
  • attributes — value, unit, status.

Editing an attribute locks it, so a later re-extraction cannot overwrite the human correction.

One property to keep in mind: identity and facts are shared per GTIN across accounts. Their correction changes the record everyone uses, so a UI must warn before saving.

Caching by EAN ​

When a product is created with an EAN that already exists and has completed content, the content and quality report are copied to the new product and it is ready immediately, without queuing. Identity and facts are shared anyway and are not copied per account.

Next ​