Socialone Logo

Image Analysis

AI Image Analysis on Forms

When a contact uploads a photo via a form, SIA — Socialone's AI — reads that image and extracts specific data fields: amounts, product codes, dates, text, identifiers, or anything else that appears in the photo. The extracted values are stored on the response and can be used to trigger tickets, create orders, enrich contact records, or any other action rule you configure.

This works with any type of uploaded image — receipts, delivery notes, prescription labels, inspection photos, identification documents, product tags, warranty cards, or any structured document your customers or staff might photograph and submit.

How it works

Photo uploadedSIA reads imageFields extractedValidatedActions triggered

SIA receives the image and a description of each field you want to extract, then returns structured values that Socialone validates and stores before running your action rules.

Where to Find This

  • Forms → open a form → Questions → add/edit a Photo Upload question → Image Analysis toggle

Prerequisites

  • SIA image analysis enabled on your Socialone plan.
  • A Photo Upload question on your form (image analysis is not available on Document Upload questions).

Enabling Image Analysis

  1. Open or create a form and add a Photo Upload question.
  2. Toggle on Enable AI Image Analysis.
  3. Set a Validation Prompt — this tells SIA what counts as a valid document and what should be rejected. See the Validation Prompt guide for examples and best practices.
  4. Click Add Field for each piece of data you want to extract from the image.
  5. For each field set:
    • Field Key — internal identifier used in action rules and order mapping (e.g., total_amount, serial_number). Use lowercase with underscores.
    • Field Label — human-readable description SIA uses as a hint to find the value (e.g., "Total invoice amount", "Product serial number"). More descriptive labels improve extraction accuracy.
    • Field Type — the kind of value expected (see table below).
    • Required — if enabled, a missing or unreadable value marks the extraction as invalid.
    • Uniqueness Check — if enabled, Socialone rejects submissions where this field's value has already been seen in a previous valid response.
  6. Optionally enable Run actions if analysis fails.
  7. Save the question and update the form.

The Validation Prompt

The Validation Prompt is the instruction SIA receives before it tries to extract any fields. It determines whether the uploaded image is accepted as a valid document at all — wrong type, blurry photo, expired date — all caught here before any extraction or order creation runs.

The default when left empty is "Is this a valid purchase bill or receipt?" — which is rarely specific enough. A good prompt names the document type, describes what makes it valid, and lists explicit rejection conditions (date window, zero amount, wrong document type). This is the most impactful setting in image analysis.

The Validation Prompt has its own dedicated guide with 8 ready-to-copy examples, a Do/Don't reference, and a testing checklist. See the Validation Prompt guide →

Field Types

TypeWhat SIA extractsExample
textAny string — names, IDs, descriptions, addresses, codesINV-2024-00123, John Smith
amountNumeric monetary value — handles currency symbols, thousand separators, EU and US decimal formats1250.00
numberAny numeric value — quantities, counts, readings42, 87450
dateDate in any format, normalised to YYYY-MM-DD2024-11-15
product_codeSKU, barcode, or retailer ID — used for automatic product lookup in the OMSSKU-LAPTOP-PRO
Tip: The field label guides SIA on what to look for. A label like "Total amount payable (bottom of receipt)" will extract more accurately than just "amount". Be specific about where on the image the value appears.

What Can You Build With This?

Image analysis is a general capability — the fields you define and the actions you attach determine what it does. Here are some starting points:

Purchase Receipts & Bills

Extract invoice number, total amount, and product code. Create an order, verify loyalty, or flag duplicate submissions.

Product Labels & Tags

Extract SKU, batch number, or manufacture date from product labels. Use for warranty registration, recall management, or stock verification.

Delivery Proofs

Extract tracking number, delivery date, and recipient name from delivery confirmation photos. Auto-close tickets or update contact fields.

Meter & Gauge Readings

Extract numeric readings from odometer, electricity meter, or fuel gauge photos. Map to a contact custom field or trigger a service order.

Prescriptions & Medical Forms

Extract prescription ID, doctor name, or medication code. Create a support ticket for verification or enrich the patient contact record.

Event Tickets & QR Codes

Extract booking reference or ticket number from event confirmation photos. Validate attendance or trigger a check-in workflow.

Inspection & Site Reports

Field staff photograph a checklist or sign-off sheet. Extract job ID, date, and technician name. Create a completion ticket automatically.

Handwritten or Printed Forms

Photograph a physical intake form, registration card, or feedback slip. Extract filled-in fields and push them directly to a contact record.

Uniqueness Check

When Uniqueness Check is enabled on a field, Socialone checks whether the extracted value has already appeared in a previous valid response for the same form. If it has, the new extraction is marked invalid and action rules for valid extractions are skipped.

  • Use on identifiers that should appear exactly once: invoice numbers, serial numbers, booking references, ticket IDs.
  • Do not enable on values that legitimately repeat: amounts, dates, product names.
  • When a duplicate is detected, the response is still saved — only the downstream actions are skipped. Your team can still review it.

Extraction Results

After analysis, each extraction record has one of three statuses:

  • Valid — all required fields found, no uniqueness conflict. Downstream action rules run.
  • Invalid — a required field is missing, a type validation failed, or a uniqueness conflict was detected. Action rules for valid extractions are skipped.
  • Error — SIA could not process the image (unreadable, corrupted, over 10 MB, or a temporary service error). If Run actions if analysis fails is on, action rules run anyway with no extracted data.

View extraction results per response in Forms → Responses tab. Each response shows the extracted field values and the validation status.

Run Actions If Analysis Fails

When this is enabled, your configured action rules fire even if the image could not be analysed — with no extracted data passed to the action. This is useful when you want a human-in-the-loop fallback: for example, always create a ticket so a team member can review the uploaded image manually when SIA extraction fails.

Best Practices

  • Write descriptive field labels. SIA uses your label as a hint when scanning the image. "Invoice total amount (bottom right of receipt)" extracts more reliably than "amount". Be specific about the document type and where the value is typically located.
  • Keep field count focused. Extract only the values you will actually use in actions. 3–5 fields per question is a good target. More fields increase the chance of partial extraction and add latency.
  • Enable uniqueness on identifiers, not on values. Invoice numbers, serial numbers, and booking references make good uniqueness keys. Amounts and dates do not.
  • Set a manual fallback for important workflows. Add a "Create Ticket" action rule that fires when analysis fails. This ensures no submission goes unprocessed when an image is blurry or low-quality.
  • Guide photo quality in your form instructions. Add a description or content block on the WhatsApp Flow screen instructing customers to photograph in good lighting, hold the camera steady, and include the full document. Better photos yield better extractions.
  • Test with real images before going live. Submit test responses with actual document photos and check the Responses tab to see what was extracted. Adjust field labels if values are missing or wrong.
  • Images over 10 MB are skipped. WhatsApp camera photos are typically compressed well below this. Web form uploads from desktop may exceed this limit — add a note to your form if web uploads are expected.
  • Multiple photos are analysed in parallel. If a respondent uploads 3 photos, all 3 are analysed simultaneously and results are merged. A field found in any photo counts as extracted.

Frequently Asked Questions

What image formats are supported?

JPEG, PNG, WebP, HEIC, and HEIF. PDFs and video files are not analysed. WhatsApp camera photos (JPEG) work best.

What happens if the customer uploads multiple photos?

Each photo is analysed independently and in parallel (up to 4 at once). Results are merged — if a field is found in any of the photos, it is captured. If the same field appears in multiple photos, the first valid value wins.

Can I use image analysis on Document Upload questions?

No. Image analysis is available on Photo Upload questions only. If you need to process PDFs, consider asking customers to upload a photo of the document instead.

Will a failed extraction retry automatically?

Yes — up to 2 retries on transient errors. After all retries are exhausted, the record is marked Error and, if "Run actions if analysis fails" is on, your action rules still fire.

Can I use the extracted values in contact enrichment?

Yes. Configure an Enrich Contact action rule and map the extracted field key to a contact field. For example, map odometer_reading to a custom contact field called "Last Odometer Reading".

Does this work on the web form or only on WhatsApp?

Image analysis works on both web form submissions and WhatsApp Flow submissions. Wherever a photo is uploaded, it will be analysed.

Common Issues

  • Every extraction shows "Error": SIA image analysis may not be enabled on your plan or there may be a configuration issue. Contact support to verify your setup.
  • Field extracts the wrong value: make your field label more specific. Include context about the document type and where the value appears (e.g., "Net payable amount — bottom of the invoice, above the signature line").
  • Amount extracted with wrong decimals: the system auto-detects EU (1.234,56) vs US (1,234.56) formats. If your documents use a non-standard format, contact support.
  • Valid-looking submission marked as duplicate: two responses have the same extracted value for a uniqueness-checked field. Check the Responses tab — the earlier submission is the original.
  • Image analysis toggle not visible: ensure the question type is set to Photo Upload. The toggle does not appear on Document Upload questions.

Next Steps

Need Help?

For help configuring extraction fields or understanding your results, contact our Support Team.

Related product

SIA manages your reputation across every platform

Protect every storefront and profile with SIA-drafted replies, sentiment guardrails, and escalation playbooks that never sleep.

View product →