← All case studies
Case Study / Channel Partner CRM

Enterprise B2B Channel Sales App for Tata Power Solar

A Flutter app that gives Tata Power's rooftop solar channel partners and retailers one place to onboard, manage leads and opportunities, place orders, register installed assets and request inspections, wired directly into Tata Power's Salesforce CRM.

Enterprise B2B Channel Sales App for Tata Power Solar screens showing leads, opportunities and asset installation tracking
Project Overview & Specs
Platforms
iOS · Android
Backend
Salesforce (Apex REST + OAuth2)
Architecture
GetX, presenter/view per module
Category
Channel Partner / Dealer CRM
Codebase
203 Dart files, ~37K lines

01 / The Challenge

One partner portal for leads, orders and everything between

Tata Power's rooftop solar business runs on a network of channel partners and retailers who generate leads, place product orders and get assets installed and inspected on site. That side of the business already lived in Salesforce, but the partners and their field staff had no dedicated mobile way in, so onboarding, KYC, CRM data entry and installation tracking were scattered across manual steps instead of one connected app.

Partner and retailer onboarding needed structured KYC (Aadhaar, PAN, GST) with document upload, and no dedicated mobile flow existed for it

Leads and opportunities captured by partners in the field had no direct, real-time link into Tata Power's Salesforce CRM

Placing product orders, tracking sales orders, and registering installed assets against a partner's credit balance were separate, disconnected steps

Field inspections needed a structured, criteria-based checklist with supporting documents rather than ad hoc reporting back to the office

02 / Here is What We Did

A GetX-driven Flutter app wired directly into Salesforce

We built the app as a modular Flutter codebase on GetX, using a consistent presenter/view pattern per feature so routing, dependency injection and state stay predictable across onboarding, CRM and field-ops modules. Every screen talks to Tata Power's Salesforce Apex REST layer through a Dio client secured with OAuth2 and dedicated auth-token, error and logging interceptors, with Freezed and json_serializable keeping every API response type-safe.

OTP-based mobile login and encrypted local session storage carry the same account model across both Retailer and CP Employee partner types.

STEP 01

Onboarding & KYC

Built OTP mobile login for Retailer and CP Employee partner types with a Channel Partner Number lookup, then a guided registration flow collecting business details, region and district, brand associations, and Aadhaar / PAN / GST KYC with document capture.

STEP 02

CRM Core: Leads, Opportunities, Orders

Wired lead and opportunity screens straight into Tata Power's Salesforce dealer endpoints, alongside a product catalog, order placement and sales-order tracking, so field data lands directly in the CRM system of record.

STEP 03

Assets, Inspections & Team

Added asset and installation registration with mobile_scanner QR/barcode capture, a criteria-and-components inspection workflow with document uploads, team member management, home-screen credit balance tracking, and push notifications.

03 / Features

Everything a channel partner needs in one app

01

OTP-based mobile login with a resend timer, separate Retailer and CP Employee registration paths, and a Channel Partner Number lookup for retailers joining an existing partner.

02

A guided KYC flow capturing Aadhaar, PAN and GST details with document upload and validation, plus a profile picture step and an explicit consent screen before account activation.

03

Lead and opportunity management, list, add, edit and detail, synced directly against Tata Power's Salesforce dealer endpoints so field data lands straight in the CRM.

04

Product catalog browsing with order placement and sales-order tracking, so partners can place and follow up on orders from the same app.

05

Asset and installation registration with mobile_scanner QR and barcode capture, paired with an inspection module covering request status, defined criteria/components checklists and supporting document uploads.

06

A home dashboard with real-time credit balance, team member management for channel partner staff, push notifications, and offline-state detection.

04 / Technologies

Flutter and GetX on top of a Salesforce CRM backend

Flutter
Dart
GetX
Dio
Salesforce
OAuth 2.0
Freezed
JSON Codegen
Scanner
Encrypted Prefs
Network
Image Cache

05 / Results & Impact

A production-scale integration into Tata Power's CRM

203
Dart files across a modular GetX feature architecture
37K+
Lines of Dart powering onboarding through inspections
32
Named routes spanning onboarding, CRM, orders, assets and inspections
20
Freezed + json_serializable models keeping Salesforce responses type-safe
Salesforce
Directly integrated with Tata Power's Apex REST CRM layer
iOS & Android
Single Flutter codebase for both channel partner platforms
Sandbox-validated
Built and tested against Tata Power's Salesforce sandbox ahead of partner rollout

Bringing our channel partners' leads, orders and installation tracking into one Salesforce-connected app gives our field teams a single place to work instead of piecing it together across calls and paperwork.

Channel Partner Program, Tata Power
Have something similar in mind?

Let's connect your field teams straight into your CRM.

Tell us the systems your teams already run on and we'll bring the Flutter engineering to wire your field workflows straight into them.

Start a project