Vos devis vivent depuis des années dans un classeur Excel, ou votre ancien logiciel sait les exporter en tableur ? Les ressaisir un par un dans Meolya prendrait des soirées entières. L'import depuis un fichier les crée pour vous, en brouillon, clients compris.
Le principe tient en une phrase : une feuille par document, mise en page comme un vrai devis. Meolya ne cherche pas des cases à des positions fixes, il lit des libellés (Client, Adresse, Objet...) et le tableau des lignes. Vous pouvez donc garder votre propre présentation. Ce guide vous emmène du classeur vide jusqu'aux brouillons, puis sert de référence : chaque libellé, chaque règle de calcul et chaque message d'erreur y est décrit.
ℹ️
Ce qu'il vous fautLe droit de créer des documents dans Meolya (écriture sur les documents), vérifié à chaque étape. Un fichier de 5 Mo au plus, jusqu'à 500 documents et 1 000 lignes par document. Et quelques minutes pour lire l'analyse : rien n'est créé tant que vous n'avez pas confirmé.
Étape 1 : ouvrir l'import
Dans Facturation, ouvrez le menu Nouveau en haut à droite et choisissez Importer depuis un fichier. Le même choix existe au clic droit sur la liste, ou par un appui long sur un écran tactile. L'entrée n'apparaît que si vous pouvez créer des documents, et jamais dans les archives.

Nouveau devis, Nouvelle facture, et sous le séparateur : Importer depuis un fichier.
La fenêtre Importer des devis et factures rappelle les trois règles qui ne changent jamais : les documents sont créés en brouillon, les clients inconnus sont créés, et les dates du fichier sont ignorées, car un brouillon reçoit sa date à sa validation. Le bouton Analyser reste grisé tant qu'aucun fichier valable n'est choisi.

JSON, CSV ou Excel (.xlsx), 5 Mo et 500 documents au maximum. Le format est reconnu tout seul.
Étape 2 : une feuille par document
Meolya lit un classeur .xlsx (Excel 2007 et suivants, LibreOffice ou Google Sheets en Excel 2007-365). Les fichiers .xls, .xlsb et les classeurs avec macros .xlsm sont refusés : enregistrez une copie en .xlsx. Rien n'est jamais exécuté, ni macro, ni lien externe.
Une feuille est un document si son nom commence par Devis ou Facture, suivi de rien ou d'un séparateur : espace, tiret, souligné, point, deux-points. La casse et les accents ne comptent pas, et c'est le nom de la feuille qui donne le type du document.
| Nom de la feuille | Lu comme |
|---|
Devis, Devis - Roche, devis_roche, DEVIS.2026 | un devis |
Facture, Facture - Garnier, Facture.042 | une facture |
Factures, Mon devis, Feuil1, Catalogue | pas un document : feuille ignorée |
Les autres feuilles sont ignorées et listées dans l'analyse : gardez-y votre catalogue, vos calculs ou vos remarques. Attention seulement à leur taille, car le classeur entier compte dans les limites. Une feuille de document masquée est quand même importée, avec un avertissement : pour l'écarter, renommez-la, par exemple Brouillon - Devis Roche.
Le bloc d'en-tête : des libellés et leurs valeurs
Tout ce qui se trouve au-dessus du tableau des lignes est lu comme une suite de libellés. Un libellé est une cellule de texte courte dont le contenu, sans la casse, les accents, les espaces ni la ponctuation, est connu : Code postal, CODE POSTAL : et code-postal sont le même libellé. Les autres textes, comme un titre DEVIS ou le nom de votre entreprise, sont simplement ignorés.

Jusqu'à trois libellés par ligne. La valeur est la première cellule remplie à droite, sinon la cellule juste en dessous.
La valeur d'un libellé est la première cellule remplie à sa droite, sur la même ligne, en sautant sa propre cellule fusionnée. La recherche s'arrête au libellé suivant, ce qui permet de mettre Client | Agence Roche | SIRET | 1234... sur une seule ligne. À défaut, Meolya prend la cellule juste en dessous. Un même libellé peut revenir deux fois avec la même valeur ; avec deux valeurs différentes, c'est une erreur.
| Champ | Libellés acceptés |
|---|
| Référence (affichée dans l'analyse, non enregistrée) | Référence, Réf, Référence du document |
| Objet | Objet |
| Titre | Titre |
| TVA par défaut | TVA par défaut, Taux de TVA, TVA |
| Remise globale | Remise globale, Remise |
| Majoration globale | Majoration globale, Majoration, Supplément |
| Nom de la majoration globale | Nom de la majoration, Nom majoration, Libellé de la majoration |
| Autoliquidation | Autoliquidation |
| Devise | Devise, Monnaie |
| Note publique (imprimée) | Note, Note publique, Conditions |
| Note interne (jamais imprimée) | Note interne |
| Client : raison sociale ou nom | Client, Raison sociale, Société, Nom du client |
| Client : type | Type de client, Type client |
| Client : prénom, nom | Prénom, Nom |
| Client : personne 2 d'un couple | Prénom 2, Nom 2 |
| Client : forme juridique | Forme juridique |
| Client : SIRET | SIRET, SIREN |
| Client : numéro de TVA | N° TVA, Num TVA, Numéro TVA, Numéro de TVA, TVA intracommunautaire, TVA intracom |
| Client : identifiant fiscal | Identifiant fiscal |
| Client : e-mail, téléphone | E-mail, Email, Courriel, Mail ; Téléphone, Tél |
| Client : adresse | Adresse, Complément, Complément d'adresse, Code postal, CP, Ville, Pays |
| Adresse de facturation | Facturation adresse (ou Adresse de facturation), Facturation complément, Facturation code postal (ou Facturation CP), Facturation ville, Facturation pays |
| Livraison | Livraison nom, Livraison adresse (ou Adresse de livraison), Livraison complément, Livraison code postal (ou Livraison CP), Livraison ville, Livraison pays |
| Entreprise émettrice | Entreprise SIRET, SIRET entreprise, Émetteur SIRET ; Entreprise TVA, TVA entreprise, Émetteur TVA |
⚠️
TVA seul, c'est le tauxLe libellé TVA désigne le taux par défaut du document. Le numéro de TVA intracommunautaire du client se met sous N° TVA ou TVA intracommunautaire. Les libellés de date (Date, Date du devis, Échéance, Validité...) sont lus mais ignorés avec un avertissement. Les libellés N°, Numéro, Numéro de devis, Numéro de facture et Statut sont refusés dès qu'ils ont une valeur : laissez-les vides ou retirez-les.
Le tableau des lignes
L'en-tête du tableau est la première ligne qui contient à la fois une désignation, une quantité et un prix. Les autres colonnes sont facultatives, dans l'ordre que vous voulez.
| Colonne | Titres acceptés | Obligatoire |
|---|
| Désignation | Désignation, Libellé, Nom, Produit, Article, Intitulé, Prestation | oui |
| Quantité | Quantité, Qté, Qty, Qt | oui |
| Prix unitaire HT | Prix unitaire HT, PU HT, Prix HT, Prix, PU, Prix unitaire | oui |
| Code produit | Code, Référence, Réf, Code produit | non |
| Description | Description, Détail | non |
| Unité | Unité, Unit, U | non |
| Taux de TVA | TVA, Taux TVA, Taux de TVA | non |
| Remise, Majoration | Remise ; Majoration, Supplément | non |
| Nature | Type (Service ou Prestation, Forfait, sinon Produit ; Catégorie pour une section) | non |
| Total HT de la ligne (contrôle) | Total HT, Montant HT, Total | non |
- Les lignes se lisent juste sous l'en-tête. Une ligne vide est sautée, deux de suite terminent le tableau.
- Le tableau se termine aussi sur une ligne qui commence par Total, Total HT, Total TTC, Total TVA, Total net HT, Total général, Net à payer, Acompte(s), Échéancier ou Échéances. Une ligne Sous-total est sautée.
- Une catégorie est une ligne avec une désignation mais ni quantité ni prix, ou dont la colonne Type vaut Catégorie, Section, Titre ou Chapitre.
- Une ligne dont la première cellule remplie commence par
# est une note : elle est sautée et ne termine pas le tableau.

Deux catégories, trois produits, une remise et une majoration de ligne. Total HT ferme le tableau, Acomptes ouvre l'échéancier.
Totaux, acomptes et cellules particulières
Sous le tableau, Total HT, Total TTC et Net à payer sont lus comme un contrôle : ils sont comparés au calcul de Meolya et jamais repris. Le bloc des acomptes, réservé aux devis, commence par une ligne Acomptes (ou Acompte, Échéancier, Échéances), suivie d'un en-tête avec Pourcentage, Montant ou Valeur, et facultativement Échéance. Un acompte par ligne, jusqu'à la première ligne vide.
| Cellule | Lue comme |
|---|
| Texte | le texte, sans les espaces de début et de fin |
| Nombre | sa valeur exacte, quel que soit son affichage (décimales, symbole monétaire) |
| Nombre au format pourcentage | un pourcentage : 20 % vaut 20 |
| Nombre au format date | une date (ignorée, sauf l'échéance d'un acompte) |
| VRAI / FAUX | oui / non |
| Formule | sa dernière valeur enregistrée par Excel ; jamais recalculée |
| Cellule fusionnée | la valeur de sa cellule en haut à gauche, lue une seule fois |
| Texte qui commence par # | une note : lue comme vide |
| Erreur (#REF!, #DIV/0!, #N/A) | une erreur, si la cellule est lue |
⚠️
0,1 n'est pas 10 %Dans les colonnes Remise et Majoration (et les libellés Remise globale, Majoration globale), une cellule au format pourcentage ou un texte avec % est un pourcentage, mais un nombre simple est un montant en euros. 0,1 dans une cellule nombre vaut donc 0,10 euro. Dans la colonne Pourcentage des acomptes, 0,3 vaut 0,3 % : écrivez 30 ou appliquez le format pourcentage. Et gardez les codes postaux et SIRET en texte : une cellule nombre perd le zéro de tête.
Un classeur produit par un programme peut contenir des formules sans valeur enregistrée. Ouvrez-le dans Excel ou LibreOffice et enregistrez-le : les valeurs sont alors calculées et Meolya peut les lire.

La facture n'a pas d'acomptes. Le type de client Particulier demande un prénom, un nom et une adresse.
Étape 3 : analyser
Choisissez le fichier, puis cliquez sur Analyser. Meolya envoie le fichier, le lit en entier et vous montre l'Aperçu de l'import. À ce stade, rien n'existe encore dans votre Meolya.

Six tuiles pour vérifier d'un coup d'oeil, puis un document par ligne, avec son client et son statut.
- Documents, Lignes, Clients existants, Nouveaux clients, Total HT et Total TTC ne comptent que les documents qui seront importés. Les totaux sont ceux que Meolya a calculés, pas ceux du fichier.
- Chaque document porte son client avec la pastille Nouveau client ou Client existant : c'est le moment de vérifier qu'un client n'est pas créé en double.
- Le statut dit tout : Prêt, N avertissements (le document sera importé), ou N erreurs (il sera ignoré).
- Une ligne d'information rappelle si le fichier déclare l'entreprise émettrice, et si c'est bien la vôtre. Les feuilles qui ne sont pas des documents sont listées dans Feuilles ignorées.
Cliquez sur un document pour le déplier. Chaque remarque donne son emplacement : sa feuille et sa cellule, par exemple Feuille Devis - Roche, cellule A14. Vous savez exactement où corriger.

Un code absent du catalogue n'empêche rien : la ligne devient un produit propre au document.
Sur cette capture, les deux clients portent la pastille Client existant : ils avaient été créés par un import précédent, et Meolya les retrouve, l'entreprise par son SIRET, la particulière par son e-mail. Rien n'est créé en double.
Lire une erreur et la corriger
Un avertissement ne bloque jamais : la valeur concernée est ignorée ou corrigée, comme le message l'explique. Une erreur dans un document écarte ce document, et seulement lui : les autres sont importés. Une erreur de fichier (fichier illisible, trop gros, sans document) n'ouvre même pas l'aperçu : la fenêtre Fichier refusé liste les problèmes et vous propose de Choisir un autre fichier.

1 document sera importé, 1 ignoré. Chaque erreur dit quoi, et où.
Dans cet exemple, la seconde facture a une quantité de 0 et une TVA de 19,6 %, un taux qui n'existe plus : cellules B11 et E12 de la feuille Facture - Garnier 2. Remarquez aussi la pastille Client existant : un import précédent a créé Élodie Garnier, et le fichier la retrouve par son e-mail au lieu de la créer une seconde fois.
Corrigez le fichier, puis importez-le de nouveau : l'analyse ne crée rien, refaites-la autant que nécessaire.
Étape 4 : importer
Le bas de l'aperçu annonce le résultat, par exemple 2 documents seront importés ou 1 document sera importé, 1 ignoré. Cliquez sur Importer 2 documents. Les brouillons sont créés en arrière-plan : vous pouvez quitter la page, l'import continue et sa progression réapparaît à votre retour. Arrêter l'import garde les brouillons déjà créés, et Reprendre l'import crée les suivants.

Brouillons créés, documents ignorés, nouveaux clients. Ouvrir le premier vous emmène au premier brouillon.
Chaque document devient un brouillon sans numéro, exactement comme s'il avait été saisi dans l'éditeur : il s'ouvre, se modifie et s'imprime comme les autres. Le numéro définitif est attribué quand vous le validez, et sa date avec.

Catégories, codes et TVA sont en place. La colonne Impact montre ce que les remises et majorations changent sur chaque ligne, part globale comprise. Valider attribue le numéro.
Le code PARQ14 du fichier est gardé ; la ligne sans code a reçu un code généré, quatre lettres et huit chiffres. Les acomptes sont dans le panneau Acomptes, à gauche.
ℹ️
Un document qui échoue au dernier momentSi un client existant est supprimé entre l'analyse et l'import, ou si un document est refusé à la création, ce document est annulé, avec le client créé uniquement pour lui, et l'import continue. Il apparaît dans Documents non créés, avec sa raison. Une analyse reste valable 10 minutes : au-delà, importez le fichier de nouveau.
Les règles de lecture
Nombres. Une quantité, un prix ou un montant s'écrit à la française ou à l'anglaise, avec ou sans séparateur de milliers. Quand la virgule et le point sont tous deux présents, le dernier des deux est la décimale.
| Écrit | Lu |
|---|
1234.5 ou 1234,5 | 1 234,5 |
1 234,50, 1.234,50, 1,234.50 | 1 234,50 |
8,40 EUR, 8,40 euros | 8,40 |
1,234 | 1,234 (une seule virgule est la décimale) |
TVA. Les taux acceptés sont 20, 10, 5,5, 2,1 et 0, écrits 20, 20%, 20 %, 0,2 ou en cellule pourcentage. Tout autre taux, comme 19,6 ou 7, est une erreur. Sans TVA, une ligne prend le taux par défaut du document, et celui-ci vaut 20 s'il n'est pas donné.
| Valeur | Règle |
|---|
| Quantité | obligatoire, supérieure à 0, au plus 1 000 000 ; arrondie à 4 décimales (avertissement) |
| Prix unitaire HT | obligatoire (sauf produit du catalogue), de 0 à 10 milliards ; arrondi au centime (avertissement) |
| Remise en % | supérieure à 0, au plus 100 |
| Remise en montant | montant HT en euros, au plus le HT de la ligne (ou du document, pour une remise globale) |
| Majoration | comme une remise, mais un montant n'est pas plafonné par le HT |
| Nom de la majoration globale | 48 caractères au plus ; sans nom, elle s'imprime Majoration |
Comment Meolya calcule
Les totaux de votre fichier ne sont jamais repris : Meolya recalcule tout, et compare seulement ce que vous avez écrit, avec un avertissement si l'écart dépasse un centime.
- Un pourcentage, de remise ou de majoration, de ligne ou global, se calcule sur le HT brut de chaque ligne (quantité x prix unitaire). Les pourcentages ne se cumulent pas entre eux.
- Un montant global est réparti sur les lignes au prorata de leur HT brut.
- La TVA de chaque ligne s'applique à son HT après remises et majorations.
- HT net = HT brut - remises + majorations ; TTC = HT net + TVA.
- Le total d'une ligne (contrôle) est son HT brut, moins sa remise de ligne, plus sa majoration de ligne, sans sa part des remises et majorations globales.
| Devis D-2026-101 | Calcul | Montant |
|---|
| HT brut | 1 552,00 + 248,00 + 704,00 | 2 504,00 |
| Remise de ligne | 10 % des plinthes (248,00) | - 24,80 |
| Majoration de ligne | 15 % de la pose (704,00) | + 105,60 |
| Remise globale | 5 % du HT brut de chaque ligne | - 125,20 |
| Majoration globale | 35,00 réparti au prorata | + 35,00 |
| HT net | | 2 494,60 |
| TVA | 10 % de chaque ligne | 249,46 |
| TTC | | 2 744,06 |
| Acomptes | 30 % puis 70 % du TTC, arrondi reporté sur le dernier | 823,22 et 1 920,84 |
Clients, produits et acomptes
Retrouver un client. Meolya cherche parmi vos clients (pas vos partenaires), dans cet ordre, et s'arrête au premier critère qui trouve : le SIRET (ou le SIREN), le numéro de TVA, l'e-mail, puis le nom avec le code postal. Un client trouvé est utilisé tel quel, avec sa propre adresse : sa fiche n'est jamais modifiée. Si plusieurs clients répondent, le document est en erreur : ajoutez le SIRET ou l'e-mail.
Créer un client. Un client introuvable est créé à l'import, une seule fois même si plusieurs documents le visent. Il lui faut une adresse complète (adresse, code postal, ville ; France si le pays manque) et, selon son type :
| Type écrit | Client créé | Obligatoire en plus |
|---|
| particulier, personne, individu, personne physique | Particulier | prénom et nom |
| marie, maries, couple marie | Couple marié | prénom et nom de la personne 1 |
| pacse, pacses, couple pacse | Couple pacsé | prénom et nom de la personne 1 |
| structure, entreprise, societe, professionnel, pro, personne morale, association | Entreprise (France) | raison sociale et SIRET |
| international, etranger, entreprise etrangere | Entreprise étrangère | raison sociale, et un numéro de TVA si le pays est dans l'Union européenne |
Sans type, Meolya le déduit : une raison sociale donne une entreprise, un prénom et un nom un particulier. La ville ne contient que des lettres, espaces, points, apostrophes et tirets (Lyon, pas Lyon 3e). Le pays s'écrit en toutes lettres ou en code : FR, BE, LU, DE, CH, IT, ES, NL, PT, GB, IE, AT, PL, CA, US, MA, TN, DZ, MC, AD. Un e-mail invalide ou une forme juridique inconnue sont simplement ignorés, avec un avertissement.
Produits. Un code qui correspond à un produit de votre catalogue relie la ligne à ce produit (casse, espaces et ponctuation ignorés, produits archivés exclus) : ce que le fichier laisse vide est pris dans le catalogue. Sinon, la ligne reçoit un produit propre au document, qui n'entre pas dans le catalogue. Son code est gardé en majuscules sans ponctuation s'il compte de 3 à 12 caractères, sinon Meolya en génère un.
Acomptes. Réservés aux devis. Chacun est soit un pourcentage, soit un montant TTC, sans mélange dans un même devis. Les pourcentages totalisent 100, ou les montants le TTC à un centime près. Une échéance facultative s'écrit 16/11/2026 ou 2026-11-16, ou en cellule date, et les échéances ne reviennent pas en arrière.
⚠️
Ce que l'import ne reprend jamaisLes numéros, les statuts et les paiements sont refusés : un document importé est toujours un brouillon. Les dates du devis ou de la facture sont ignorées, avec un avertissement : seules les échéances d'acomptes sont lues. La devise est l'euro, uniquement. Pour l'historique de vos anciennes factures émises, gardez leurs PDF : les réimporter en brouillon créerait de nouvelles factures.
Entreprise émettrice. Le fichier peut déclarer le SIRET et le numéro de TVA de l'entreprise qui émet les documents, pour éviter d'importer dans la mauvaise entreprise. S'ils diffèrent des vôtres, les documents concernés sont écartés. N'ajoutez cette déclaration que si le fichier est fait pour une seule entreprise.
| Limite | Valeur |
|---|
| Taille du fichier | 5 Mo |
| Documents par fichier | 500 |
| Lignes par document (produits et catégories) | 1 000 |
| Lignes par fichier | 50 000 |
| Nouveaux clients par fichier | 500 |
| Acomptes par devis | 100 |
| Validité d'une analyse | 10 minutes, prolongée pendant l'import |
| Analyses | une à la fois par compte, 6 par minute et 60 par jour |
| Feuilles | 600, dont 500 documents |
| Par feuille de document | 5 000 lignes, 64 colonnes (A à BL), 20 000 cellules remplies |
Référence des messages
L'aperçu affiche des messages en français. Chacun correspond à un code stable, utile pour chercher dans ce guide ou pour expliquer le problème à quelqu'un, ou à une IA. Les mots en italique sont remplacés par la valeur réelle.
Erreurs de fichier : rien n'est importé, la fenêtre Fichier refusé s'ouvre.
| Message affiché | Code | Que faire |
|---|
| Aucune feuille dont le nom commence par Devis ou Facture. | file.no_sheet | Renommez les feuilles de documents : Devis ou Facture en tête. |
| Le fichier ne contient aucun document. | file.empty | Ajoutez au moins un document. |
| Trop de documents : nombre (maximum max). | file.too_many_docs | Coupez le fichier en plusieurs. |
| Trop de lignes dans le fichier : nombre (maximum max). | file.too_many_lines | Coupez le fichier en plusieurs. |
| Le fichier dépasse une limite : limite (maximum max). | file.limits | Coupez ou allégez le fichier. |
| Le contenu du fichier n'est pas dans un format accepté (attendu : attendu). | file.format | Enregistrez le fichier dans le bon format, en UTF-8. |
Erreurs d'un document : ce document est ignoré, les autres sont importés.
| Message affiché | Code | Que faire |
|---|
| Erreur Excel dans champ : valeur. | cell.error | Corrigez la formule en erreur dans la cellule indiquée. |
| Formule jamais calculée dans champ : ouvrez le classeur dans Excel puis enregistrez-le. | cell.formula_no_value | Ouvrez le classeur dans Excel ou LibreOffice et enregistrez-le. |
| Une cellule fusionnée chevauche l'en-tête du tableau des lignes. | cell.merged_conflict | Retirez la fusion verticale qui traverse l'en-tête du tableau. |
| Bloc Acomptes sans ligne d'en-tête (Pourcentage, Montant, Valeur ou Échéance). | acompte.header | Ajoutez sous Acomptes une ligne d'en-tête : Pourcentage, Montant, Valeur ou Échéance. |
| Champ en double : champ. | field.duplicate | Un libellé apparaît deux fois avec deux valeurs : gardez-en une. |
| Aucune ligne de produit. | doc.no_lines | Ajoutez au moins une ligne avec un nom, une quantité et un prix ; ou corrigez les lignes en erreur. |
| Trop de lignes dans ce document (maximum max). | doc.too_many_lines | Coupez le document en plusieurs. |
| Devise non acceptée : valeur. Seul l'euro est accepté. | doc.devise | Retirez la devise ou mettez EUR. |
| Champ non autorisé : champ. Le numéro, le statut et les paiements sont attribués par Meolya. | field.forbidden | Retirez ce champ : numéro, statut et paiements sont attribués par Meolya. |
| Texte trop long pour champ (maximum max caractères). | field.length | Raccourcissez le texte sous la limite indiquée. |
| Nombre invalide pour champ : valeur. | field.number | Écrivez un nombre, par exemple 1 234,50. |
| Valeur oui ou non invalide pour champ : valeur. | field.boolean | Écrivez oui ou non. |
| Taux de TVA non accepté : valeur. Taux possibles : 20, 10, 5,5, 2,1 ou 0. | tva.value | Utilisez 20, 10, 5,5, 2,1 ou 0. |
| Remise hors limites : valeur (maximum max). | remise.range | Une remise positive, au plus 100 %, ou au plus le HT. |
| Majoration hors limites : valeur (maximum max). | majoration.range | Une majoration positive, au plus 100 % en pourcentage. |
| Nom de ligne absent ou trop long (maximum max caractères). | line.name | Donnez un nom à la ligne, ou un code du catalogue. |
| Quantité absente ou hors limites : valeur (maximum max). | line.qty.range | Une quantité supérieure à 0. |
| Prix absent ou hors limites : valeur (maximum max). | line.price.range | Un prix HT de 0 ou plus. |
| Unité trop longue : valeur (maximum max caractères). | line.unit.length | Abrégez l'unité : h, ml, u, forfait. |
| Aucun client. | client.missing | Ajoutez le client du document. |
| Type de client inconnu : valeur. | client.type | Utilisez un type de la table des clients. |
| Plusieurs clients correspondent (nombre) : noms. | client.ambiguous | Ajoutez le SIRET ou un e-mail propre à ce client. |
| Nouveau client incomplet, champ manquant : champ. | client.incomplete | Complétez le champ indiqué. |
| Nouveau client : adresse incomplète ou refusée (champ). | client.address | Adresse, code postal et ville valides, et un pays connu. |
| SIRET ou SIREN du client invalide ou manquant : valeur. | client.siret | Un SIRET de 14 chiffres ou un SIREN de 9. |
| Numéro de TVA du client invalide ou manquant : valeur. | client.tva | Un numéro du type FR12987654321 ou BE0123456789. |
| Trop de nouveaux clients dans le fichier (maximum max). | client.too_many | Importez en plusieurs fichiers. |
| Adresse de adresse refusée (champ). | address.invalid | Complétez l'adresse de facturation ou de livraison. |
| Les acomptes ne sont acceptés que sur un devis. | acompte.facture | Retirez les acomptes, ou faites un devis. |
| Acompte invalide : valeur. | acompte.value | Une seule valeur positive par acompte. |
| Les acomptes mélangent pourcentages et montants. | acompte.mixed | Seulement des pourcentages, ou seulement des montants. |
| Les acomptes totalisent somme % au lieu de 100 %. | acompte.sum | Ajustez les pourcentages pour totaliser 100. |
| Les acomptes totalisent somme au lieu de attendu (total TTC). | acompte.sum | Ajustez les montants pour totaliser le TTC. |
| Échéance d'acompte illisible : valeur. | acompte.date | Écrivez JJ/MM/AAAA ou AAAA-MM-JJ. |
| Échéances d'acompte dans le désordre : valeur. | acompte.order | Classez les acomptes par date. |
| L'entreprise émettrice déclarée n'est pas la vôtre. | entreprise.mismatch | Importez dans la bonne entreprise, ou retirez la déclaration. |
| SIRET de l'entreprise émettrice invalide : valeur. | entreprise.siret | Un SIRET de 9 ou 14 chiffres. |
| Le document a été refusé : raison. | doc.refused | Vérifiez le client et les adresses du document. |
Avertissements : jamais bloquants.
| Message affiché | Code | Que faire |
|---|
| Feuille masquée : elle est quand même importée. | doc.hidden_sheet | Renommez la feuille pour l'écarter. |
| Le type indiqué (valeur) est ignoré : le nom de la feuille l'emporte. | doc.type_ignored | Le nom de la feuille donne le type : corrigez l'un ou l'autre. |
| Date ignorée (champ) : un brouillon reçoit sa date à sa validation. | field.date_ignored | Rien à faire : la date est attribuée à la validation. |
| champ du fichier (fichier) différent du total calculé (calcul) : le total calculé est retenu. | doc.total_mismatch | Vérifiez vos totaux ; le calcul de Meolya est gardé. |
| Total de ligne du fichier (fichier) différent du total calculé (calcul) : il est ignoré. | line.total_mismatch | Vérifiez le total de la ligne ; le calcul est gardé. |
| Quantité arrondie : valeur devient arrondi. | line.qty.rounded | Rien à faire, ou donnez 4 décimales au plus. |
| Prix arrondi : valeur devient arrondi. | line.price.rounded | Rien à faire, ou arrondissez au centime. |
| Code code absent du catalogue : la ligne devient un produit du document. | line.code.unknown | Normal pour un nouveau produit ; sinon corrigez le code. |
| Adresse e-mail invalide, ignorée : valeur. | client.email | Corrigez l'e-mail si vous voulez le garder. |
| Forme juridique inconnue, ignorée : valeur. | client.forme | SAS, SASU, SARL, EURL, SA, SNC, SCI, EI, Micro-entreprise... |
| L'adresse du client existant est incomplète et le fichier n'en fournit pas. | client.address_incomplete | Complétez l'adresse du client dans l'éditeur. |
| L'entreprise émettrice déclarée n'a pas pu être vérifiée : votre entreprise n'a ni SIRET ni numéro de TVA. | entreprise.room_unknown | Renseignez le SIRET et le numéro de TVA de votre entreprise. |
Échecs à la création : le document n'est pas créé, il apparaît dans Documents non créés.
| Message affiché | Code | Que faire |
|---|
| Le client a été supprimé entre-temps. | client.gone | Réimportez ce document. |
| Le nouveau client a été refusé. | client.refused | Vérifiez les données du client. |
| Des lignes auraient été perdues (nombre) : le document n'est pas créé. | line.dropped | Vérifiez les lignes du document et réimportez-le. |
| Les acomptes ne totalisent plus le total TTC une fois le document créé : il n'est pas créé. | acompte.sum | Ajustez les acomptes et réimportez le devis. |
| Erreur interne pendant la création de ce document. | internal | Réessayez ; si cela persiste, contactez-nous. |
Faire préparer ou corriger le fichier par une IA
Ce guide est écrit pour être lu aussi par un assistant IA. Donnez-lui l'adresse de cette page, votre fichier (ou l'export de votre ancien logiciel) et, s'il y en a, les messages de l'aperçu avec leur emplacement. Par exemple :
Voici mon classeur Excel d'import de devis et factures pour Meolya, et les messages de
l'aperçu de l'import avec leur emplacement. Corrige le fichier en suivant exactement
le guide https://meolya.com/guides/importer-ses-devis-et-factures-depuis-excel
Ne change ni les montants, ni les quantités, ni les clients, sauf si un message le demande.
Explique chaque correction, puis rends le fichier complet.
⚠️
Relisez avant d'importerUne IA peut se tromper de taux, de client ou de signe. L'analyse de Meolya reste votre filet : elle ne crée rien, recalcule tout et vous montre chaque client trouvé ou créé. Comparez les tuiles Total HT et Total TTC avec vos chiffres avant de cliquer sur Importer.
Questions fréquentes
Puis-je importer des factures déjà émises ?~Elles arrivent en brouillon et recevront un nouveau numéro à leur validation. Pour l'historique, gardez plutôt les PDF de vos anciennes factures.;;Mon client existe déjà, sera-t-il dupliqué ?~Non, s'il est retrouvé par son SIRET, son numéro de TVA, son e-mail ou son nom avec son code postal. La pastille Client existant le confirme dans l'aperçu.;;La fiche d'un client existant est-elle mise à jour ?~Jamais. Un client trouvé est utilisé tel quel. Modifiez sa fiche dans Clients et Partenaires si besoin.;;Pourquoi mes totaux sont-ils différents ?~Meolya recalcule tout. Un écart vient le plus souvent d'une remise globale calculée sur le net au lieu du HT brut, ou d'un arrondi. Le message donne les deux valeurs.;;Puis-je annuler un import ?~Les documents créés sont des brouillons : supprimez ceux que vous ne voulez pas garder. Les clients créés restent dans votre annuaire.;;Combien de fois puis-je analyser ?~Autant que nécessaire, dans la limite de 6 analyses par minute et 60 par jour. Rien n'est créé avant Importer.
Les bons réflexes
- Commencez petit. Un fichier de deux ou trois documents, analysé et importé, vous apprend plus vite que 500 documents d'un coup.
- Lisez les pastilles client. Un Nouveau client inattendu signale souvent un SIRET ou un e-mail mal écrit.
- Gardez les codes de votre catalogue. Une ligne reliée à un produit existant reprend son nom, son prix et sa description.
- Écrivez vos totaux. Ils ne sont jamais repris, mais ils détectent une erreur de saisie à l'analyse.
- Notez sans risque. Une cellule qui commence par # est une note : jamais importée, jamais signalée.
- Validez ensuite un par un. Relisez chaque brouillon dans l'éditeur, puis validez-le : il reçoit alors son numéro et sa date.
Reprenez vos documents en quelques minutes
Meolya importe vos devis et factures depuis Excel, CSV ou JSON, et recalcule tout pour vous.
Commencer gratuitement