WooCommerce enregistre la vente sous forme de commande. Stripe règle l'argent sous forme de lot. C'est pourquoi la commande #1842 semble disparaître dès que vous ouvrez un journal de virements : la référence de commande appartient à la boutique, tandis que les lignes de virement s'organisent autour des charges, des remboursements, des frais et des identifiants de virement.
Le rapprochement devient fiable dès que vous cessez de chercher une colonne commune et que vous construisez le pont dans le bon ordre : référence de commande WooCommerce → identifiant de paiement Stripe → ligne de virement Stripe. Une fois ce pont établi, les écarts cessent de sembler aléatoires.
Pourquoi la référence de commande n'est pas là où vous l'attendez
La première erreur consiste à supposer que le numéro de commande WooCommerce devrait apparaître directement dans le récapitulatif du virement. Ce n'est pas le cas dans la plupart des situations. Le journal de virements n'est pas un grand livre de commandes. C'est un grand livre de règlement.
| Ce que vous voyez dans WooCommerce | Ce que vous voyez dans Stripe | Ce que représente réellement chaque champ | Pourquoi une correspondance directe échoue |
|---|---|---|---|
Commande #1842 | po_1Q8... | Une commande contre un lot de virement | Un seul virement peut regrouper plusieurs commandes |
ID de transaction ch_3Nk... | Source ID ch_3Nk... | Le même débit par carte | C'est généralement la vraie clé de pont, pas le numéro de commande |
Remboursement sur commande #1842 | re_1AB... | Une annulation ultérieure du paiement d'origine | Les lignes de remboursement ne reprennent pas le numéro de commande |
Date de paiement 2026-05-06 | Date de virement 2026-05-08 | Date de vente contre date de règlement | L'opération en banque a eu lieu plus tard |
Total de la commande 124.00 | Impact net 119.82 | Paiement brut du client contre montant net après frais | La ligne de virement est inférieure intentionnellement |
Ce tableau explique la majorité des rapprochements qui échouent.
La référence de commande WooCommerce vous indique quelle vente vous traitez. Le journal de virements Stripe vous indique comment l'argent a transité par Stripe jusqu'au virement. Ces deux niveaux sont liés, mais ils ne sont pas stockés au même endroit.
Ne faites pas correspondre la commande directement à l'identifiant de virement
L'identifiant de virement est trop en aval pour être votre première clé de correspondance.
Un seul virement peut regrouper :
- des dizaines de commandes WooCommerce
- un ou plusieurs remboursements de jours précédents
- des lignes de frais Stripe
- des lignes de litige ou de régularisation
- des transactions réglées ensemble alors que les commandes ont été créées à des dates différentes
L'identifiant de virement répond donc à une question bancaire : quel groupe d'activité Stripe est devenu un seul dépôt ? Il ne répond pas à la question au niveau de la commande : quelle commande WooCommerce a généré cette charge ?
Pour rapprocher les références WooCommerce de manière fiable, séparez l'export Stripe par type de ligne avant d'essayer de joindre quoi que ce soit :
| Type de ligne Stripe | Doit-elle être reliée à une commande WooCommerce ? | Comment l'utiliser |
|---|---|---|
charge | Oui | Rapprochez-la au paiement WooCommerce correspondant |
refund | Oui, mais indirectement | Rattachez-la à la commande d'origine comme remboursement ultérieur |
stripe_fee | Non | Utilisez-la pour expliquer l'écart brut-net |
dispute ou régularisation | Parfois | Traitez-la comme une exception ou une réduction en aval |
payout | Non | Utilisez-la uniquement pour le rapprochement au niveau du lot et de la banque |
C'est l'étape que la plupart des guides ignorent. Ils expliquent ce qu'est un virement Stripe, ou où vivent les identifiants Stripe dans WooCommerce, mais ils ne précisent jamais que certaines lignes de virement ne doivent tout simplement pas être reliées à une commande.
Construisez la table de liaison avant de rapprocher
Si vous essayez de résoudre ça dans un seul onglet de tableur, la logique devient vite confuse. Une table de liaison est plus propre.
Extrayez d'abord ces champs de WooCommerce :
| Champ WooCommerce | Pourquoi vous en avez besoin |
|---|---|
| Numéro ou nom de commande | La référence métier qui vous importe |
| Date et heure de paiement | Resserre la fenêtre de recherche dans Stripe |
| Total de la commande | Élément de confirmation utile, jamais la seule clé |
| Statut de remboursement | Explique les lignes négatives ultérieures |
| Mode de paiement | Confirme que la commande appartient à l'ensemble Stripe |
| ID de transaction si présent | Généralement le pont le plus solide vers Stripe |
| E-mail du client | Élément de confirmation en dernier recours |
Puis extrayez ces champs du détail des transactions ou du virement Stripe :
| Champ Stripe | Pourquoi vous en avez besoin |
|---|---|
| Payout ID | Indique à quel lot de règlement appartient la ligne |
| Type de transaction comptable | Sépare les charges, remboursements, frais et régularisations |
| Source ID | La référence au niveau de l'objet, comme ch_ ou re_ |
| Date de création | Indique quand l'événement Stripe sous-jacent s'est produit |
| Date de disponibilité ou de virement | Indique quand les fonds ont progressé vers le règlement |
| Brut, frais et net | Explique pourquoi le montant encaissé diffère du total de la commande |
| Devise | Détecte les fausses discordances dans les configurations multidevises |
| Champs description ou métadonnées | Utiles quand la référence de commande a été transmise |
Votre table de liaison de travail devrait ressembler à ceci :
| Référence commande Woo | ID transaction Woo | Source ID Stripe | Type de ligne Stripe | Payout ID | Statut |
|---|---|---|---|---|---|
#1842 | ch_3Nk... | ch_3Nk... | charge | po_1Q8... | Rapproché |
#1843 | ch_3Nl... | ch_3Nl... | charge | po_1Q8... | Rapproché |
#1842 | ch_3Nk... | re_1AB... | refund | po_1Q9... | Remboursé ultérieurement |
| — | — | fee_... ou ligne de frais | stripe_fee | po_1Q8... | Explication uniquement |
Cette table fait deux choses importantes. Elle prouve quel objet Stripe appartient à quelle commande WooCommerce. Elle indique aussi clairement quelles lignes Stripe ne sont pas censées pointer vers une référence de commande WooCommerce.
Comment retrouver l'identifiant Stripe quand WooCommerce ne l'exporte pas proprement
C'est ce point qui détermine généralement si le travail prend vingt minutes ou deux heures.
Si l'export WooCommerce inclut déjà l'identifiant de transaction Stripe, utilisez-le. C'est la voie la plus directe. Mais beaucoup d'exports ne l'exposent pas dans une colonne pratique — vous avez alors besoin de sources de secours.
Utilisez ces sources dans cet ordre :
| Source | Ce que vous pouvez récupérer | Fiabilité |
|---|---|---|
| Écran de détail de la commande | Identifiant de transaction ou de paiement lié à Stripe | Élevée |
| Notes de commande | IDs de charge, de remboursement ou de cycle de vie du paiement inscrits lors du traitement | Élevée quand présents |
| Journaux Stripe de WooCommerce | Numéro de commande à côté des valeurs ch_, pi_, cus_ ou src_ | Élevée |
| E-mail client + montant exact + fenêtre temporelle | Candidat probable à la charge Stripe | Moyenne |
| Total de la commande seul | Candidat possible uniquement | Faible |
Si les notes de commande sont vides, ne supposez pas que le paiement n'a jamais existé. La commande peut très bien être réelle même si les métadonnées renvoyées par Stripe sont incomplètes. C'est pourquoi les journaux comptent. En pratique, le journal vous donne souvent la paire clé dont vous avez besoin : le numéro de commande WooCommerce d'un côté, la charge ou le PaymentIntent Stripe de l'autre.
Une fois cet identifiant côté Stripe récupéré, le reste de la correspondance devient beaucoup plus stable. Recherchez la valeur ch_ ou pi_ dans l'export Stripe, confirmez le montant et la date, puis relevez le Payout ID attaché à cette ligne.
La procédure qui tient la route quand le virement contient du bruit
Voici la séquence qui évite la majorité des fausses discordances.
- Rapprochez d'abord le lot de virement à la banque. Le journal de virements appartient à un flux de règlement : confirmez quel virement a bien été crédité avant de commencer à retracer les commandes individuelles. Si ce niveau n'est pas encore clair, commencez par comment rapprocher un export CSV de virement Stripe avec votre relevé bancaire.
- Ouvrez les lignes Stripe à l'intérieur de ce seul virement. Séparez les lignes
charge,refund,stripe_feeet toute ligne de régularisation avant d'essayer de les joindre à WooCommerce. - Rapprochez les lignes
chargeà WooCommerce en utilisant l'identifiant de transaction Stripe ou le PaymentIntent. C'est le vrai pont commande-Stripe. - Rapprochez les lignes
refundà la commande WooCommerce d'origine comme remboursement ultérieur. Ne traitez pas les lignes de virement négatives comme des ventes manquantes. - Excluez les lignes de frais de la correspondance des commandes. Elles font partie de l'explication du virement, pas du pont de commande.
- Rédigez le résultat sous forme de classification, pas comme une longue liste non réconciliée.
Ce dernier point est important. Un rapprochement qui fonctionne ne doit pas se terminer avec quarante cellules rouges et une supposition. Il doit se terminer avec des catégories qui expliquent ce que signifie chaque écart.
Ce qui transforme une bonne correspondance en fausse erreur
Même avec la bonne clé de pont, certains schémas créent encore du bruit.
Le même montant apparaît plusieurs fois.
Deux commandes WooCommerce peuvent afficher toutes les deux 89.00. Si vous faites correspondre sur le montant seul, vous pouvez attacher la mauvaise charge Stripe à la mauvaise commande. N'utilisez le montant que comme élément de confirmation, jamais comme clé principale.
La date de commande et la date de virement appartiennent à des périodes différentes.
Les commandes passées en fin de soirée, les week-ends et les calendriers de virement décalent le règlement au lendemain ou même au mois suivant. C'est normal. La date de vente et la date bancaire répondent à des questions différentes.
Un remboursement arrive dans un virement différent de la commande d'origine.
C'est l'une des raisons les plus fréquentes pour lesquelles les opérateurs pensent que le pont est erroné. La charge d'origine a bien été rapprochée. Le refund ultérieur a réduit un lot de virement différent. Les deux lignes sont correctes, mais elles appartiennent à des moments différents du flux de trésorerie.
Les lignes de frais sont forcées dans la correspondance des commandes.
Les frais Stripe expliquent pourquoi le montant net encaissé est inférieur. Ils ne représentent pas des commandes WooCommerce séparées. Si vous les forcez dans la même recherche, vous créez de fausses exceptions de commandes manquantes.
Un export montre l'identifiant de charge et l'autre montre le PaymentIntent.
Ça reste gérable, mais ce n'est pas une correspondance textuelle directe. Vous devrez peut-être récupérer l'identifiant manquant dans les notes de commande ou les journaux avant que le pont soit fiable.
C'est le même ralentissement structurel décrit dans pourquoi le rapprochement des commandes Shopify avec les virements Stripe est lent. La boutique change. Le schéma de discordance reste le même : données au niveau de la commande d'un côté, données au niveau du règlement de l'autre.
Ce que doit montrer un rapprochement achevé
Un résultat utilisable prouve le chemin depuis la référence de commande jusqu'au paiement Stripe et jusqu'au lot de virement. Il ne s'arrête pas à « rapproché » ou « non rapproché ».
| Catégorie | Ce qu'elle signifie |
|---|---|
| Charge rapprochée | La commande WooCommerce et la charge Stripe concordent |
| Remboursé ultérieurement | La commande d'origine est rapprochée, le remboursement ultérieur a réduit un virement postérieur |
| Explication des frais | Le montant encaissé est inférieur parce que Stripe a déduit ses frais |
| Décalage temporel | La vente et le virement appartiennent à des dates ou périodes différentes |
| Régularisation ou litige | Le règlement a changé pour une raison extérieure à la ligne de commande d'origine |
| Non résolu | ID manquant, montant contradictoire ou éléments de preuve insuffisants |
Présenté ainsi, le prochain intervenant n'a pas besoin de rouvrir WooCommerce et Stripe depuis le début. Il peut suivre la chaîne :
- quelle référence de commande WooCommerce a été vérifiée
- quel objet Stripe a confirmé le paiement
- quel virement a absorbé ce paiement
- quelles lignes ont réduit le montant avant qu'il atteigne la banque
- quelles exceptions nécessitent encore une action
C'est le standard à viser. Pas un classeur qui s'équilibre ce mois-ci par hasard. Un chemin de correspondance que vous pouvez défendre le mois prochain.
Quand reconstruire le pont chaque mois ne vaut plus le coup
La méthode manuelle fonctionne quand le volume de virements est faible et que la structure des exports reste stable. Elle cesse de bien fonctionner quand chaque clôture répète les mêmes étapes de récupération :
- retrouver les identifiants Stripe manquants dans les exports de commandes
- chercher les valeurs
ch_oupi_dans les journaux - décomposer les lignes de virement en charges, remboursements et frais
- reconstruire la même table de liaison
- rédiger les mêmes explications de décalage temporel et de règlement net
À ce stade, le vrai travail n'est plus du jugement comptable. C'est de la traduction de fichiers.
La vraie solution n'est pas de trouver un RECHERCHEV plus intelligent. C'est d'accepter que les références de commande WooCommerce et les journaux de virements Stripe décrivent des niveaux différents du même flux monétaire, puis de relier ces niveaux dans le bon ordre.
