{
  "_schema": "v1",
  "_description": "Operator-curated catalogue of known recurring/intentional bank movements. Used by bank-match.sh to annotate the BANK-ONLY bucket so the operator can immediately tell 'needs Dolibarr entry' from 'documented intentional gap'. Edit this file as new recurring patterns emerge.",
  "_match_rules": "Pattern matched case-insensitively as a regex against the bank label. Optional filters: bank (qonto|wise), side (credit|debit), amount_min, amount_max, type (Wise activity type). All present filters must match.",
  "_classifications": {
    "capital_deposit":    "Apport en capital social. Dolibarr account 1013 (capital souscrit appelé versé).",
    "social_charges":     "URSSAF, retraite complémentaire, etc. Dolibarr account 645x.",
    "ai_subscription":    "Claude / Mistral / OpenAI / similar. Dolibarr account 6262 (frais télécom / abonnements logiciels).",
    "bank_fee":           "Plan bancaire, frais d'opération, refunds. Dolibarr account 627 (services bancaires).",
    "internal_topup":     "Solde Wise/Qonto rechargé pour couvrir un frais immédiat. Often nets out.",
    "personal_apport":    "Apport en compte courant d'associé (Gabriel finançant Arcodange depuis son perso). Dolibarr account 4551.",
    "needs_classification": "Pattern catched but no Dolibarr account assignment defined yet; surface for review."
  },
  "patterns": [
    {
      "pattern": "FOUREZ.*Quentin",
      "classification": "capital_deposit",
      "bank": "qonto",
      "side": "credit",
      "note": "Apport en capital social initial 1000 €. Maître FOUREZ Quentin, notaire centralisateur du dépôt. Date typique : 2026-01-21. Dolibarr: account 1013."
    },
    {
      "pattern": "URSSAF",
      "classification": "social_charges",
      "bank": "qonto",
      "side": "debit",
      "note": "Cotisations sociales URSSAF (régime mensuel/trimestriel). Dolibarr: account 645100 (charges de sécurité sociale)."
    },
    {
      "pattern": "MISTRAL\\.AI",
      "classification": "ai_subscription",
      "side": "debit",
      "note": "Mistral AI API subscription (Le Chat Pro - Annual). Récurrent annuel (invoice MSTRL-API-814045-001, 2026-04-02, 143.90 HT / 172.68 TTC). Next expected ~2027-04. Dolibarr: account 6262 + supplier 'Mistral AI'."
    },
    {
      "pattern": "CLAUDE\\.AI",
      "classification": "ai_subscription",
      "side": "debit",
      "note": "Claude AI subscription (Anthropic). Récurrent mensuel. April was on Qonto card; May/June on personal card (fk_account=3, API-invisible). See #57. Dolibarr: account 6262 + supplier 'Anthropic'."
    },
    {
      "pattern": "Wise.*Plan",
      "classification": "bank_fee",
      "side": "debit",
      "note": "Wise account plan billed via card. Wise's internal fee for keeping the BUSINESS profile active."
    },
    {
      "pattern": "qonto_fee",
      "classification": "bank_fee",
      "bank": "qonto",
      "note": "Qonto fees ou refunds. Petites valeurs. Dolibarr: account 627."
    },
    {
      "pattern": "BALANCE_DEPOSIT|For your account plan",
      "classification": "internal_topup",
      "bank": "wise",
      "note": "Solde Wise rechargé pour couvrir un frais immédiat (souvent net zéro avec le FEATURE_CHARGE du même jour)."
    }
  ]
}
