Ce guide simplifie le processus de création d'un CRM personnalisé, en couvrant toutes les phases, de l'idée au lancement. Il propose des conseils pratiques, des bonnes pratiques et des erreurs courantes pour vous aider à créer un CRM adapté à votre entreprise. Il s'adresse aussi bien aux novices qu'aux développeurs expérimentés.
Pourquoi devrions-nous utiliser AppMaster pour notre CRM plutôt que d'autres produits ?
- Possibilité de personnalisation complète
- Aucune restriction d'échelle
- Création de tout en un seul endroit (base de données, backend, applications web et mobiles)
- Possibilité d'intégrer des services externes
Créez votre CRM personnalisé
Développez un système de gestion de la relation client (CRM) personnalisé en suivant les étapes recommandées ci-dessous.
Étape 1 : Conception du modèle de données
La procédure commence traditionnellement par la construction de modèles de données, ce qui nécessite une compréhension des entités à utiliser dans le système de gestion de la relation client (GRC), de leurs attributs respectifs et de leurs interrelations.
Ces modèles, également connus sous le nom d'entités, peuvent inclure de nombreuses possibilités telles que des entreprises, des contacts, des prospects et des tâches. Chaque modèle est défini par un ensemble unique de champs. Par exemple, un modèle d'entreprise peut comprendre des champs tels que le nom de l'entreprise, le type d'entreprise et l'emplacement, entre autres.
Chaque champ est caractérisé par un type spécifique, qui dicte la nature des données qu'il peut contenir. Par exemple, un type de données "Chaîne" convient à un champ de titre, qui peut contenir n'importe quelle chaîne de caractères. Un type de description "Texte" permet d'insérer un texte long, éventuellement segmenté en paragraphes. Un type "Integer" peut représenter le nombre d'employés, tandis qu'un type "DateTime" peut contenir des informations sur la date et l'heure d'événements spécifiques.
Les modèles ont la possibilité de former des associations entre eux, ce qui nécessite la sélection du type de relation. Par exemple, les employés peuvent être liés à des tâches spécifiques, ce qui nécessite de comprendre l'organisation des tâches.
Il se peut que chaque tâche soit assignée à un seul exécutant spécifique, alors que chaque employé peut avoir plusieurs tâches simultanées. Dans ce cas, une relation de type "un à plusieurs" serait établie entre eux. Parmi les autres types de relations possibles, citons les relations de type "un à un" et "plusieurs à plusieurs".
Pour des connaissances et une assistance plus approfondies concernant l'utilisation de l'éditeur de base de données, veuillez vous référer à la bibliothèque de cours de l'Université Appmaster.
Etape 2 : Mise en place de endpoints pour les modèles de données
L'étape suivante consiste à fournir des fonctionnalités pour ces modèles. Il est rationnel de supposer que la base de données doit être située à un endroit précis du serveur, les utilisateurs ayant la possibilité de s'y connecter depuis n'importe quel endroit à l'aide de leur PC ou de leur téléphone portable. Pour faciliter l'échange des demandes et la transmission des données, des routes sont déployées - il s'agit d'adresses de réseau vers lesquelles les demandes peuvent être envoyées.
En outre, il existe endpoints, qui sont des points d'accès à un itinéraire par une méthode spécifique. Par exemple, il est possible d'accéder à un itinéraire de tâche en soumettant l'identifiant de la tâche, mais en utilisant différentes méthodes (donc différentes endpoints) - Delete (pour supprimer la tâche), Get (pour obtenir des informations sur la tâche), Patch (pour apporter des modifications à la tâche, par exemple, pour changer son statut).
Chacun des modèles de données peut avoir une base endpoints créée automatiquement lors de son lancement. Ces endpoints peuvent être utilisés instantanément, ils peuvent être adaptés (par exemple en modifiant les droits d'accès pour permettre uniquement à certains rôles d'utilisateurs de créer de nouvelles tâches), ou des endpoints personnalisés avec leur logique de traitement associée peuvent être formulés. Vous trouverez un guide détaillé sur l'utilisation des points de terminaison en cliquant sur le lien suivant.
Étape 3 : Création de l'interface utilisateur
L'étape suivante consiste à créer une interface avec laquelle l'utilisateur peut interagir. Naturellement, étant donné l'existence de endpoints, on peut les utiliser immédiatement en envoyant les requêtes nécessaires. Cependant, les manipuler directement en mode ligne de commande tend à être incroyablement peu pratique.
Il est logique de développer une application web à des fins d'exploitation. AppMaster vous permet de prendre les rênes de la création de l'interface, en vous permettant d'intégrer des éléments essentiels tels que des boutons, des étiquettes et des tableaux, tout en personnalisant leur esthétique et leur emplacement.
Pour un rendu plus simple, démarrez le processus en incorporant des composants qui facilitent l'alimentation de la base de données avec des données pertinentes. Par exemple, la saisie d'une liste d'entreprises, d'employés et de leurs coordonnées.
N'oubliez pas que le simple fait d'introduire un élément ne le rend pas immédiatement utilisable. Chaque élément doit être doté d'une logique opérationnelle spécifique, stipulant sa fonction exacte et son mode d'exécution. Par exemple, pour enregistrer un enregistrement dans la base de données, il faut ajouter des composants d'entrée appropriés (qui correspondent aux types de champs du modèle de données).
Pour saisir les coordonnées d'un contact, il peut s'agir de champs pour le nom, le prénom, le numéro de téléphone, l'adresse électronique, la date de naissance, le poste occupé, entre autres. Un bouton qui compile les informations remplies et les transmet à la base de données est également nécessaire. Ce bouton doit être configuré avec une logique opérationnelle (processus d'affaires ou flux de travail) qui détaille les étapes nécessaires pour fonctionner de manière optimale.
Par exemple :
- Changer l'apparence du bouton pour qu'il soit à l'état de chargement
- Lire systématiquement les données saisies dans chaque champ.
- Formez un modèle de contact et complétez les données collectées à l'étape précédente.
- Envoyez le modèle complété avec une requête POST à l'adresse endpoint pour créer un nouveau contact.
- Supprimer l'état de téléchargement du bouton
- Traiter le résultat de la demande et obtenir l'état de son exécution.
- Vérifiez si la demande a abouti ou non.
- En cas d'erreur dans la demande, afficher une notification appropriée contenant des informations sur l'erreur.
- En cas d'actions réussies, mettre à jour les données dans le tableau récapitulatif des contacts.
Ressources supplémentaires :
- Description de l'ajout de données à la base de données
- Comment afficher les données de la base dans un tableau
- Comment modifier ou supprimer des données
Étape 4 : Créer des processus d'entreprise
Vous pouvez ensuite commencer à créer des processus de gestion plus complexes qui vous permettent de créer ou de recevoir certaines données et d'ajouter une logique de travail supplémentaire. Un exemple simple : lors de la création d'une tâche, indiquez automatiquement son statut, vérifiez le délai d'achèvement et calculez l'heure exacte à laquelle elle doit être effectuée.
Dans le même temps, la logique de travail peut être complexe et impliquer diverses options d'action en fonction de l'algorithme. Par exemple, lors de la création d'une tâche pour un utilisateur spécifique, il convient de vérifier s'il existe un droit à une telle action, de compter le nombre d'autres tâches déjà attribuées à cet utilisateur et, s'il y a plus de 10 tâches actives, de réattribuer automatiquement la tâche à l'employé le moins occupé dans un poste similaire au sein d'une entreprise. Guide sur la création de processus d'entreprise.
Étape 5 : Connexion et intégration avec des services externes
Il est très probable que la gestion de la relation client (GRC) ne puisse pas fonctionner de manière isolée ; elle nécessitera une interaction avec des services externes ou des fonctionnalités auxiliaires. La méthode la plus pratique pour intégrer ces éléments consiste à utiliser un marché de modules.
Prenons, par exemple, le scénario de la création d'une tâche qui nécessite l'envoi à l'utilisateur d'un courrier électronique contenant des informations pertinentes. Cette tâche peut être accomplie efficacement à l'aide du module SMTP (Simple Mail Transfer Protocol) personnalisé.
Il est également possible de transmettre un message par l'intermédiaire de la messagerie Telegram en utilisant le module Telegram. On peut également souhaiter rationaliser le travail sur les images en modifiant automatiquement leur format et leur taille à l'aide du module Image. Chaque module est capable d'augmenter ses modèles de données, ses processus opérationnels et ses blocs uniques afin de faciliter leur utilisation.
Veuillez consulter le lien suivant pour une démonstration de l'utilisation d'un module : Exemple d'utilisation d'un module
Il convient de noter que l'absence d'un module dédié à un service externe spécifique n'empêche pas son utilisation potentielle. La création d'une intégration avec n'importe quel service externe est possible via l'utilisation de sections dédiées aux requêtes API externes ou de blocs pour les requêtes HTTP.
Les liens ci-dessous illustrent le processus d'intégration avec des services externes et l'utilisation de la demande d'API externe :
Combien me coûtera la création et la possession d'un CRM sur AppMaster?
Généralement, une solution CRM complète nécessite un abonnement Business, tandis qu'une version plus simple peut suffire pour une Startup.
Si vous choisissez de vous charger vous-même du développement, cela peut se faire gratuitement. Vous pouvez également opter pour des services professionnels.
Combien de temps me faut-il pour développer un CRM à l'aide de AppMaster?
La réponse dépend de la complexité du CRM. Quelles sont les entités, combien sont-elles, comment sont-elles reliées entre elles et quel type de logique de travail est nécessaire. En général, quelque chose de simple au niveau MVP peut être réalisé en 20-30 heures. Pour une version de travail de base, il faut compter environ 200 heures. Pour les projets complexes, bien sûr, beaucoup plus de temps peut être nécessaire.
Quels sont les services capables de se connecter et de s'intégrer au CRM créé par AppMaster?
- Télégramme
- Slack
- Stripe
- SignIn avec Apple
- Zoom
- SignIn avec Google
- Crypto
- LinkedIn
- Facebook
- Feuilles Google
- Lecteur Youtube
- Lecteur de code-barres
- Google Translate
- Discord
- Google OAuth 2.0
- Open AI
- Mail Chimp
- et bien d'autres
Puis-je faire évoluer mon application CRM sur AppMaster
Il convient de noter d'emblée que l'application n'est pas initialement limitée en termes de nombre d'utilisateurs, même dans la version la plus basique. Ceci étant dit, vous pouvez, bien sûr, rencontrer des limitations de performance ou de taille de base de données dans vos options d'abonnement initiales. Ce problème est résolu par l'utilisation de vos propres serveurs au lieu de l'hébergement dans le nuage AppMaster.
Sur le plan Business, vous pouvez obtenir une image de conteneur avec l'application ou ses fichiers binaires, et sur le plan Enterprise, même le code source complet de l'application et la possibilité d'utiliser des serveurs distribués avec un équilibreur de charge, ce qui élimine complètement les questions concernant les limitations de mise à l'échelle.
Puis-je engager quelqu'un pour construire mon CRM ?
Pour une performance de qualité garantie, vous pouvez utiliser les services professionnels. Si vous avez besoin d'une option plus abordable, il est possible de faire appel aux services de freelances ou de contacter les partenaires certifiés d'AppMaster.
Comment AppMaster construit votre CRM techniquement
AppMaster AppMaster est un outil puissant qui simplifie et accélère le processus de création d'un CRM en gérant les aspects techniques d'une manière rationalisée. Le processus peut être décomposé en plusieurs étapes :
- Spécification: L'utilisateur fournit les spécifications du CRM en entrant des schémas de données, des schémas de processus métier, endpoints, des variables, des éléments d'interface utilisateur et des déclencheurs dans le studio AppMaster. Ces données servent de plans pour la future application CRM et sont stockées en tant que documentation.
- Génération de code: Après avoir cliqué sur le bouton "Publier", AppMaster traite et normalise les spécifications fournies. Il génère ensuite le code source de l'application CRM dans différents langages, tels que Go pour le backend, Vue 3 pour le frontend, Swift pour les applications iOS et Kotlin pour les applications Android. AppMaster utilise le traitement parallèle et des performances exceptionnelles pour générer du code à un rythme impressionnant de plus de 22 000 lignes par seconde.
- Compilation: Une fois la génération de code terminée, AppMaster compile l'application CRM, en se concentrant sur la compilation du backend et le regroupement des applications web. Cette étape ne prend que quelques secondes supplémentaires.
- Test: Avant le déploiement, AppMaster effectue une phase de test approfondie pour garantir la fonctionnalité de l'application CRM et identifier les problèmes potentiels.
- Emballage et stockage: Les applications dorsales sont emballées dans des conteneurs Docker pour l'isolation, puis téléchargées dans un registre Docker dédié au sein de la plateforme. Ces conteneurs sont stockés temporairement jusqu'au déploiement. De même, les paquets d'applications web sont compressés dans des archives zip et téléchargés dans un référentiel d'artefacts à des fins d'hébergement ou de déploiement.
- Déploiement: L'étape finale consiste à déployer le propre CRM sur les serveurs cibles, afin de le rendre accessible aux utilisateurs.
En tirant parti de la plateforme AppMaster, le processus de création d'applications est considérablement amélioré, réduisant le temps et les efforts requis par le codage manuel, la compilation, les tests, l'emballage et le déploiement. L'ensemble du processus peut être réalisé en 20 secondes seulement, ce qui contribue à une plus grande efficacité globale dans le développement de la CRM.