Le même CRM, dans votre poche — même sans réseau.
Une application native iOS et Android avec un cache local hors-ligne dès la conception, la numérisation de cartes de visite, une synchronisation différentielle, des notifications push et une connexion biométrique — un client de première classe de la même API /v1 et de la même connexion que l'application web, actuellement en bêta privée.
L'application mobile de GENECRM n'est pas une version allégée — elle est construite sur le même contrat backend que l'application web (l'API /v1, le même modèle de tenant et de RBAC) avec une couche de données locale et hors-ligne par-dessus. Contacts, prospects, opportunités, tâches et activités sont mis en cache sur l'appareil et maintenus synchronisés avec le serveur via un point de terminaison de synchronisation différentielle basé sur un curseur, si bien que l'application reste utilisable sur le terrain avec une connectivité faible ou nulle, et se remet à jour automatiquement dès qu'elle retrouve une connexion. Sur le terrain, vous pouvez aussi numériser une carte de visite avec l'appareil photo du téléphone : la reconnaissance de texte sur l'appareil lit le nom, l'entreprise, l'e-mail et le téléphone directement dans un nouveau contact que vous vérifiez avant d'enregistrer. L'application est en bêta privée, avant sa sortie sur l'App Store et Google Play — parlez-nous-en pour obtenir une version pour votre équipe. Le mobile est une fonctionnalité payante, incluse dans les plans Premium, Pro et Enterprise.
Cache local hors-ligne
L'application stocke les contacts, prospects, opportunités, tâches et activités dans une base de données sur l'appareil qui reflète les entités de synchronisation du serveur, de sorte que les listes, la recherche et le détail des enregistrements fonctionnent tous sans connexion réseau — les lectures ne dépendent jamais du serveur.
Synchronisation différentielle
Un point de terminaison unique (GET /v1/mobile/sync) renvoie tout ce qui a changé depuis un curseur opaque, par entité, cantonné au tenant par la sécurité au niveau ligne. Le curseur encode (updated_at, id), de sorte que la pagination reste stable même quand de nombreuses lignes partagent le même horodatage — aucun trou, aucun doublon.
- Omettez le curseur pour un rechargement complet à la première connexion ou lors d'une nouvelle installation
- has_more=true signifie que d'autres changements sont en attente ; le client répète la requête avec le nouveau curseur jusqu'à ce que ce soit false
- entities= permet au client de choisir lesquels des contacts/prospects/opportunités/tâches/activités synchroniser, et fields= réduit la projection aux seules colonnes dont il a besoin
- Jusqu'à 2 000 lignes modifiées par entité et par requête (500 par défaut)
Notifications push
L'application enregistre son jeton push APNs/FCM via POST /v1/devices (mis à jour par appareil, réattribué à l'utilisateur actuellement connecté) ; un worker push en arrière-plan distribue les notifications en attente à chaque appareil sur lequel un utilisateur est enregistré, en réessayant les envois échoués jusqu'à 5 fois avant d'abandonner.
Connexion biométrique
Après la connexion initiale par e-mail et mot de passe, l'application peut se déverrouiller avec Face ID / Touch ID (iOS) ou l'empreinte digitale/la reconnaissance faciale (Android) plutôt que de ressaisir un mot de passe, avec un repli sur le code de l'appareil lorsque la biométrie n'est pas disponible ou n'est pas configurée.
Même connexion, même backend, véritable sécurité de session
Le mobile s'authentifie sur les mêmes comptes tenant et utilisateur que l'application web via un point de terminaison de jeton de type password-grant, renvoyant un jeton d'accès de courte durée (15 minutes) et un jeton de rafraîchissement rotatif de 30 jours (seul son hachage est stocké côté serveur). Les jetons de rafraîchissement pivotent à chaque utilisation — réutiliser un jeton révoqué déclenche automatiquement un 401 — et la connexion est limitée à 20 tentatives par IP toutes les 5 minutes.
- Les commerciaux de terrain qui mettent à jour des opportunités et consignent des activités sans réseau fiable
- Les chargés de compte qui consultent un contact ou une tâche depuis leur téléphone entre deux rendez-vous
- Les équipes qui veulent des rappels push mobiles pour les tâches et les notifications du CRM
- Toute personne qui veut déverrouiller l'application avec Face ID plutôt que de taper un mot de passe à chaque fois
Application mobile — questions fréquentes
Oui — les contacts, prospects, opportunités, tâches et activités sont mis en cache sur l'appareil, donc la navigation et la recherche fonctionnent hors ligne. Les modifications se synchronisent automatiquement la prochaine fois que l'application retrouve une connexion.
Non — le mobile est une fonctionnalité payante incluse dans les plans Premium, Pro et Enterprise. Les tenants qui n’en bénéficient pas reçoivent une erreur 402 Payment Required lorsqu’ils tentent de se connecter depuis l’application.
Non — l'application utilise le même e-mail et le même mot de passe (et le même compte tenant/utilisateur) que l'application web. Elle obtient son propre jeton d'accès de courte durée et son propre jeton de rafraîchissement rotatif, de sorte qu'un téléphone perdu peut être révoqué sans affecter votre session web.
La première synchronisation est un rechargement complet de chaque enregistrement que la politique RLS du tenant autorise l'utilisateur à voir ; ensuite, seuls les changements depuis le dernier curseur de synchronisation sont récupérés, ce qui rend les synchronisations suivantes rapides et légères.
Oui — une fois qu'un appareil enregistre son jeton push, les notifications du CRM (nouveaux prospects assignés, rappels de tâches, etc.) sont livrées à chaque appareil sur lequel vous êtes connecté, via APNs (iOS) ou FCM (Android).