TutorielsConfigurer Firebase

Synchronisation

Configurer Firebase

Configurez Firebase pour synchroniser les données de Tilly entre plusieurs appareils tout en conservant le fonctionnement hors ligne.

Durée15 à 20 minNiveauDébutantFormatVidéo + guide écrit

Tutoriel vidéo

Suivez la configurationen vidéo.

Vous pouvez suivre la vidéo puis retrouver chaque étape détaillée juste en dessous.

Avant de commencer

Quelques motsavant de commencer.

Firebase est optionnel. Sans Firebase, Tilly continue de fonctionner avec sa base de données locale.

Firebase permet de partager les données de la caisse entre plusieurs appareils. Chaque association doit utiliser son propre projet Firebase.

L'activation nécessite deux éléments : la configuration du projet Firebase et un compte utilisateur autorisé à accéder aux données.

Guide écrit

Configurationétape par étape.

Suivez les étapes dans l'ordre. Vous pouvez revenir sur cette page à tout moment pendant votre configuration.

Étape 01

Accéder à Firebase et créer le projet

Firebase est un service de Google. Vous devez disposer d'un compte Google pour créer et administrer le projet Firebase de votre association.

  1. Ouvrez la console Firebase.
  2. Connectez-vous avec le compte Google qui servira à administrer Firebase pour votre association.
  3. Si vous ne possédez pas encore de compte Google, créez-en un puis revenez sur la console Firebase.
  4. Cliquez sur « Ajouter un projet ».
  5. Saisissez un nom, par exemple « caisse-mon-association ».
  6. Désactivez Google Analytics si votre association n'en a pas besoin.
  7. Terminez la création du projet.
À savoir

Nous vous conseillons d'utiliser un compte Google dédié à l'association plutôt qu'un compte personnel. Le nom visible du projet et son projectId peuvent être différents ; le projectId est généré par Firebase et ne peut plus être modifié après la création.

Étape 02

Activer Email / Mot de passe

  1. Dans Firebase, ouvrez « Sécurité > Authentication ».
  2. Cliquez sur « Commencer » si nécessaire.
  3. Ouvrez l'onglet « Méthodes de connexion ».
  4. Sélectionnez « Addresse E-mail/Mot de passe ».
  5. Activez Email/Password puis enregistrez.
Étape 03

Créer l'utilisateur Firebase utilisé par Tilly

Un seul compte utilisateur peut être partagé par les appareils autorisés de l'association.

  1. Ouvrez « Sécurité > Authentication > Utilisateurs ».
  2. Cliquez sur « Ajouter un utilisateur ».
  3. Saisissez l'adresse email utilisée par l'association.
  4. Choisissez un mot de passe robuste.
  5. Conservez ce mot de passe précieusement.
À savoir

Tous les appareils devant partager les mêmes données doivent utiliser ce même compte. Deux comptes Firebase différents disposent de deux espaces de données séparés.

Étape 04

Créer Cloud Firestore

  1. Ouvrez « Base de données & Stockage > Firestore ».
  2. Cliquez sur « Créer une base de données ».
  3. Choisissez l'édition standard.
  4. Choisissez l'emplacement voulu de la base de données. (peu importe la région, mais choisissez-en une proche de votre association pour de meilleures performances).
  5. Choisissez le mode production pour la base de données.
  6. Terminez la création.
Étape 05

Publier les règles Firestore

Les règles de sécurité empêchent un utilisateur non connecté d'accéder aux données et isolent les données de chaque compte.

  1. Dans Firestore Database, ouvrez l'onglet « Règles ».
  2. Remplacez le contenu de l'éditeur par les règles ci-dessous.
  3. Cliquez sur « Publier ».
  4. Attendez environ une minute avant le premier essai.
rules_version = '2';

service cloud.firestore {
  match /databases/{database}/documents {
    match /organizations/default/users/{userId}/snapshots/{snapshotId} {
      allow read, write: if request.auth != null
                         && request.auth.uid == userId
                         && snapshotId in ['caisse-main', 'caisse-dev'];
    }
  }
}
Attention

Copier ce bout de code sans le modifier est crucial. Toute modification peut rendre les données inaccessibles à Tilly.

Étape 06

Configurer Android

  1. Revenez à la vue d'ensemble du projet.
  2. Cliquez sur « Ajouter une application » puis sur Android.
  3. Saisissez exactement le nom du package « com.tilly.caisse ».
  4. Choisissez un surnom, par exemple « Caisse Android ».
  5. Laissez le certificat SHA vide.
  6. Cliquez sur « Enregistrer l'application ».
  7. Téléchargez « google-services.json ».
com.tilly.caisse
Étape 07

Configurer Windows

Firebase ne propose pas d'application Windows dans ce parcours. Tilly utilise donc la configuration d'une application Web.

  1. Revenez à la vue d'ensemble du projet.
  2. Cliquez sur « Ajouter une application » puis sur l'icône Web </>.
  3. Choisissez un surnom, par exemple « Caisse Windows ».
  4. N'activez pas Firebase Hosting.
  5. Cliquez sur « Enregistrer l'application ».
  6. Repérez le bloc firebaseConfig.
  7. Copiez le bloc firebaseConfig complet.
const firebaseConfig = {
  apiKey: "...",
  authDomain: "...",
  projectId: "...",
  storageBucket: "...",
  messagingSenderId: "...",
  appId: "..."
};
À savoir

Il n'est pas nécessaire d'exécuter les commandes npm proposées par Firebase.

Étape 08

Configurer macOS

  1. Revenez à la vue d'ensemble du projet.
  2. Cliquez sur « Ajouter une application » puis sur l'icône Apple.
  3. Saisissez exactement le bundle ID « com.tilly.caisse ».
  4. Choisissez un surnom, par exemple « Caisse macOS ».
  5. Enregistrez l'application.
  6. Téléchargez « GoogleService-Info.plist ».
  7. Ouvrez le fichier avec un éditeur de texte et copiez tout son contenu.
com.tilly.caisse
Étape 09

Activer Firebase dans Tilly

  1. Ouvrez « Config > Firebase » dans Tilly.
  2. Cliquez sur « Activer Firebase ».
  3. Cliquez sur « Coller » ou collez manuellement la configuration que vous avez copiée ou téléchargée.
  4. Saisissez l'email et le mot de passe créés dans Firebase Authentication.
  5. Cliquez sur « Activer ».
  6. Attendez que l'état indique « Synchronisation active ».
  7. Cliquez sur « Synchroniser ».
  • Android : utilisez le contenu complet de google-services.json.
  • Windows : utilisez le bloc firebaseConfig.
  • macOS : utilisez le contenu complet de GoogleService-Info.plist.
Étape 10

Vérifier la première synchronisation

  1. Cliquez sur « Synchroniser » dans Tilly.
  2. Vérifiez que Tilly indique « Données envoyées vers Firebase » ou « Données déjà synchronisées ».
  3. Ouvrez « Firestore Database > Data » dans Firebase.
  4. Vérifiez que le chemin ci-dessous existe.
organizations/default/users/{uid}/snapshots/caisse-main
À savoir

Les builds de développement utilisent caisse-dev afin de ne pas mélanger leurs données avec celles d'une version publiée.

Étape 11

Ajouter un deuxième appareil

  1. Installez Tilly sur le deuxième appareil.
  2. Récupérez la configuration Firebase correspondant à sa plateforme.
  3. Ouvrez « Config > Firebase > Activer Firebase ».
  4. Collez la configuration.
  5. Utilisez le même compte email et mot de passe.
  6. Cliquez sur « Synchroniser ».
  7. Si Firebase contient des données plus récentes, confirmez la restauration.
Attention

Ne modifiez pas les données sur deux appareils en même temps. Synchronisez avant de changer d'appareil, travaillez sur un seul appareil, puis synchronisez à nouveau avant de reprendre sur l'autre.

Étape 12

Résoudre les erreurs courantes

  • Configuration non reconnue : recopiez la configuration complète depuis Firebase.
  • Email ou mot de passe incorrect : vérifiez Authentication > Users et Sign-in method.
  • Accès Firestore refusé : vérifiez que les règles ont bien été publiées.
  • Aucune donnée sur le deuxième appareil : vérifiez que les deux appareils utilisent le même compte.
  • Mauvais projet Firebase : reconfigurez le projet depuis Config > Firebase.
Étape 13

Sécurité et sauvegardes

  • Conservez le mot de passe Firebase confidentiel.
  • Effectuez une sauvegarde avant une restauration importante.
  • Les paramètres Firebase ne sont pas inclus dans les sauvegardes.
  • Le secret HelloAsso n'est ni exporté dans les sauvegardes JSON ni synchronisé dans Firebase.

Configuration terminée

Tout estprêt.

Votre configuration est maintenant terminée. En cas de problème, vous pouvez consulter les étapes précédentes ou nous poser une question.