Sécurité et données
Cette page s’adresse à la personne qui doit donner son accord à inletAP — un contrôleur ou une contrôleuse, un ou une propriétaire, ou la personne de votre entreprise qui lit les questionnaires de sécurité. Elle décrit ce que le produit impose, ce qu’il conserve et ce qu’il n’a pas. Le résumé de niveau marketing se trouve à /security; cette page en est la version avec les réserves laissées en place.
Séparation entre les clients
Le cloisonnement par client est appliqué au niveau des requêtes. L’espace de travail est tiré de votre session, jamais d’un paramètre de la requête, et chaque lecture et chaque écriture y est liée avant d’atteindre la base de données.
La distinction compte plus qu’elle n’en a l’air. Un produit qui filtre par espace de travail dans l’interface n’est qu’à un filtre oublié de vous montrer les factures de quelqu’un d’autre. Un produit qui lie l’espace de travail sous l’interface ne peut tout simplement pas répondre à une question sur un autre espace de travail, quelle que soit la formulation de la requête. Un identifiant qui appartient à un autre client revient comme introuvable, ce qui est aussi la réponse honnête : du point de vue de votre session, il n’existe pas.
Séparation dans votre espace de travail
Les entités juridiques sont modélisées explicitement, et non approximées par une convention de nommage des immeubles. C’est ce qui garde les livres d’un ou d’une propriétaire séparés de ceux d’une coentreprise quand les deux passent par la même file des comptes fournisseurs et la même équipe. Une réserve à connaître avant de donner votre accord : créer et modifier des entités, et associer une entité à une entreprise dans le logiciel comptable, est aujourd’hui permis à tous les rôles internes, et non aux seules personnes ayant le rôle Administration. Les modifications sont consignées — chacune écrit une entrée dans la piste de vérification qui nomme la personne ainsi que l’entreprise du logiciel comptable avant et après — de sorte que le contrôle repose sur une trace plutôt que sur une autorisation.
Les rôles répartissent le travail plutôt que de classer les personnes, mais sachez bien ce qu’ils ne font pas : la modification d’une facture n’est limitée par aucun rôle, si bien que les rôles à eux seuls n’empêchent jamais la personne qui a corrigé un total de l’approuver. Le contrôle qui le fait est la séparation des tâches, un paramètre de l’espace de travail désactivé tant qu’une personne ayant le rôle Administration ne l’active pas dans Paramètres → Politique d’approbation. Quand il est activé, une personne qui a modifié une facture de façon importante — le montant, le sous-total, la taxe, la devise, la date de facture, la date d’échéance, le numéro de facture, le fournisseur, l’immeuble auquel elle est imputée ou sa répartition — ou qui a modifié un poste imprimé, ou qui l’a envoyée pour approbation, ne peut pas y consigner d’approbation. Quelqu’un d’autre doit le faire, et la règle s’applique aussi aux personnes ayant le rôle Administration. La décision se prend facture par facture, à partir de la piste de vérification au moment de l’approbation, et elle s’ajoute aux tranches de montant, qui exigent déjà autant de personnes distinctes. Consultez rôles et autorisations pour le tableau des droits, et paliers d’approbation pour les tranches de montant qui s’y superposent.
Quarantaine
La quarantaine est une mise en attente imposée par une politique. Une règle peut mettre un document en quarantaine — selon une adresse d’expéditeur non reconnue, un mot-clé, un fournisseur, un montant, l’immeuble ou l’adresse de courriel dédiée où il est arrivé — et le document s’arrête là au lieu d’entrer dans la chaîne d’imputation. Ces six éléments forment tout le vocabulaire des conditions; il n’existe aujourd’hui aucune condition sur le type de pièce jointe.
Ce n’est volontairement pas la même chose que filtered. Le filtrage est un jugement de routine selon lequel un courriel n’était pas une facture, et il s’annule en une seule action. La quarantaine est une exception que quelqu’un doit examiner. Confondre une infolettre avec une pièce jointe suspecte rendrait les deux plus difficiles à comprendre, et habituerait votre équipe à vider la file sans la lire.
Les documents en quarantaine sont visibles et faciles à trouver par recherche. Rien n’est écarté en silence, ce qui est le mode de défaillance qui coûte vraiment de l’argent dans les comptes fournisseurs : une facture qui disparaît est pire qu’une facture qui s’arrête à un endroit incommode.
Chiffrement et traitement des courriels
Les échanges sont chiffrés en transit, et les documents stockés ainsi que le contenu de la base de données sont chiffrés au repos avec les clés gérées du fournisseur infonuagique. Les identifiants des connecteurs reçoivent une deuxième couche : l’application les chiffre avant de les stocker, avec une clé que nous gardons séparément.
Le courriel entrant est reçu par notre propre infrastructure de courriel plutôt que par un relais tiers, de sorte que les messages bruts ne restent pas chez un intermédiaire avant que nous les stockions. Les identifiants des connecteurs comptables sont conservés sous forme chiffrée, ne sont jamais renvoyés par l’API et ne sont jamais écrits dans les journaux; déconnecter un connecteur révoque d’abord l’autorisation chez le fournisseur, puis efface les jetons stockés.
Conservation
| Données | Conservées pendant |
|---|---|
| Documents de facture, champs extraits, imputation et entrées de vérification | Tant que votre espace de travail est actif — ce sont vos pièces comptables |
| Objets bruts des courriels entrants | 90 jours. Votre paramètre accepte de 30 à 3 650 jours, mais le stockage supprime le message d’origine à 90 jours, peu importe votre réglage — voir plus bas |
| Une feuille de calcul téléversée pour une importation | Jusqu’à ce que cette importation soit confirmée ou abandonnée, et jamais plus de 7 jours |
| Journaux de l’application | 30 jours |
L’expiration à 90 jours des messages bruts mérite d’être bien comprise plutôt que survolée. Le document de facture, son texte extrait, ses champs et tout son historique de vérification sont conservés; ce qui expire, c’est l’enveloppe MIME d’origine dans le stockage d’objets. En pratique, vous pouvez toujours répondre à la question « qu’est-ce que cette facture indiquait et qui y a touché », mais après trois mois, vous ne pouvez plus télécharger de nouveau les octets exacts du courriel qui l’a apportée.
La feuille de calcul téléversée est la ligne qui mérite une phrase à elle seule. Une importation montre un aperçu avant d’écrire quoi que ce soit, et cet aperçu doit pouvoir être corrigé — vous changez laquelle de vos colonnes alimente lequel de nos champs, et l’aperçu est reconstruit — c’est pourquoi le fichier téléversé est conservé plutôt que demandé une deuxième fois. Ce sont vos données pendant qu’il est là : noms de fournisseurs, adresses et numéros de taxe. Il est effacé dès que l’importation est confirmée ou abandonnée, et un aperçu que personne ne termine ne le garde pas non plus : sept jours après le téléversement, l’aperçu expire et le fichier disparaît avec lui. Le nettoyage passe toutes les heures, donc les sept jours sont le pire cas et non le cas habituel. L’enregistrement de l’aperçu lui-même est conservé — quel fichier a été téléversé, quand, par qui, et ce que chaque ligne aurait fait — parce que c’est la réponse à « d’où viennent ces trois cents immeubles », et il ne contient rien que l’espace de travail ne contienne déjà. Consultez importer vos données.
Les 90 jours sont deux nombres qui se trouvent à concorder, et un seul des deux est à vous de changer. La période de conservation des courriels entrants bruts est un paramètre propre à chaque espace de travail, sous Données et confidentialité dans le menu de gauche : toute valeur de 30 à 3 650 jours, et 90 jours tant qu’une personne ayant le rôle Administration ne la change pas. Le cycle de vie du stockage d’objets n’est pas un paramètre, et il supprime le message d’origine à 90 jours, peu importe la période choisie. Raccourcir la période fonctionne donc exactement comme annoncé, et l’allonger conserve l’enregistrement plutôt que les octets — la réserve est imprimée à côté du réglage plutôt que cachée ici.
Récupérer vos données et supprimer l’espace de travail
Les deux se font en libre-service, dans tous les forfaits, y compris le forfait gratuit, et aucun ne demande de billet d’assistance.
L’archive de l’espace de travail. Une personne ayant le rôle Administration la demande sous Données et confidentialité dans le menu de gauche et reçoit un fichier ZIP qui contient, pour chaque table que nous conservons : data/<table>.ndjson et data/<table>.csv. Ils sont accompagnés des fichiers de facture d’origine, classés par fournisseur et par date, d’un MANIFEST.json, d’un README.txt et d’un COVERAGE.md. Le rapport de couverture est la partie à connaître : il compte ce qui a été inclus, nomme ce qui a été laissé de côté et pourquoi, et marque l’archive COMPLETE ou INCOMPLETE. S’il existe des enregistrements que personne n’a encore classés, il le dit et les retient plutôt que de deviner. La création est limitée à cinq archives par heure, et le lien de téléchargement reste actif pendant sept jours; vous pouvez en demander une autre quand vous voulez.
Votre propre copie, quel que soit votre rôle. Une demande d’accès aux renseignements personnels appartient à la personne, pas à l’espace de travail : chaque rôle peut donc demander sa propre archive à partir du même écran — y compris une personne externe qui approuve et qui ne voit qu’un seul immeuble. Aucune permission et aucun forfait ne la limitent.
Supprimer l’espace de travail. Une personne ayant le rôle Administration tape le nom de l’espace de travail pour confirmer — une case à cocher est trop facile à cocher sans lire quel espace de travail est à l’écran — et la suppression est alors planifiée avec un délai de grâce de sept jours, pendant lequel toute personne ayant le rôle Administration peut l’annuler. Elle est refusée avec une erreur de conflit tant qu’une archive est en cours de création, pour qu’une suppression ne puisse pas devancer la copie que vous avez demandée. Après le délai de grâce, les lignes, les fichiers stockés et les comptes de connexion disparaissent. Deux choses sont conservées et sont nommées à l’écran avant que vous confirmiez : les dossiers de facturation et les dossiers fiscaux de Stripe, pendant les six ans qu’exige la loi fiscale canadienne, et une trace que la suppression a eu lieu, pendant 24 mois, pour pouvoir le prouver à vous ou à un organisme de réglementation.
Si vous avez une obligation de conservation précise que la période ne couvre pas, dites-nous laquelle et nous vous confirmerons par écrit si nous pouvons la respecter.
Fiabilité, car c’est une question de sécurité déguisée
Une chaîne de traitement des comptes fournisseurs qui perd un document sans bruit est une défaillance de contrôle, pas une panne. Les garanties qui comptent ici :
- Une tâche qui échoue à répétition s’arrête et est consignée comme échouée avec son erreur, plutôt que d’être relancée sans fin ou abandonnée. Le document garde son état et reste visible dans la file où il était, de sorte qu’une facture bloquée peut être retrouvée au lieu d’être perdue.
- Les chaînes de traitement sont idempotentes : une tâche relancée ne peut pas produire un deuxième document ni une deuxième facture fournisseur.
- Une défaillance passagère à la réception du courriel renvoie une erreur temporaire pour que l’expéditeur réessaie, plutôt que d’accepter un courriel que nous ne pouvons pas traiter.
- Les éléments d’exportation consignent l’identifiant externe que le logiciel comptable leur a attribué, de sorte qu’une nouvelle tentative reconnaît la facture fournisseur qui existe déjà et la saute au lieu d’en comptabiliser une deuxième.
Ce qu’inletAP n’a pas
inletAP est un produit jeune et ne détient aucune certification de sécurité de tiers. Il n’existe aucun rapport SOC 2, et nous n’allons pas décrire notre situation comme « prêt pour SOC 2 », parce que cette expression ne veut rien dire et qu’elle est généralement employée par des gens qui le savent.
Ce qui manque aussi, et qu’il vaut mieux savoir avant d’acheter :
- Aucun moyen de paiement. inletAP produit des factures fournisseurs approuvées et imputées. L’argent circule par les mêmes moyens qu’aujourd’hui.
- Aucun connecteur natif vers un logiciel de gestion immobilière, et aucun pour AppFolio, Buildium, Yardi ou Rent Manager. L’exportation CSV est assez configurable pour être chargée dans n’importe lequel d’entre eux, mais vous définissez vous-même les colonnes — il n’existe aucun modèle prêt à l’emploi par destination.
- Aucune API publique, aucune clé d’API et aucun webhook sortant. Tout ce qui précède se fait dans l’application par une personne; rien ne peut être automatisé par script.
- Aucune exportation dédiée de la piste de vérification. La piste se trouve dans l’archive de l’espace de travail, et l’écran Journal d’activité exporte les lignes qu’il affiche, mais il n’existe aucune tâche côté serveur pour « exporter tout le journal ».
- Aucune authentification unique en libre-service. Il n’existe aucune fédération d’identité (OIDC ou autre protocole) que vous puissiez configurer vous-même, ni aucun écran pour le faire : avec les forfaits Pro et Enterprise, nous configurons l’authentification unique avec vous, à la main, pour chaque espace de travail. Si c’est une exigence d’approvisionnement assortie d’une date, posez-nous la question avant d’acheter plutôt qu’après.
Ce que nous ferons, c’est remplir honnêtement tout questionnaire de sécurité et vous dire quels contrôles sont en place et lesquels sont prévus, sans confondre les deux. Si un rapport d’audit est une exigence d’approvisionnement pour vous, c’est une vraie raison de ne pas acheter tout de suite, et nous préférons que vous l’appreniez sur cette page plutôt qu’à la troisième semaine.
Pour aller plus loin
- Piste de vérification — l’enregistrement en ajout seulement qui appuie la plupart des affirmations ci-dessus.
- Rôles et autorisations — le tableau des droits, et le paramètre de séparation des tâches que les rôles n’offrent pas à eux seuls.
- États des factures — où
quarantinedetfilteredse situent dans la chaîne de traitement. - Forfaits et limites — les volumes inclus, les documents en suspens et ce qui est compté.