[object Object]

The Zoho CRM mobile app is generic by design. For field reps with a specific motion — route-based selling, in-store audits, on-site service — a custom mobile app on the SDK is often the right call. Three decisions drive the project.

Decision 1: Native or Cross-Platform

The SDK ships first-class for iOS (Swift) and Android (Kotlin). React Native and Flutter wrappers exist but lag the native SDK by 2-4 months on new features. If you’re building for one platform, go native. If you need both and your team isn’t large, accept the wrapper lag and use Flutter.

Decision 2: Online-First or Offline-First

Field reps without consistent connectivity need offline-first. The SDK supports it but you need to design for it:

Local store        - SQLite via the SDK's offline cache
Sync queue         - pending changes flush on reconnect
Conflict policy    - last-write-wins or rep-resolves

Conflict resolution is the hard part. Don’t ship until you’ve tested two reps editing the same record offline.

Decision 3: Read-Only Scopes Where Possible

Mobile apps lose devices. A device with read-write access to your full CRM is a security event waiting to happen. Default to read-only scopes; add write scopes only for the specific modules the app needs:

ZohoCRM.modules.visits.WRITE
ZohoCRM.modules.accounts.READ
ZohoCRM.modules.contacts.READ

Pair with mobile device management (MDM) so you can wipe selectively.

Performance: Cache the Picklists

Picklist values rarely change. Cache them on app start, not on every form open. A custom app that fetches picklists on every screen feels slow even on good network.

UX: One-Tap Logging

Field reps log activities while walking out of a meeting. Build the logging form so it takes one tap to start and submits with three fields max — Type, Outcome, Notes. Everything else (timestamp, GPS, account ID) auto-fills.

Push Notifications via Zoho Cliq

You can pipe notifications via Cliq webhooks instead of standalone push infrastructure. Less to operate, and reps already get Cliq messages.

Don’t Build What the Standard App Does Well

If your reps mostly need to view records and log calls, the standard mobile app plus Canvas is enough. Custom SDK apps make sense when:

  • You need offline mode.
  • You need a non-CRM-shaped workflow (route map, scan barcodes, capture signatures).
  • You need a rep-specific UI that hides 90% of CRM.

What to Do This Week

  1. Decide native vs cross-platform based on team and platform mix.
  2. Decide offline-first or online-first based on actual connectivity data.
  3. Scope OAuth scopes narrowly.
  4. Mock up the activity-logging screen with a one-tap goal.
[object Object]
Share