Merchant Shopfront, Interior, Neighbourhood, Shop Inventory, Site Safety Audit, Vehicle Inspection — 6 types

Scene Understanding


Scene understanding types analyse photographs of physical locations and objects — not documents. with analysis_type: scene_understanding. They return structured assessments with enumerated values rather than text extraction.

These types are used for merchant onboarding verification, field inspection automation, insurance underwriting, and workplace safety audits.


merchant_shopfront — Merchant Shopfront

Analysis type: scene understanding

Analyses the exterior of a business to verify identity, signage quality, and physical condition.

Fields extracted

FieldTypeNotes
business_namestringPrimary business name as displayed on signage
business_name_localstringBusiness name in local script if different
signage_textstring[]All readable text on signs / boards
signage_qualitystringprofessional, semi_professional, hand_painted, none
storefront_conditionstringexcellent, good, fair, poor
logos_detectedstring[]Brand / payment / certification logos visible
payment_methods_displayedstring[]UPI/card/wallet logos (e.g. PhonePe, Paytm, Visa, Mastercard)
phone_numbersstring[]Any phone numbers visible on signage
address_visiblestringAddress text visible on signage
scripts_detectedstring[]Scripts / languages visible (e.g. English, Hindi, Tamil)
operating_hours_visiblestringDisplayed business hours or null
estimated_frontage_metersnumberEstimated width of shopfront in meters
gstinstringGSTIN if displayed on signage

Validation rules

FieldRule
business_nameRequired
signage_qualityRequired · Regex ^(professional|semi_professional|hand_painted|none)$
storefront_conditionRequired · Regex ^(excellent|good|fair|poor)$

Example

const result = await client.verify.document({
  doc_type: "merchant_shopfront",
  file_url: "https://storage.example.com/shop_photo.jpg",
});
// result.output.business_name → "Sri Lakshmi General Stores"
// result.output.signage_quality → "semi_professional"
// result.output.storefront_condition → "good"
// result.output.payment_methods_displayed → ["PhonePe", "Paytm"]
// result.output.scripts_detected → ["Tamil", "English"]

merchant_interior — Merchant Interior

Analysis type: scene understanding

Analyses the inside of a business to assess scale, stock, operations, and digital readiness.

Fields extracted

FieldTypeNotes
store_typestringretail, wholesale, service, food_beverage, mixed
store_scalestringmicro (<100 sqft), small (100-500), medium (500-2000), large (>2000)
cleanlinessstringclean, acceptable, poor
lighting_qualitystringgood, adequate, poor
shelf_organizationstringwell_organized, moderate, disorganized
has_billing_counterbooleanBilling / checkout counter visible
has_digital_posbooleanDigital POS terminal or billing system visible
staff_visible_countintegerNumber of staff / workers visible
equipment_visiblestring[]Fridges, display cases, weighing scales, ovens etc.
product_categoriesstring[]Categories of products / services visible
brand_names_visiblestring[]Recognisable brand names on products / packaging
estimated_sku_countstringlow (<50), medium (50-500), high (>500)
notesstringAny other notable observations

Validation rules

FieldRule
store_typeRequired · Regex ^(retail|wholesale|service|food_beverage|mixed)$
store_scaleRequired · Regex ^(micro|small|medium|large)$

merchant_neighbourhood — Merchant Neighbourhood

Analysis type: scene understanding

Analyses the street and area around a business to assess commercial viability, foot traffic, and risk.

Fields extracted

FieldTypeNotes
location_typestringhigh_street, market, mall, residential, industrial, rural
business_densitystringdense, moderate, sparse
foot_traffic_estimatestringhigh, medium, low
vehicle_traffic_estimatestringhigh, medium, low
infrastructure_qualitystringgood, adequate, poor — road, drainage, lighting
residential_proximitystringclose, moderate, far
adjacent_businessesstring[]Names or types of neighbouring businesses
landmark_nearbystringNotable landmark, mall, station, temple etc.
road_typestringmain road, lane, highway, market lane etc.
risk_signalsstring[]Risk indicators: vacant lots, damage, isolation, poor lighting
notesstringAny other notable observations about the area

Validation rules

FieldRule
location_typeRequired · Regex ^(high_street|market|mall|residential|industrial|rural)$
business_densityRequired · Regex ^(dense|moderate|sparse)$

shop_inventory — Shop / Retail Inventory

Analysis type: scene understanding

Assesses shelf stock levels, product variety, organisation, and inventory health.

Fields extracted

FieldTypeNotes
stock_levelstringlow, medium, high
product_categoriesstring[]e.g. beverages, snacks, dairy, fresh produce
brand_names_visiblestring[]Recognisable brands on shelf
display_typesstring[]shelf, rack, floor stack, refrigerated, hanging, counter
shelf_countintegernull if not countable
total_items_estimatedintegernull if not estimable
empty_shelf_percentagenumberFloat 0-100 or null
organization_qualitystringwell_organized, moderate, disorganized
cleanlinessstringclean, acceptable, poor
price_tags_visiblebooleannull if unclear
signage_visiblebooleanSection labels, price boards, offers
expiry_concernsbooleanVisibly expired or near-expiry products
temperature_controlledbooleanFridges, freezers, cold storage visible
notesstringnull

Validation rules

FieldRule
stock_levelRequired · Regex ^(low|medium|high)$

site_safety_audit — Construction / Site Safety

Analysis type: scene understanding

Assesses PPE compliance, hazard detection, and safety score for construction or industrial sites.

Fields extracted

FieldTypeNotes
safety_scorenumberFloat 0-10
ppe_compliance_pctnumberFloat 0-100
ppe_detailsobject[]Each: type (helmet/vest/boots/gloves/goggles/harness/ear protection), compliance (full/partial/none)
violationsstring[]Specific safety violations observed
hazards_detectedstring[]Open excavation, exposed wiring, falling objects risk, chemical spill etc.
housekeepingstringgood, acceptable, poor
worker_count_visibleintegernull if not countable
work_activitystringexcavation, welding, lifting, painting, scaffolding, concreting
scaffold_conditionstringgood, fair, poor, not_present
barricading_presentbooleanSafety barriers around hazard zones
safety_signage_visiblebooleanWarning signs, caution boards
first_aid_visiblebooleannull if unclear
fire_extinguisher_visiblebooleannull if unclear
lighting_adequatebooleanFor indoor / underground sites
weather_conditionsstringclear, rainy, dusty etc. if discernible
notesstringnull

Validation rules

FieldRule
safety_scoreRequired
ppe_compliance_pctRequired

Example

const result = await client.verify.document({
  doc_type: "site_safety_audit",
  file_url: "https://storage.example.com/construction_site.jpg",
});
// result.output.safety_score → 6.5
// result.output.ppe_compliance_pct → 72.0
// result.output.violations → ["Two workers not wearing helmets", "Open excavation without barricading"]
// result.output.hazards_detected → ["Open excavation", "Unsecured scaffolding"]

vehicle_inspection — Vehicle Inspection

Analysis type: scene understanding

Assesses vehicle condition from photographs — used for insurance pre-inspection, loan collateral checks, and fleet management.

Fields extracted

FieldTypeNotes
overall_conditionstringgood, fair, poor
damage_severitystringnone, minor, moderate, severe
damage_detailsobject[]Each: area (e.g. front bumper, rear left door), type (dent/scratch/crack/rust/paint peel/broken), severity (minor/moderate/severe)
vehicle_typestringcar, SUV, truck, two-wheeler, bus, three-wheeler
make_modelstringManufacturer and model (e.g. Maruti Swift)
colorstringnull if unclear
year_approxstringApproximate model year if identifiable
license_platestringnull if not visible
tire_conditionstringgood, worn, flat, missing
rust_visiblebooleannull if unclear
fluid_leakbooleannull if unclear
glass_damagebooleanCracked / broken windshield or windows
interior_visiblebooleanCan interior be seen
interior_conditionstringgood, fair, poor or null
odometer_readingstringnull if not visible
modifications_visiblestring[]Aftermarket parts, wraps, accessories
photos_recommendedstring[]Areas needing closer inspection

Validation rules

FieldRule
overall_conditionRequired · Regex ^(good|fair|poor)$
damage_severityRequired · Regex ^(none|minor|moderate|severe)$

Example

const result = await client.verify.document({
  doc_type: "vehicle_inspection",
  file_url: "https://storage.example.com/car_front.jpg",
});
// result.output.overall_condition → "fair"
// result.output.damage_severity → "minor"
// result.output.damage_details → [
//   { area: "front bumper", type: "scratch", severity: "minor" }
// ]
// result.output.tire_condition → "good"