Pour intégrer ABCinvoice.eu avec FileMaker, le plus simple est d’utiliser l’Add-on ABCinvoice.
Webinaire du 14/10/2025 : Apprendre à intégrer l'add-on FileMaker
Partie 1 – Configuration de l’Add-on
Notes sur cette documentation :
- On suppose que vous avez déjà une table factures (ci-dessous « Factures »), liée à une table lignes de factures (ci-dessous « Lignes »).
- Si vous gérez des échéances multiples dans une table à part, cette table sera surnommée ci-dessous « Echeances »
- Assurez-vous que votre version de FileMaker Pro est au minimum 21 (2024). Vous pouvez toujours télécharger la version la plus récente ici : pour macOS, pour Windows
- Téléchargez l’add-on. Passez une commande (c’est gratuit) sur le site de 1-more-thing, et cliquez sur le lien reçu par email pour installer l’add-on.
- Quittez et relancez FileMaker Pro
- Dupliquez votre solution afin d’en garder une sauvegarde (on ne sait jamais)
- Dans votre solution, naviguez jusqu’à un modèle de facture (votre formulaire ou vous éditez vos factures, pas un modèle d’impression).
- Passez en mode modèle
- Installez l’add-on (+ dans l’onglet Add-ons du volet de gauche). Sélectionnez l’add-on que vous venez de télécharger (« ABCinvoice »).
- Toujours en mode modèle, glissez l’add-on sur le modèle de facture.
- Problème connu potentiel (avec des fichiers assez anciens) : au moment de glisser l’add-on, si un message apparait indiquant que l’add-on ne peut être installé car aucune clef primaire n’est détectable.

Solution : ajoutez temporairement à votre table facture une rubrique définie par un numéro de série et une validation (critère de contrôle) « unique ». Validez et glissez à nouveau l’add-on. A l’étape suivante (graphique des liens), modifiez dans les liens créés la rubrique numéro de série par votre vraie clef primaire, puis supprimez cette rubrique temporaire. - Vérifiez dans le graphique des liens que les relations ont bien été créées entre votre table Factures et les tables ABCinvoice_Attachment et ABCinvoice_LegalLiteral. Si ça n’est pas le cas, créez ces relations manuellement entre votre table Factures et la table ABCinvoice_Attachment et ABCinvoice_LegalLiteral, en utilisant idInvoice comme clef étrangère. (lien de la clef primaire de votre table Factures vers ABCinvoice_Attachment::idInvoice).
- Dans les options des liens, désactivez création d’enregistrements liés dans ces deux tables depuis votre table factures (vous pouvez laisser la suppression, qui est logique)
- Configuration des champs (rubriques)
- Copiez tous les champs de la table ABCinvoice_invoiceExample dans votre table Factures
- Copiez le champ de la table ABCinvoice_invoiceLineExample dans votre table Lignes
- Échéances (si vous gérez les échéances multiples) : copiez le champ de la table ABCinvoice_InvoiceDueDateExample dans votre table Echeances
- Modifiez les champs de ABCinvoice_JSONrepresentation_{table} des tables Factures, Lignes, et, si vous gérez des échéances multiples, de la table Echeances.
- Notes sur la configuration des champs JSONrepresentation:
- Les dates sont passées en tant que nombres pour assurer la compatibilité entre tous les systèmes (client/serveur…). Par exemple le paramètre dateAsNumber de ABC_invoice_JSONrepresentation_invoice doit être passé comme :
ObtenirNombre ( Facture::dateDeFacture )
- Les dates sont passées en tant que nombres pour assurer la compatibilité entre tous les systèmes (client/serveur…). Par exemple le paramètre dateAsNumber de ABC_invoice_JSONrepresentation_invoice doit être passé comme :
- Les tableaux de données liées doivent être passés ainsi :
; [ "invoiceLinesAttributes" ; JSONMakeArray ( List ( Lignes:: ΩABCinvoiceJSONrepresentation_invoiceLine ) ; ¶ ; JSONObject ) ; JSONArray ]
- Les tableaux de données liées doivent être passés ainsi :
- Notes sur la configuration des champs JSONrepresentation:
- Pour la ou les date(s) d’échéance, vous pouvez :
- Si vous ne gérez pas les dates d’échéance multiples, utiliser le paramètre dueDateAsNumber
- Si vous les gérez dans une table séparée, utilisez le paramètre proposé dans l’exemple.
- Concernant l’identification du destinataire de la facture, un tableau des codes d’identification fiscale (TIN) est à votre disposition ici.
- Configurez le script ABCinvoice_Config
- Réglages
- Créez un compte sur ABCinvoice.eu et obtenez une clef d’API
- Depuis l’interface (l’add-on que vous avez glissé sur le modèle), renseignez la clef d’API ainsi que votre pays (le pays depuis lequel seront émises les factures). Mettez à jour la bibliothèque de mentions légales en cliquant sur Update legal literals.
- Supprimez les éléments non utilisés, qui ne sont là que pour vous aider à configurer
- Les tables comprenant le mot Example ainsi que leurs occurrences de table (ABCinvoice_InvoiceExample, ABCinvoice_InvoiceLineExample, ABCinvoice_DueDateExample)
Les mentions légales (Legal Literals)
Depuis les réglages, vous venez de télécharger une bibliothèques de mentions légales en fonction de votre pays dans la table ABCinvoice_LegalLiteralLibrary
Les mentions légales figureront sur les factures (en bas, dans la version lisible)
Depuis le popover Legal Literals, vous pouvez accéder à la bibliothèques de mentions et la modifier. Par exemple, dans certaines applications, certaines mentions sont totalement inutiles et vous pouvez les supprimer.
En Belgique, deux jeux de mentions sont téléchargés, en français et en néerlandais. Si vous êtes en Wallonie, vous pouvez supprimer les mentions en Néerlandais, et si vous êtes en Flandre vous pouvez supprimer les mentions en français. À Bruxelles vous pouvez avoir besoin des deux.
Les mentions peuvent être marquées comme obligatoires, ce qui est le cas de la mention des condition d’escompte (même s’il n’y a pas d’escompte).
D’autres peuvent être marquée « par défaut », ce qui signifie que ces mentions pourront être ajoutées à chaque facture lors de l’ouverture du popover Legal Literals.
Enfin, vous verrez que certaines mentions comportent le texte {}, qui peut être substitué par une valeur.
Pour ceci, vous pouvez soit modifier le texte par défaut de la mention légale (si vous n’accordez jamais d’escompte, vous pouvez simplement remplacer tout le texte par « Aucun escompte », soit modifier le calcul auto-entré de la rubrique ABCinvoice_LegalLiteral::text comme indiqué dans le commentaire de ce calcul.
Cela vous permet de remplacer la balise {} par l’information de votre choix en fonction du code de la mention.
Partie 2 – Adaptation de vos scripts
Attachements : tous les documents qui figurent dans la table ABCinvoice_Attachment seront uploadés avec votre facture. ATTENTION : une fois uploadée, une pièce jointe ne peut être supprimée ! Vous pouvez ajouter des pièces jointes tant que la facture n’est pas envoyée.- Ajout de pièces jointes.
- Un script ABCinvoice_sample_AddAttachment est fourni à titre d’exemple, mais gardez en tête qu’il vous suffit d’ajouter des documents liés à votre facture dans la table ABCinvoice_Attachment. Par exemple, si votre solution stockait déjà les PDF de vos factures, il vous suffit de modifier votre script original pour qu’il aille enregistrer le PDF dans cette table liée.
- Important : dans cette table Attachment, le champ isInvoice détermine si la pièce jointe représente la facture (le PDF de la facture). Si c’est le cas, définissez la valeur du champ à 1 (True). Si ça n’est pas le cas – par exemple pour ajouter les conditions générales ou un décompte client -, définissez la valeur du champ à 0 (False). L’interface proposée par l’Add-on permet aussi de cocher la case correspondante.
- Plusieurs scripts d’exemple sont fournis dans le dossier "ABCinvoice – integration example", par exemple le script ABCinvoice_sample_CreateInvoice, qui permet de créer une facture électronique. Ces scripts affichent des boîtes de dialogue en cas d’erreur. Il faudra les adapter afin qu’ils correspondent à votre flux de gestion des erreurs. IMPORTANT : avant d’adapter ces scripts et de les utiliser, il est recommandé de dupliquer ce dossier, afin de faciliter une éventuelle future mise à jour de l’Add-on.
- Ne modifiez pas les scripts présents dans le dossier "ABCinvoice (private)"
- L’Add-on est livré avec des listes de valeurs pour vous assister. Toutes ces listes sont préfixées par ABCinvoice.eu
Partie 3 – Réception de factures
- Si vous avez déjà une table de factures entrantes.
- Duplication et adaptation des scripts
- ABCinvoice_GetReceivedInvoices – Scheduled script
- ABCinvoice_GetReceivedInvoicesDetails
- ABCinvoice_Create_RINL (invoice)
- ABCinvoice_Create_RDUEDATES (invoice)
- ABCinvoice_Create_RTAX (invoice)
- Duplication et adaptation des scripts
- Si vous avez déjà une table de factures entrantes.
- Les modèles pour la liste des factures entrantes et l’affichage de leur détail se trouvent dans le dossier ReceivedInvoicesLayouts de l’add-on.
- Les scripts permettant de récupérer les factures entrantes sont également inclus et ne nécessitent pas de modification de votre part si vous n’avez pas de table factures entrantes.
- Si votre fichier FileMaker est hébergé sur FileMaker Server ou FileMaker Cloud, ouvrez la console d’administration de votre serveur et configurez un programme serveur pour exécuter le script ABCinvoice_GetReceivedInvoices – Scheduled script à intervalle régulier (par exemple une fois par jour). Ceci assurera la réception régulière des factures dans votre solution.