Selection Report

Overview

A selection report is how the checkout communicates back to Tiliter the outcome of a product recognition. It tells Tiliter what the customer selected and how the selection was made.

What Tiliter Does With It

Tiliter uses selection reports to:

  • Understand which recognized products customers actually want
  • Improve recognition accuracy over time
  • Track the effectiveness of the recognition system
  • Measure conversion rates for recognized items

Selection Report Types

Automatic

The item is added to the cart automatically by the software.

When to use: Tiliter sends one result that the checkout adds automatically

Manual

The shopper selects the product on screen from the recognition results.

When to use: Tiliter sends multiple results and the customer picks one, or sends one result with a confirmation prompt

Recognition Unused

The selection did not go through recognition at all.

When to use: Manual PLU entry, barcode scan, cashier override, or results not acted upon

How to Use Selection Reports

  1. Capture the selection type — Determine whether the selection was automatic, manual, or unused
  2. Send the report — Include the appropriate selection type when reporting back to Tiliter
  3. Include context — Provide details about which product was selected (if applicable)

Create Selection Report

The Create Selection Report function sends the user's selected product to the Tiliter Recognition API. This helps identify potential misselections (like a potato instead of an avocado), which is returned as an indicator in the response. A selection report is required for each recognition.

Path Params

  • recognition_id (uuid, required) — Unique identifier for the recognition event

Body Params

  • selection_method (string, enum, required) — How the product was selected

    • automatic — Item added to cart automatically by software
    • manual — Shopper selected from on-screen results
    • recognition_unused — Selection bypassed recognition (PLU entry, barcode scan, cashier override)
  • selected_product_id (string, required for automatic or manual; not required for recognition_unused) — Unique identifier of the selected product. Used to identify fraud.

  • sale_info (SaleWeight | SaleQuantity) — How the product is sold (by weight or quantity)

  • transaction_id (string, 1-50 characters, pattern: ^[a-zA-Z0-9_\-]+$) — Retailer's internal transaction ID for enhanced reporting correlation

  • line_item_id (string, 1-50 characters, pattern: ^[a-zA-Z0-9_\-]+$) — Line item identifier in the transaction (if available)

  • selection_time (date-time, required) — Date and time the product was selected


Responses

200 — Successful Response

  • recognition_id (uuid, required) — Unique identifier for the recognition event, used to correlate selection data with the original recognition

  • loss_detection (object) — Loss detection results

    • status (string, enum, required) — Loss status: loss, no_loss, or unknown
    • detail (string) — Additional details about the result

422 — Validation Error

429 — Request Throttled

Reduce request rate and retry


Did this page help you?