Préparer mon fichier
Importer vos données de facturation dans Fincome commence par une étape essentielle : structurer correctement votre fichier d'import. Ce fichier Excel (.xlsx) ou Google Sheet permet d'intégrer vos clients, abonnements, factures, lignes de factures et avoirs selon le modèle Fincome. Une bonne préparation garantit la fiabilité de vos indicateurs (MRR, ARR, churn, revenue recognition…) et évite toute erreur à l'import.
Retrouvez les templates sur Fincome > Réglages > Connecter un nouveau système de facturation :
- Excel : vous trouverez un exemple et le template vide.
- Google Sheet : vous trouverez le template à compléter avant d'intégrer le lien.
1. Structure du fichier
Le fichier d'import est un tableau dans lequel chaque ligne représente une ligne de facture (un produit ou service facturé), c'est-à-dire un composant de la facture.
Il consolide 7 grandes catégories d'informations :
- Facture (Invoice)
- Avoir (Credit note)
- Ligne de facture (Line item)
- Abonnement (Subscription)
- Client (Customer)
- Plan (Price)
- Produit (Product)
Optionnel : autant de colonnes que nécessaire peuvent être ajoutées pour intégrer des données d'enrichissement (pas d'inquiétude, ces données peuvent aussi être ajoutées dans un second temps).
Une même facture peut comporter plusieurs lignes, et un même client peut apparaître plusieurs fois (sur différentes factures). Lorsqu'un même élément se répète, les attributs qui le décrivent doivent rester rigoureusement identiques sur toutes les lignes correspondantes. Par exemple, un même invoice_id doit toujours porter le même status, la même date et la même currency.
2. Format des dates
- Toutes les dates doivent être saisies au format Excel JJ/MM/AAAA (type Date).
- Les formats texte, ISO (ex.
2025-09-15) ou copiés depuis un CSV ne sont pas reconnus.
3. Colonne « type » (obligatoire)
Chaque ligne du fichier doit indiquer un type de donnée importée. Trois valeurs sont possibles.
subscription
Abonnement récurrent inclus dans le MRR/ARR. Les colonnes bleu foncé sont obligatoires. Les champs period_start et period_end doivent être renseignés, avec :
period_start<period_end(jamais identiques) ;- des périodes qui s'enchaînent pour un même abonnement (ex. du 01/01/25 au 01/02/25, puis du 01/02/25 au 01/03/25, et ainsi de suite).
one_off
Ligne de facturation ponctuelle (hors MRR). Même structure que subscription, mais sans period_start ni period_end.
future_sub
Abonnement futur non encore facturé (contrat signé avec démarrage différé). Seules les colonnes suivantes sont obligatoires : type, customer_id et les colonnes violet foncé du modèle.
Respectez bien l'un de ces trois termes dans la colonne « type » pour que le fichier soit exploitable.
4. Intégrer des avoirs (credit notes)
Pour ajouter un avoir dans Fincome, deux solutions sont possibles :
- Créer une ligne de facture négative, identique à celle(s) qu'elle vient annuler, mais avec un montant négatif.
- Créer une ligne dédiée dans le fichier, en renseignant :
invoice_idavec l'identifiant de la facture annulée,- un montant négatif dans
amount_excluding_tax_after_discount, - les colonnes bleu-vert (liées à la ligne annulée).
Fincome ajustera automatiquement vos indicateurs (MRR, ARR, revenue recognition, etc.).
5. Exemples concrets des lignes obligatoires
Exemple 1 — Abonnement mensuel
invoice_id | date | type | amount_excluding_tax_after_discount | description | period_start | period_end | customer_id |
|---|---|---|---|---|---|---|---|
INV-2025-002 | 01/02/2025 | subscription | 1500 | Sub X | 01/02/2025 | 01/03/2025 | CUST-002 |
Exemple 2 — Ligne one_off
invoice_id | date | type | amount_excluding_tax_after_discount | description | customer_id |
|---|---|---|---|---|---|
INV-2025-002 | 01/02/2025 | one_off | 1500 | Set up by X | CUST-002 |
Exemple 3 — Avoir
invoice_id | credit_note_id | credit_note_date | currency_code | amount_excluding_tax_after_discount |
|---|---|---|---|---|
INV-2025-001 | CN_1 | 17/08/2022 | EUR | -600 |
6. Axes d'analyse personnalisés (optionnel)
Vous pouvez enrichir vos données en ajoutant des colonnes supplémentaires : canal_acquisition, pays, segment_client, CSM, etc. Ces colonnes deviennent automatiquement des axes analytiques personnalisés, liés exclusivement au client, exploitables dans vos filtres et décompositions Fincome.
7. Valeurs autorisées
- Statut d'abonnement (
subscription_status) :active,paused,canceled - Statut de facture (
invoice_status) :open,pending,paid,unpaid
Toute autre valeur sera refusée à l'import.
8. Checklist avant import
- Fichier au format .xlsx
- Toutes les colonnes obligatoires complétées selon le type de ligne
- Identifiants (
customer_id,invoice_id,subscription_id) stables et cohérents - Dates Excel valides et ordonnées (
period_start<period_end) - Montants au format numérique, sans séparateurs de milliers
- Valeurs de statut et de devise conformes au modèle Fincome
FAQ — Préparation du fichier
Une facture peut-elle comporter plusieurs lignes ?
Oui. Un même invoice_id peut agréger plusieurs line items (ex. abonnement + frais de mise en service). Veillez simplement à ce que tous les champs décrivant la facture (status, date, currency) soient strictement identiques sur chaque ligne.
L'Invoice ID est-il obligatoire, même fictif ?
Oui. Le champ invoice_id est obligatoire pour que l'import aboutisse, même lorsque le numéro est fictif. Si vos lignes ne disposent pas d'un numéro de facture réel (par exemple pour un historique reconstitué), renseignez un identifiant fictif : l'import ne se fera pas tant que ce champ est vide.
Puis-je ajouter des colonnes supplémentaires ? Que deviennent-elles ?
Oui. Toute colonne supplémentaire est conservée et rattachée au profil du client, où elle devient un axe analytique personnalisé (voir la section « Axes d'analyse personnalisés »).
Les lignes « one_off » sont-elles prises en compte dans le MRR/ARR ?
Non. Seules les lignes type = "subscription" contribuent au MRR/ARR. Les one_off représentent des revenus ponctuels.
Comment modéliser un abonnement annuel ou trimestriel ?
Renseignez la période réelle de service : period_start = 01/01/2026 et period_end = 31/12/2026 pour un abonnement annuel, par exemple. Fincome s'appuie sur ces dates pour calculer les mouvements MRR/ARR et la reconnaissance du revenu.
Comment gérer une montée en gamme (« upsell ») ou une réduction (« downsell ») ?
Créez plusieurs lignes non chevauchantes pour le même customer_id : 01/01 → 15/03 pour l'ancien plan, puis 16/03 → 31/12 pour le nouveau. Fincome détecte automatiquement les variations (upsell/downsell).
Comment représenter une période d'essai (trial) ?
Utilisez type = "subscription", subscription_status = "trialing" et indiquez une période d'essai. Si l'essai est non facturé : amount_excluding_tax_after_discount = 0. Les essais gratuits peuvent être ignorés si vous ne souhaitez pas les tracer.
Comment gérer les avoirs / notes de crédit ?
Deux solutions : ajouter une ligne d'ajustement avec un montant négatif, associée au invoice_id d'origine ; ou créer une ligne credit note dédiée selon les consignes du modèle.
Quelles valeurs de statut utiliser ?
Facture (invoice_status) : open, paid, unpaid. Abonnement (subscription_status) : trialing, active, paused, canceled, unpaid. Toute autre valeur sera rejetée.
Quelles sont les bonnes pratiques pour les dates ?
Utilisez des dates Excel (JJ/MM/AAAA), pas du texte. period_end doit toujours être postérieur à period_start. Pour les one_off, vous pouvez omettre les dates ou utiliser la date de facture.
Comment gérer les montants HT, remises et TVA ?amount_excluding_tax_after_discount correspond au montant HT net de remise. Les taxes sont gérées séparément, et la revenue recognition s'occupe de leur ventilation comptable.
Notre facturation est multi-devises : comment procéder ?
Renseignez la colonne currency (code ISO : EUR, USD, GBP…). Fincome gère la consolidation multi-devises et l'impact FX.
Que faire si un client ou une facture apparaissent sur plusieurs lignes ?
C'est attendu, mais les champs du même objet (ex. status, currency) doivent être identiques. Tout écart sera signalé comme incohérence.
Que faire pour un import volumineux ?
Découpez en lots (par période ou entité) et commencez par un échantillon test de 5 à 10 k lignes.
Comment éviter les erreurs de séparateur décimal ?
Formatez vos montants en Nombre, pas en texte. Évitez les séparateurs de milliers, et vérifiez que la virgule/point correspond à votre format régional.
Ensuite
Mis à jour le : 23/07/2026
Merci !
