| ← All Docs Onboarding & Support

Onboarding & Support

Verified Last updated: September 2026

The onboarding wizard guides new dealers through initial setup. The support system allows dealers to submit tickets and admins to manage them.

Onboarding Wizard

Overview

Step 1: Shop Details

Collects the dealer's business information. All validation uses Zod schemas.

FieldRequiredValidation
Shop NameYesMinimum 3 characters
Owner NameYesMinimum 2 characters
AddressYesMinimum 5 characters
GSTINNoRegex: /^\d{2}[A-Z]{5}\d{4}[A-Z]{1}[A-Z\d]{1}[Z]{1}[A-Z\d]{1}$/
Drug License No.NoFree text (no format validation)

GSTIN Format Breakdown

22AAAAA0000A1Z5
││     │    │││└─ Check digit (alphanumeric)
││     │    ││└── Always "Z"
││     │    │└─── Alphanumeric
││     │    └──── Alpha
││     └─────────  4 digits
│└───────────────  5 uppercase letters (PAN)
└────────────────  2-digit state code

Save Action

Step 2: Language Selection

Allows the dealer to choose their preferred language. Uses i18next for internationalization.

Step 3: Product Catalog

The dealer selects initial products from the global catalog or adds custom products.

Two Methods

Select from Global Catalog

Browse and select products from the AquaDealers master product database. Pre-populated with common agricultural products.

Add Custom Products

Create products not in the global catalog. Enter name, category, unit, and pricing.

What Happens

Step 4: Add First Farmer

Creates the dealer's first customer (farmer) record.

FieldRequiredNotes
NameYesFarmer's full name
PhoneYes10-digit Indian mobile number (used for WhatsApp)

After this step, the dealer has a complete minimal setup: shop profile, language, products, and at least one customer.

Progress Tracking

Database: onboarding_progress table

Each step's completion is tracked individually. The dealer can leave and resume onboarding — completed steps are skipped on return.

Step KeyCompleted When
shop_detailsProfile saved successfully
languageLanguage selected
catalogAt least one product selected or added
first_farmerFirst farmer created

When all 4 steps are complete, the dealer is redirected to the dashboard. The onboarding route becomes inaccessible (redirects to dashboard if visited again).

Support System

Architecture

ComponentDetails
Database tablessupport_tickets + ticket_messages
Dealer interfaceIn-app support form (create ticket, view replies)
Admin interface/admin/support — ticket list, detail view, reply, resolve
Resolution RPCadmin_resolve_ticket

Ticket Lifecycle

1
Dealer creates ticket — provides subject and description. Status: open
2
Admin sees ticket in /admin/support dashboard. Can change status to in_progress
3
Admin replies — message added to ticket_messages. Dealer sees reply in-app
4
Admin resolves via admin_resolve_ticket RPC. Status: resolved

Ticket Statuses

StatusMeaningWho Sets It
openNew ticket, awaiting admin responseAutomatic on creation
in_progressAdmin is investigatingAdmin
resolvedIssue resolvedAdmin (via RPC)

Priority Levels

Tickets can be assigned priority levels by the admin to help triage the support queue. Priority is informational and does not trigger any automated behavior (no SLAs, no auto-escalation).