Stripe exporte payment_intent, charge_id, identifiants de virement, commissions et mouvements nets. FreshBooks exporte numéros de factures, noms de clients, dates de règlement, totaux et statuts. Ces deux fichiers peuvent décrire le même règlement client sans partager aucune colonne utilisable pour un rapprochement direct.

C'est là que le rapprochement bloque pour les consultants qui examinent le mois d'un client. Le client dit que FreshBooks affiche la facture comme payée. Stripe confirme que le paiement existe. Le relevé bancaire montre un virement net arrivé deux jours plus tard, pour un montant inférieur. Aucune de ces trois affirmations ne prouve que la facture a bien été rapprochée.

La réponse au niveau des fichiers, c'est de construire le lien vous-même : identifier l'enregistrement Stripe qui correspond au paiement, identifier la ligne FreshBooks qui correspond à la facture ou au règlement, décider si vous rapprochez le montant brut de la facture ou le virement net reçu en banque, puis produire une liste d'écarts qui documente chaque ligne non rapprochée.

Identifier le bon fichier Stripe

Les exports Stripe peuvent se ressembler à l'écran tout en répondant à des questions différentes. Un export de paiements, un export de transactions de solde, un rapport de virements et un export de commissions ne se rapprochent pas de FreshBooks de la même façon.

Fichier ou vue StripeCe qu'il contientFichier FreshBooks qu'il peut appuyer
Export paiements ou chargesPaiements clients individuels avant règlement du virementRèglements de factures ou lignes de factures payées
Export transactions de soldeMontant brut, commission, net, remboursements et ajustementsRèglements de factures et vérification des commissions ou ajustements
Rapport de rapprochement de virementsLe lot arrivé en banqueRapprochement bancaire ou de trésorerie, pas rapprochement de factures seul
Export commissionsLignes de frais de traitementComptabilisation des dépenses ou explication brut-net
Export remboursementsActivité de paiement négativeAvoirs, remboursements ou corrections de factures

Le mauvais export produit la mauvaise réponse. Comparer un total de virement Stripe aux totaux de factures FreshBooks donnera un résultat en dessous : les commissions, les remboursements et les délais de règlement s'intercalent entre la valeur de la facture et la trésorerie. Comparer un export de paiements Stripe au relevé bancaire donnera un résultat trop élevé : la banque reçoit le virement net, pas les lignes de paiement brut des clients.

Pour le rapprochement des factures FreshBooks, commencez par les enregistrements de paiements Stripe. N'introduisez les données de virements et de commissions qu'une fois le rapprochement au niveau facture établi.

Cette distinction compte quand l'infrastructure du client est hétérogène. Un client peut avoir une connexion Stripe fonctionnelle. Un autre exporte FreshBooks manuellement parce que l'intégration a cessé de synchroniser les références de paiement. Le consultant a quand même besoin d'une couche de vérification qui fonctionne à partir des fichiers bruts.

Lire l'export FreshBooks comme un fichier de facturation, pas de trésorerie

Les exports de factures FreshBooks sont construits autour des dossiers de facturation. Selon le rapport, le CSV peut afficher la date d'émission, la date d'échéance, la date de règlement, le nom du client, le numéro de facture, le statut, le total, le solde et les détails de paiement. Ces champs sont utiles, mais ils ne font pas du fichier un journal de trésorerie.

Commencez par séparer les lignes de facturation des lignes de règlement.

Champ FreshBooksComment l'utiliser dans le rapprochement
Numéro de factureRéférence FreshBooks la plus fiable quand les métadonnées Stripe la contiennent
Nom du clientVérification secondaire quand aucun numéro de facture commun n'existe
Date de facturationContexte de facturation uniquement ; pas la date de correspondance de trésorerie
Date de règlementDate utile pour rapprocher le timing du paiement Stripe
Total de la factureMontant brut attendu du client
Montant régléMontant à comparer avec la valeur du paiement Stripe
Solde restant dûIndique si la différence est un paiement partiel
StatutExclut les factures brouillon, impayées et annulées du rapprochement de trésorerie
DeviseObligatoire avant toute comparaison de montants

Ne comparez pas toutes les factures de l'export à Stripe. Filtrez sur les factures payées, partiellement payées ou concernées par la période examinée. Les factures impayées appartiennent aux créances clients. Elles n'ont pas leur place dans le rapprochement des paiements Stripe, sauf si la question est de savoir si FreshBooks a manqué un paiement.

Si l'export FreshBooks est également comparé aux mouvements bancaires, le processus adjacent est le rapprochement des exports de factures FreshBooks avec les relevés bancaires mensuels. Pour le rapprochement Stripe-FreshBooks, restez un niveau plus haut : règlement de facture contre paiement Stripe.

Construire la clé de correspondance à partir des données les plus fiables

La meilleure clé de correspondance est un numéro de facture stocké dans les métadonnées Stripe. C'est le cas quand le paiement a été créé depuis le flux de facturation ou quand le client a transmis le numéro de facture à Stripe dans la description, le statement descriptor ou un champ de métadonnées.

Quand elle existe, utilisez-la en premier.

Champ StripeChamp FreshBooksFiabilité de la correspondance
metadata.invoice_numberNuméro de factureForte
description contenant le numéro de factureNuméro de factureForte si le texte est cohérent
E-mail du clientE-mail ou contact clientUtile, insuffisant seul
Nom du clientNom du clientUtile, faible avec des clients récurrents
MontantMontant régléUtile, faible quand les montants se répètent
Date de créationDate de règlementUtile dans une fenêtre de dates
ID de paiement ou de chargeRéférence de paiementForte uniquement si FreshBooks la stocke

Si le numéro de facture est absent de Stripe, construisez une clé composite. Une clé composite combine des champs peu fiables seuls mais qui deviennent fiables ensemble.

Utilisez cet ordre de priorité :

  1. Numéro de facture ou référence de paiement, si présents.
  2. E-mail client + montant + fenêtre de dates.
  3. Nom du client + montant + fenêtre de dates.
  4. Montant + fenêtre de dates + fragment de description.
  5. Correspondance sur le montant seul, uniquement comme liste de candidats provisoire.

La correspondance sur le montant seul n'est pas un rapprochement terminé. Deux clients peuvent régler 1,500.00 dans la même semaine. Un même client peut payer deux factures du même montant. Une facture de conseil récurrente peut se répéter chaque mois. Le montant réduit le champ de recherche ; il ne prouve pas la correspondance.

La fenêtre de dates demande aussi de la rigueur. L'horodatage created de Stripe correspond au moment où l'événement de paiement s'est produit. La date de règlement dans FreshBooks peut être celle à laquelle la facture a été marquée payée. La date de virement en banque est postérieure. Traiter les trois comme la même date crée de faux écarts.

Pour le rapprochement des règlements de factures, accordez une petite fenêtre entre la date de création du paiement Stripe et la date de règlement FreshBooks. Pour le rapprochement virement-banque, utilisez la date du virement et la date de valeur bancaire. Ce sont deux tests différents.

Normaliser les champs avant tout rapprochement

La première passe doit rendre les deux fichiers comparables sans modifier les enregistrements sources.

Créez une copie de travail ou des colonnes d'aide pour :

Champ d'aideCe qu'il corrige
Numéro de facture normaliséSupprime les espaces, différences de casse, préfixes et ponctuation
Nom du client normaliséRéduit les différences d'orthographe et de casse
E-mail clientDonne un identifiant plus stable que le nom du client
Montant signéAligne les signes débit/crédit entre Stripe et FreshBooks
Base du montantDistingue paiement brut, commission, remboursement, paiement partiel ou virement net
Fenêtre de datesÉvite les faux écarts causés par des décalages d'un ou deux jours
DeviseBloque les correspondances accidentelles entre devises

Pour Numéro de facture normalisé, supprimez le préfixe afin que « INV-1048 » dans FreshBooks et « Invoice 1048 » dans une description Stripe se réduisent au même identifiant :

Formule
=SUPPRESPACE(SUBSTITUE(MAJUSCULE(A2),"INV-",""))

La colonne A contient le numéro de facture ou le champ description Stripe. Pour Montant signé, convertissez le texte et supprimez le signe :

Formule
=ABS(VALEUR(B2))

La colonne B contient le champ montant. VALEUR convertit les montants en texte ; ABS normalise le signe quand Stripe affiche des charges positives et FreshBooks peut afficher des crédits négatifs.

C'est là que la recherche classique dans un tableur échoue. Elle suppose que la clé de correspondance existe déjà. Dans ce processus, ce n'est généralement pas le cas. Le travail n'est pas « trouver la colonne commune ». C'est « accumuler assez d'indices pour prouver que deux lignes représentent le même règlement ».

Par exemple :

Champ StripeValeur
charge_idch_3R81K2
created2026-05-08 22:41:19 UTC
customer_emailops@exampleclient.com
descriptionPayment for Invoice 1048
amount2500.00
fee-76.50
net2423.50

FreshBooks peut afficher :

Champ FreshBooksValeur
invoice numberINV-1048
clientExample Client LLC
paid date2026-05-09
invoice total2500.00
paid amount2500.00
statusPaid

Ces lignes correspondent par numéro de facture et montant brut. Elles ne correspondent pas par date exacte, ni par montant net. Comparer le montant net Stripe au montant réglé FreshBooks crée un faux écart de 76.50. Cet écart, c'est la commission Stripe — pas un règlement de facture manquant.

Distinguer le rapprochement des factures du rapprochement des virements

Stripe ajoute une deuxième couche après le règlement de la facture : le virement. Le paiement peut parfaitement correspondre à la facture FreshBooks tandis que la trésorerie qui arrive en banque est inférieure ou décalée dans le temps.

Maintenez les couches séparées :

CoucheSource StripeSource FreshBooksRésultat attendu
Règlement de factureExport paiements ou chargesFactures payées ou enregistrements de règlementLe montant brut doit correspondre
Explication des commissionsExport transactions de solde ou commissionsVérification de la comptabilisation des dépensesLa commission doit expliquer l'écart brut-net
Remboursement ou avoirExport remboursements ou transaction de soldeAvoir, remboursement ou facture corrigéeL'activité négative doit être classifiée
Trésorerie du virementRapport de virementsRelevé bancaire ou compte de trésorerieLe virement net doit correspondre à la banque

Si un client a réglé une facture de 2,500.00 par carte, FreshBooks peut afficher une facture payée pour 2,500.00. Stripe peut afficher :

Catégorie StripeMontant
Paiement brut2,500.00
Commission Stripe-76.50
Net virement2,423.50

La facture FreshBooks n'est pas incorrecte. Le virement reçu en banque est net de commissions. C'est une question de rapprochement de virement ou bancaire. Le rapprochement de la facture, lui, est déjà résolu.

C'est la même séparation que dans le rapprochement d'un CSV de virement Stripe avec un relevé bancaire : commencez par confirmer le paiement ou le virement comparé, puis expliquez les transactions à l'intérieur du mouvement de trésorerie.

Traiter les écarts dans le bon ordre

Une fois les correspondances directes retirées, les lignes restantes doivent être étiquetées. Ne les laissez pas en « non rapproché ». Cela ne dit rien au client et ne vous donne aucune piste d'audit pour le mois suivant.

Utilisez cette séquence d'écarts :

Numéro de facture présent dans FreshBooks mais absent de Stripe.

Vérifiez si la facture a été réglée hors Stripe, marquée manuellement comme payée, réglée par virement bancaire, ou transférée depuis un autre processeur. Si le moyen de paiement n'était pas Stripe, retirez-la du rapprochement Stripe et classifiez-la séparément.

Paiement Stripe existant sans facture FreshBooks correspondante.

Vérifiez si le numéro de facture était absent des métadonnées, si le nom du client a changé, si le paiement correspondait à un acompte, ou si la facture a été créée après le paiement. Si aucun enregistrement FreshBooks n'existe, c'est un vrai écart comptable.

Même client et même montant, date hors fenêtre.

Vérifiez le décalage UTC, les modifications manuelles de date de règlement et les coupures de fin de mois. Un décalage d'un jour est généralement du timing. Un écart de deux semaines demande une explication.

Même facture, montant différent.

Cherchez un paiement partiel, un trop-perçu, une remise, un traitement fiscal, une conversion de devise ou une commission mal déduite. Ne forcez pas l'égalité entre le total de la facture et le montant réglé quand FreshBooks affiche encore un solde restant dû.

Remboursement présent dans Stripe mais FreshBooks affiche toujours la facture comme payée.

Vérifiez si un avoir ou un remboursement a été enregistré. Si ce n'est pas le cas, le rapprochement de la facture est incomplet : le paiement a été annulé ou réduit par la suite.

Candidats doublons persistants après rapprochement.

Utilisez d'abord le numéro de facture, puis l'e-mail, puis la description, puis la séquence de dates. Si deux lignes restent indistinctes, laissez-les ouvertes comme candidats doublons plutôt que d'en choisir une par intuition.

Le résultat doit informer le prochain réviseur de ce qui s'est passé :

StatutSignificationAction
RapprochéLe paiement Stripe et la facture FreshBooks concordent en référence et en montant brutAucune action
Décalage de dateMême règlement, date différente dans la fenêtre attendueNoter le décalage
Explication de commissionLe brut de la facture concorde, le net Stripe est inférieur en raison de la commissionComptabiliser ou vérifier le traitement de la commission
Paiement partielLe paiement Stripe ne couvre qu'une partie de la factureLaisser le solde ouvert
FreshBooks uniquementFacture payée sans paiement Stripe correspondantVérifier l'autre moyen de paiement ou la saisie manuelle
Stripe uniquementPaiement Stripe sans factureRetrouver la facture manquante ou classer le règlement
Remboursement manquantRemboursement Stripe sans avoir ou remboursement dans FreshBooksEnregistrer ou vérifier le remboursement

Un consultant n'a pas besoin d'un beau classeur à ce stade. Il lui faut une réponse défendable : quelles factures ont été rapprochées, quels paiements Stripe n'ont pas de facture, quelles factures payées FreshBooks n'ont pas transité par Stripe, et quels écarts relèvent du timing, des commissions, des remboursements ou des paiements partiels.

Exemple concret

Supposons que l'export de paiements Stripe affiche :

Paiement StripeE-mailDescriptionCréé leBrutCommissionNet
ch_1001ops@northco.testInvoice 10482026-05-082,500.00-76.502,423.50
ch_1002ap@northco.testInvoice 10512026-05-101,200.00-37.201,162.80
ch_1003finance@eastco.testDeposit2026-05-12800.00-25.10774.90
re_2001ops@northco.testRefund INV-10482026-05-20-500.000.00-500.00

FreshBooks affiche :

FactureClientDate de règlementMontant régléSoldeStatut
INV-1048North Co2026-05-092,500.000.00Paid
INV-1051North Co2026-05-101,200.000.00Paid
INV-1059East Co2026-05-121,600.00800.00Partly paid

Les correspondances sont :

Facture FreshBooksEnregistrement StripeRésultatMotif
INV-1048ch_1001RapprochéNuméro de facture, client et montant brut concordent
INV-1051ch_1002RapprochéNuméro de facture et montant brut concordent
INV-1059ch_1003Paiement partielLe paiement Stripe couvre 800.00 ; le solde FreshBooks reste 800.00
Remboursement INV-1048re_2001À vérifierStripe enregistre un remboursement ultérieur ; FreshBooks a besoin d'un avoir ou d'un remboursement correspondant

Les montants nets ne sont pas égaux aux montants des factures car des commissions Stripe sont présentes. Cela ne remet pas en cause le rapprochement des factures. Cela crée une deuxième tâche : vérifier que les commissions ont été comptabilisées et que le virement concorde ensuite avec la banque.

La note finale doit ressembler à ceci :

CatégorieNombreMontant
Factures payées rapprochées23,700.00
Paiements partiels rapprochés1800.00
Commissions Stripe à vérifier3-138.80
Remboursements nécessitant traitement FreshBooks1-500.00
Écart inexpliqué00.00

C'est un résultat de rapprochement utilisable. Il indique au client que les enregistrements de paiement correspondent aux factures, qu'une facture reste partiellement payée, que les commissions constituent une vérification de comptabilisation distincte, et qu'un remboursement nécessite un traitement dans FreshBooks.

Reproduire le même processus chaque mois

Le processus durable n'est pas lié à la mise en forme d'un export particulier. C'est une séquence :

  1. Identifier le type de fichier Stripe.
  2. Identifier si le fichier FreshBooks contient des factures, des règlements, ou les deux.
  3. Filtrer FreshBooks sur les enregistrements payés et partiellement payés.
  4. Normaliser les numéros de factures, noms de clients, e-mails, dates, devises et signes.
  5. Rapprocher d'abord par numéro de facture ou référence de paiement.
  6. Rapprocher ensuite par e-mail, montant et fenêtre de dates.
  7. Séparer le rapprochement brut des factures des commissions Stripe et de la trésorerie des virements.
  8. Étiqueter chaque écart par cause.
  9. Produire un résumé qu'un autre réviseur peut comprendre sans rouvrir les deux exports.

Voici comment les consultants indépendants rapprochent les paiements Stripe et les factures FreshBooks sans dépendre de la bonne configuration de l'intégration client. Le client peut modifier les colonnes de son export. FreshBooks peut omettre l'identifiant Stripe. Stripe peut virer le règlement deux jours plus tard. Le processus tient quand même parce qu'il teste l'événement métier, pas une correspondance fragile sur une seule colonne.