Products

    AI Provenance

    merchi.ai implements the AI Provenance Protocol (APP), an open standard for recording, embedding, and verifying the origin of AI-generated content. Every piece of content generated by merchi.ai includes provenance metadata that proves it was created by AI, which model was used, and whether it has been reviewed by a human.

    Why AI Provenance Matters

    EU AI Act Compliance

    The EU AI Act (Article 50) requires that AI-generated content is clearly marked as such. Businesses operating in or selling to the EU must be able to demonstrate that AI-generated product descriptions, metadata, and other content are transparently labelled. merchi.ai’s provenance system helps you meet these obligations by automatically embedding provenance data into every generated output.

    Key compliance dates:

    • August 2, 2026: Transparency obligations for AI-generated content come into force
    • merchi.ai’s provenance system is designed to satisfy these requirements out of the box

    Trust and Transparency

    Beyond regulation, provenance metadata builds trust with your customers, partners, and downstream systems. Any recipient of your product data can independently verify that the content was AI-generated and check its review status.

    What’s Included

    Every AI-generated product in merchi.ai automatically receives an _ai_provenance block in its output data. This block contains:

    FieldDescription
    ai_generatedConfirms the content was created by AI
    generator.modelThe AI model used to generate the content
    generated_atTimestamp of when the content was generated
    generation_idA unique identifier for this specific generation
    review.human_reviewedWhether a human has reviewed the content
    review.review_typeCurrent review status: pending, approved_without_changes, edited, or rejected
    review.reviewed_atWhen the human review took place (if applicable)
    verification_uriURL to independently verify the provenance
    app_versionVersion of the AI Provenance Protocol

    Review types explained

    TypeWhen it’s set
    pendingContent has been generated but not yet reviewed
    approved_without_changesWorkflow status changed to Approved without any manual edits
    editedContent was manually edited before or during approval
    rejectedWorkflow status changed to Rejected

    Viewing Provenance in the UI

    When you open a product in the Product Detail view, the AI Provenance card appears below the Metadata section. It shows:

    • The AI model used to generate the content
    • When the content was generated
    • The current review status
    • The generation ID
    • A Verify link that opens the public verification endpoint directly in your browser

    How Human Review Tracking Works

    merchi.ai automatically tracks human review of AI-generated content through the Workflow Status system:

    1. When content is generated, the review status is set to Pending Review
    2. If you manually edit and save any content field before approving, the review type is set to edited to record that the AI output was human-modified
    3. When a user changes the workflow status from “Pending” to any other status (Review, Approved, or Rejected), the provenance record is updated to reflect that a human has reviewed the content
    4. The reviewer’s action and timestamp are recorded

    This creates a clear audit trail showing that AI-generated content has been reviewed by a person before being published or exported.

    Provenance in Exports and Webhooks

    The _ai_provenance metadata is automatically included in:

    • Webhook payloads — downstream systems receiving product data via webhooks always get the provenance metadata
    • API responses — the provenance block is part of the product output returned by the API
    • CSV exports — provenance fields are included in exported data

    This ensures that provenance information follows your content wherever it goes, maintaining compliance throughout your content supply chain.

    Verifying Provenance

    Any person or system with a generation ID can independently verify the provenance of AI-generated content using the public verification API. No authentication is required.

    Verification API

    GET https://app.merchi.ai/api/functions/v1/verify/{generation_id}
    

    Example Request

    curl https://app.merchi.ai/api/functions/v1/verify/11cab0ef-aff1-4ac7-9fd9-0d8ff74e4603
    

    Example Response

    {
      "found": true,
      "app_version": "1.0.0",
      "ai_generated": true,
      "generator": {
        "model": "google/gemini-3-flash-preview-20251217"
      },
      "generated_at": "2026-03-07T11:15:21.989Z",
      "review": {
        "human_reviewed": false,
        "review_type": "pending"
      }
    }
    

    If the generation ID is not found, the API returns:

    {
      "found": false
    }
    

    How to Use Verification

    1. Find the generation ID — it’s in the _ai_provenance.generation_id field of any product output, webhook payload, or API response
    2. Call the verification endpoint — make a GET request with the generation ID
    3. Check the response — confirms whether the content was AI-generated, which model was used, and its review status

    This allows your customers, partners, or regulatory bodies to independently confirm the origin and review status of any AI-generated content produced by merchi.ai.

    Provenance Data Structure

    Content provenance

    A top-level _ai_provenance block is embedded alongside the locale keys and covers the AI content generation event:

    {
      "en-GB": {
        "title": "Product Title",
        "description": "Product description..."
      },
      "_ai_provenance": {
        "ai_generated": true,
        "app_version": "1.0.0",
        "generated_at": "2026-03-07T11:15:21.989Z",
        "generation_id": "11cab0ef-aff1-4ac7-9fd9-0d8ff74e4603",
        "generator": {
          "model": "google/gemini-3-flash-preview"
        },
        "review": {
          "human_reviewed": false,
          "review_type": "pending"
        },
        "verification_uri": "https://app.merchi.ai/api/functions/v1/verify"
      }
    }
    

    Per-image provenance

    AI-generated images and images processed with AI background replacement each carry their own _ai_provenance block inside the imageMetadata entry. This makes every image independently verifiable:

    {
      "en-GB": {
        "imageMetadata": [
          {
            "imageName": "product-studio-render",
            "imagePath": "tenant/product/image.jpg",
            "imageAltTag": "Studio render of the product on a white background",
            "_ai_provenance": {
              "ai_generated": true,
              "app_version": "1.0.0",
              "generated_at": "2026-07-13T14:20:25.592Z",
              "generation_id": "dc2b2f8b-5c15-49a3-9eb4-e6d9f2706d11",
              "generator": {
                "model": "google/gemini-3.1-flash-image"
              },
              "review": {
                "human_reviewed": false,
                "review_type": "pending"
              },
              "verification_uri": "https://app.merchi.ai/api/functions/v1/verify"
            }
          }
        ]
      }
    }
    

    When a product is approved or rejected, the review status cascades to all per-image provenance records automatically.

    Frequently Asked Questions

    Can I remove the provenance data? The _ai_provenance block is always included in webhook payloads and API exports to ensure EU AI Act compliance. It cannot be stripped or made opt-in.

    Does this affect my product content? No. The provenance metadata is stored separately from your locale content and does not appear in product titles, descriptions, or other fields. It is only visible in the raw JSON output and in the AI Provenance card in the product detail view.

    What happens when I re-generate a product? A new generation ID is created and the previous generation ID is recorded as a parent, creating a chain of provenance. This allows you to trace the full history of re-generations.

    Do AI-generated images have their own provenance? Yes. Every image created using the AI Image Generation feature or processed with AI background replacement has its own generation_id and can be independently verified. Approving or rejecting a product updates the review status on both the content provenance and all per-image provenance records.