One platform powering Fevicryl workshops, approvals, and payments nationwide

Nanostuffs built Fevicryl TEAM—a progressive web app for Pidilite's artisan field ecosystem. FCP teachers plan workshops on Salesforce Opportunities, CMDI and AMMD approve execution and payments, and Hobby Class Teachers run a streamlined Hobby Centre flow—all through a single encrypted API to Heroku-hosted Salesforce data.

Field workshops lived in phone calls and spreadsheets while approvals sat in Salesforce—teachers needed one mobile experience that matched the real hierarchy without retraining the org on a new CRM.

Pidilite Industries logo
Consumer Arts & Crafts (FMCG) · Salesforce + React PWA · India Field Network

How Fevicryl TEAM works

Video coming soon

At a glance

4
role-based portals — FCP, CMDI, AMMD, Admin
11+
workshop & payment workflow stages
50+
screens across workshops, leads, HPAs, training
1
unified Salesforce Opportunity data model

Client

Pidilite Industries — Fevicryl TEAM (Hobby Ideas) field application

Challenge

Coordinate workshop lifecycle, materials, photos, and multi-level payment approvals across a distributed teacher network

Solution

Custom React PWA with role-based UX, encrypted SQL bridge to Salesforce, OTP login, and stage-aware workshop workflows

Result

End-to-end digital workshop operations on one platform — from planning through CMDI/AMMD sign-off to payment stages

The Challenge

A national artisan network couldn't run workshops on spreadsheets and phone approvals

Pidilite's Fevicryl program spans thousands of Fevicryl Teachers (FCPs), regional CMDIs, and AMMD leaders who oversee workshop quality, materials, and incentive payments across schools, Art Avenues, Hobby Centres, and HPAs throughout India.

The business problem wasn't "we need an app" — it was that workshop planning, SKU selection, execution proof (photos and participant counts), and payment approvals each involved different people, stages, and rules. Teachers in the field needed speed; managers needed control; finance needed auditability on Salesforce.

Adding Hobby Class Teachers introduced a second persona on the same Opportunity model: simpler categories, fixed Hobby Center accounts, and zero-payment workshops — without breaking the established FCP journey or approval chain.

Engagement Snapshot

Industry
Consumer arts & crafts (FMCG)
Geography
India (FY April–March)
Users
FCP, CMDI, AMMD, Hobby Class Teacher, Super Admin
Core platform
Salesforce (Account, Opportunity, Lead, Campaign, custom objects)
Integration
Heroku API, OTP SMS, Firebase, image/PDF upload
Why Salesforce + React PWA

Why Salesforce was the right core for field workshop operations

Salesforce already held the hierarchy — FCP accounts, assigned CMDIs, reporting AMMDs, workshop Opportunities with stage and probability, payment fields, and content libraries. The gap wasn't the data model; it was that field users would never adopt Sales Cloud for daily workshop work.

Nanostuffs kept Salesforce as the system of record and built a purpose-built React front end that speaks to the same objects through a secure SQL API — configuration where possible, custom engineering where the field UX demanded it.

What Salesforce + React PWA handles natively

  • Master data: FCP accounts, HPAs, schools, outlets, CMDI/AMMD hierarchy (Pidilite_User__c)
  • Workshop records as Opportunities with StageName, tertiary amounts, and payment fields
  • Leads, TTC/training Campaigns, and training content (Pidilite_Content__c)
  • Record types for FCP, Hobby Centres, Professional HPA, Hobby Class Teacher leads, and more

Where custom engineering was needed

A full React progressive web app with encrypted SQL queries to Heroku Postgres, stage-aware Planning / Execute / Preview tabs, role-gated approvals, OTP mobile authentication, document uploads, and conditional HCT workshop logic — all outside standard Salesforce UI.

The Platform

What we built

01 · Layer

React field application

Role-based dashboards, workshop Planning / Execute / Preview flows, Formik + Yup validation, Redux and Apollo local state, Material UI, and 50+ routed modules for leads, HPAs, schools, training, content, and KYC.

React 16 · PWA · Workbox

02 · Layer

Secure API & services layer

AES-encrypted SQL to a Heroku-hosted PHP endpoint, OTP SMS login, dedicated image and PDF upload endpoints, and Firebase push notifications with service-worker caching.

Heroku · PHP · Firebase

03 · Layer

Salesforce via Heroku Connect

A PostgreSQL schema mirroring Accounts, Opportunities, Leads, Campaigns, Workshop Articles, Workshop Dates, Outlets, and custom Pidilite objects — single source of truth for approvals and reporting.

Salesforce · Heroku Connect
The Hard Problem

One codebase, four personas, eleven stages — without duplicate workflows

FCP, CMDI, AMMD, and Hobby Class Teachers all interact with the same Opportunity record — but each role sees different fields, validations, and approval actions depending on the workshop stage and user type.

The obvious approach — separate apps or routes per persona — would multiply maintenance and drift from Salesforce. Hard-coding one workshop category for all "simple" teachers broke when Hobby Class Teachers needed a different category, zero payments, and hidden expense fields.

The fix wasn't a new workshop type in Salesforce — it was conditional UX and validation on the same Opportunity, keyed off role and category, while preserving one approval chain.

Nanostuffs introduced guard logic across the Planning and Preview screens: skipped validations for hidden fields, Hobby Centre category with an auto-linked Hobby Center account, zero payment on AMMD approval, and legacy compatibility on edit — without new routes or duplicate Opportunity types.

Before

  • Hobby Class Teacher workshops forced through full FCP expense and tertiary rules
  • Category locked to Art Avenue; validation errors on hidden fields
  • Payment amounts and alter-payment UI inappropriate for zero-value Hobby Class Teacher workshops

After

  • Hobby Centre category with dedicated Hobby Center account auto-populate
  • Stage-aware UI: CMDI/AMMD queues filtered by role and fiscal year
  • Single workshop shell (Planning → Execute → Preview) for all personas
The Approach

How we delivered it

Phased delivery on a live Salesforce org — scoped sprints for new personas (Hobby Class Teacher / Hobby Centre) without destabilising production FCP workflows.

01

Discovery

Mapped Opportunity stages, Account record types, CMDI/AMMD hierarchy, and field pain points with Pidilite program owners.

02

Core workshop platform

Planning, Execute, and Preview tabs; articles, outlets, photos, participants; CMDI and AMMD approval lists and payment queues.

03

Field ecosystem

Leads, My FCP, HPA/school onboarding, training/TTC, content library, eKYC, agreements, outlets, and super-admin tooling.

04

Scoped sprint: Hobby Class Teacher

Hobby Class Teacher flow, Hobby Centre category, conditional validation, and zero-payment approval path — on existing components, not new routes.

The Outcomes

What changed for Pidilite Industries

Real numbers only — pending metrics await client-approved data.

4

user roles on one mobile platform

11+

Opportunity stages from Planning to Paid

3

workshop tabs: Plan, Execute, Preview/Payments

1

Salesforce system of record — no duplicate workshop DB

Fevicryl field teams run the full workshop lifecycle — planning, execution proof, CMDI verification, AMMD payment approval, and Hobby Class Teacher workshops — inside one PWA aligned to how Pidilite already organises data in Salesforce.

Stack
React 16Material-UIReduxApollo ClientGraphQL (local)FormikYupReact RouterSalesforceHerokuPostgreSQLPHP APIAES EncryptionFirebaseWorkbox PWAOTP AuthenticationSweetAlert2Moment.jsBootstrap 5
Questions & Answers

Salesforce + React PWA — common questions

Need a field app your teams will actually use on Salesforce?

We build role-aware PWAs on your existing data model — workshop workflows, approvals, and payments without forcing users into Sales Cloud.

Discuss a Field Workshop App