Réconciliation de deux exports comptables
Merge outer avec indicator entre l'export banque et l'export compta : écritures absentes de part et d'autre, écarts de montant au centime, et tableau des lignes à pointer.
Cas d'usage
Clôture mensuelle : sortir en une commande la liste exacte des écritures à justifier au lieu de pointer à la main.
Prérequis
Python 3.9+, pandas
Python
import pandas as pd
banque = pd.read_csv("banque_juin.csv") # ref, montant
compta = pd.read_csv("compta_juin.csv")
m = banque.merge(compta, on="ref", how="outer",
suffixes=("_bq", "_cp"), indicator=True)
absentes_cp = m[m["_merge"] == "left_only"]
absentes_bq = m[m["_merge"] == "right_only"]
communes = m[m["_merge"] == "both"]
ecarts = communes[(communes["montant_bq"] - communes["montant_cp"]).abs() > 0.01]
print("Réconciliation banque / comptabilité — juin")
print(f" écritures banque : {len(banque):>5}")
print(f" écritures compta : {len(compta):>5}")
print(f" absentes en compta : {len(absentes_cp):>5}")
print(f" absentes en banque : {len(absentes_bq):>5}")
print(f" écarts de montant : {len(ecarts):>5}")
print(ecarts[["ref", "montant_bq", "montant_cp"]].head(3).to_string(index=False))Résultat
Réconciliation banque / comptabilité — juin
écritures banque : 1482
écritures compta : 1479
absentes en compta : 8
absentes en banque : 5
écarts de montant : 3
ref montant_bq montant_cp
VIR-0841 1250.00 1205.00
CHQ-0112 890.50 980.50
PRL-2203 49.99 49.90ComptabilitémergeRéconciliationpandas