Documentation9 min de lecture

account_payment_order : ordres de paiement groupés et fichiers bancaires

Relevé sur une instance Odoo 18 Community, le module OCA `account_payment_order` (dépôt `bank-payment`, version 18.0.1.2.8, licence AGPL-3) ajoute 3 modèles, 133 champs et 24 vues : il regroupe plusieurs factures en un ordre de paiement unique, avec un workflow en quatre états jusqu'au fichier remis à la banque. Ce qu'il fait, ce qu'il ne fait pas seul, et le piège du lettrage à l'étape finale.

Factures fournisseurs et ordre de paiement sur un bureau

Payer ses fournisseurs un par un depuis Odoo est possible et pénible. account_payment_order introduit la notion d'ordre de paiement : on regroupe les factures échues dans un lot, on le confirme, on génère un fichier, on le remet à la banque, et le lettrage se fait tout seul.

C'est le module central du dépôt bank-payment : la quasi-totalité des autres modules du dépôt — formats bancaires, notifications, retours de paiement, validation hiérarchique — s'appuient sur les modèles account.payment.order et account.payment.line qu'il définit.

Résumé

Le module transforme le paiement des fournisseurs en un lot que l'on constitue, confirme, génère et remet à la banque — avec un lettrage automatique des factures à la dernière étape.

Deux limites structurelles à connaître avant d'installer : il ne produit aucun fichier bancaire seul (le format SEPA vient d'un autre module du dépôt), et l'état final « File Uploaded » est un geste humain que personne ne fait si on ne l'a attribué à personne.

L'essentiel

  • Deux sens : ordres de paiement (fournisseurs) et ordres de prélèvement (clients).
  • Workflow en quatre états : Draft → Confirmed → File Generated → File Uploaded.
  • Le lettrage est automatique à la dernière étape : les paiements sont comptabilisés et rapprochés des écritures d'origine.
  • Assistant de sélection multi-critères des écritures à payer, avec valeurs par défaut par mode de paiement.
  • Le fichier bancaire dépend d'un autre module : ce socle ne produit pas de SEPA à lui seul.
  • 1 groupe de droits créé : « Accounting / Payments ».

Ce que le module ajoute à l'instance

ÉlémentNombre
Modèles créés3
Modèles étendus9
Champs ajoutés133
Menus2
Vues24
Actions de fenêtre5
Groupes de droits1

Le module définit deux objets centraux, qu'il faut distinguer pour comprendre les écrans :

ObjetCe qu'il est
account.payment.orderL'ordre lui-même : un lot de transactions, avec son workflow à états
account.payment.lineUne ligne de l'ordre, reliée en général à une écriture comptable ouverte

Les neuf modèles touchés incluent account.move, account.move.line, account.payment, account.payment.method, account.payment.mode et res.bank. L'extension du mode de paiement est celle qui compte au paramétrage : c'est elle qui rend un mode sélectionnable dans un ordre et qui porte les valeurs par défaut de sélection des écritures.

Onglet Transactions d'un ordre de paiement : une ligne par facture retenue, avec son partenaire, son montant et sa date d'échéance
Onglet Transactions d'un ordre de paiement : une ligne par facture retenue, avec son partenaire, son montant et sa date d'échéance

Où le trouver dans Odoo

MenuCe qu'on y fait
Facturation ▸ Fournisseurs ▸ Ordre de paiementsLes ordres de paiement sortants
Facturation ▸ Clients ▸ Ordres de prélèvementLes ordres de prélèvement entrants

Deux points d'entrée supplémentaires, directement sur les pièces : sur une facture fournisseur comptabilisée, le bouton Add to Payment Order ; sur une facture client, Add to Debit Order. Dans les deux cas, Odoo ajoute la pièce à un ordre brouillon existant pour ce mode de paiement, ou en crée un automatiquement.

Le réglage du module se fait ailleurs : Facturation ▸ Configuration ▸ Modes de paiement, où chaque mode doit être explicitement rendu sélectionnable dans les ordres de paiement.

Cas d'usage

Créer un ordre de paiement fournisseur depuis les écritures

Le cas du paiement hebdomadaire ou mensuel des fournisseurs échus.

  1. Facturation ▸ Fournisseurs ▸ Ordre de paiements, puis Nouveau — le formulaire s'ouvre à l'état Draft.
  2. Renseigner Payment Mode, puis Bank Journal (proposé automatiquement s'il n'y a qu'un seul possible).
  3. Cliquer sur Create Payment Lines from Journal Items.
  4. Dans l'assistant : ajuster Type of Date Filter, Due on, Filter Date, et au besoin Journals Filter et Partners, puis Add All Move Lines.
  5. Retirer les lignes non voulues dans Selected Move Lines to Create Transactions, puis Create Transactions.
  6. Vérifier les lignes dans l'onglet Transactions.
  7. Confirm Payments : l'état passe à Confirmed et les paiements (account.payment) sont générés.
  8. Generate Payment File : l'état passe à File Generated, et un fichier téléchargeable est produit si la méthode de paiement sait le faire.
  9. Une fois le virement effectivement remis à la banque : File Successfully Uploaded. Les paiements sont comptabilisés et lettrés avec les écritures d'origine, l'état passe à File Uploaded.

L'étape 9 est celle qui donne sa valeur au module, et celle qu'on oublie de cliquer. Tant que l'ordre reste à File Generated, les factures restent ouvertes dans vos comptes alors que l'argent est parti : vos encours fournisseurs et votre trésorerie prévisionnelle sont faux.

Ajouter une facture à un ordre, à la volée

Le cas de la facture urgente qui arrive après la constitution du lot.

  1. Ouvrir la facture fournisseur comptabilisée.
  2. Cliquer sur Add to Payment Order en haut du formulaire.
  3. Dans l'assistant, cliquer sur Create : Odoo l'ajoute à un ordre brouillon existant pour ce mode de paiement, ou en crée un nouveau.
  4. Un message apparaît dans le chatter de la facture ; le bouton statistique Payment Lines permet de vérifier la ligne créée.
  5. Poursuivre le traitement de l'ordre à partir de l'étape 7 du cas précédent.

Créer un ordre de prélèvement client

Le mécanisme est symétrique, et c'est le socle des prélèvements SEPA : Facturation ▸ Clients ▸ Ordres de prélèvement, puis la même séquence. Sur le mode de paiement, l'option Disallow Debit Before Maturity Date empêche de prélever avant l'échéance — un garde-fou qui évite des rejets et des conversations désagréables.

Configuration

  1. Installer le module (dépend de account_payment_partner et base_iban).
  2. Attribuer le groupe « Accounting / Payments » (group_account_payment) aux utilisateurs concernés : sans lui, les boutons Add to Payment Order n'apparaissent pas sur les factures. Un accès en lecture seule existe pour account.group_account_readonly.
  3. Sur chaque mode de paiement à utiliser : cocher Selectable in Payment Orders, puis régler le groupe « Options for Payment Orders » — dont Group Transactions in Payment Orders — et le groupe « Select Move Lines to Pay - Default Values », qui préremplira l'assistant de sélection.
  4. Sur chaque méthode de paiement : cocher éventuellement Only for payment orders si elle ne doit pas être utilisable autrement.
  5. Vérifier que chaque journal bancaire utilisé a un compte bancaire configuré, si la méthode l'exige.

L'étape 3 mérite d'être soignée : les valeurs par défaut de sélection des écritures sont ce qui fait passer la constitution d'un ordre de quinze minutes à deux clics. Un mode de paiement correctement réglé propose directement les factures échues du bon journal.

En multi-sociétés, une règle ir.rule restreint automatiquement les ordres et les lignes aux sociétés autorisées de l'utilisateur. Aucune action n'est requise, sauf structure complexe.

Limites connues

Le dépôt ne répertorie pas de défaut sur ce module. Trois limites sont en revanche structurelles et doivent être comprises avant de l'installer.

  • Il ne produit aucun fichier bancaire à lui seul. C'est un socle : la génération d'un SEPA Credit Transfer ou d'un prélèvement SEPA vient d'autres modules du dépôt bank-payment. Sans eux, Generate Payment File fait seulement avancer l'état.
  • L'état « File Uploaded » est un geste humain. Rien ne vérifie que le fichier a réellement été remis à la banque. Si personne ne clique, la comptabilité reste en retard sur la réalité.
  • Le lettrage automatique suppose des écritures d'origine propres. Une facture déjà partiellement lettrée à la main produit des rapprochements à reprendre.

La deuxième limite est une question d'organisation, pas d'outil : désignez qui clique, et quand. Voir ce qui s'automatise vraiment en comptabilité.

Identité technique

Nom techniqueaccount_payment_order
Dépôt OCAbank-payment, branche 18.0
Version du module18.0.1.2.8
LicenceAGPL-3
Dépendancesaccount_payment_partner, base_iban
Groupe crééAccounting / Payments (group_account_payment)
Version Odoo18.0 Community

Questions fréquentes

Ce module génère-t-il des fichiers SEPA ?

Pas à lui seul : c'est un socle. La génération d'un virement ou d'un prélèvement SEPA vient d'autres modules du dépôt bank-payment. Sans eux, le bouton Generate Payment File fait avancer l'état de l'ordre sans produire de fichier — c'est le malentendu le plus fréquent à l'installation.

À quel moment les factures sont-elles lettrées ?

À la dernière étape, quand vous cliquez sur File Successfully Uploaded : les paiements sont comptabilisés et rapprochés des écritures d'origine. Tant que l'ordre reste à File Generated, les factures restent ouvertes dans vos comptes alors que l'argent est parti.

Pourquoi le bouton « Add to Payment Order » n'apparaît-il pas ?

Deux causes, dans cet ordre : l'utilisateur n'a pas le groupe « Accounting / Payments » (group_account_payment), ou la facture n'est pas comptabilisée — le bouton n'est visible que sur une pièce à l'état posted.

Peut-on grouper plusieurs factures d'un même fournisseur en un seul virement ?

Oui, par l'option Group Transactions in Payment Orders sur le mode de paiement. C'est un choix à arbitrer : un virement groupé coûte moins cher en frais bancaires, mais complique le rapprochement côté fournisseur, qui reçoit un montant unique pour plusieurs factures.

Et les prélèvements clients ?

Le mécanisme est symétrique : Facturation ▸ Clients ▸ Ordres de prélèvement. Pensez à cocher Disallow Debit Before Maturity Date sur le mode de paiement : c'est le garde-fou qui empêche de prélever avant l'échéance, et donc d'essuyer des rejets évitables.

Se faire accompagner

Deux points de cette fiche demandent un travail de mise en service : le module de format bancaire à choisir et à raccorder à votre banque, et les valeurs par défaut de sélection des écritures, qui font passer la constitution d'un ordre de quinze minutes à deux clics.

Nos consultants paramètrent la chaîne complète — modes de paiement, format bancaire, règles de sélection, et le rapprochement automatique en sortie — puis forment la personne qui l'exécutera chaque semaine. Voir les prestations d'intégration ou demander un rappel.

Pour aller plus loin

En résumé

account_payment_order transforme le paiement des fournisseurs en un lot que l'on confirme, génère et remet à la banque, avec un lettrage automatique à la fin. Deux choses à retenir : il lui faut un module de format bancaire pour produire un fichier, et l'état final est un geste humain qu'il faut attribuer à quelqu'un. Parlons de votre circuit de paiement.

Documentation OCAComptabilitéTrésorerie

Partager

Fiches connexes

Baies de serveurs dans une salle machine
Le module OCA `queue_job` (dépôt `queue`, version 18.0.3.4.1, licence LGPL-3) ajoute à Odoo une **file de travaux de fond** avec ses canaux, ses fonctions et ses tâches, sous le menu **File d'attente des tâches** : c'est la brique dont dépendent plus de quarante modules communautaires, et la première à surveiller en exploitation. Vingt-six autres modules traitent les composants, la configuration hors base, l'impression serveur et l'IoT.
Lire la suite
Documentation OCA, Exploitation
Câbles réseau branchés sur un commutateur
Le module OCA `endpoint` (dépôt `web-api`, version 18.0.1.1.4, licence LGPL-3) permet de **déclarer un point d'entrée HTTP depuis l'interface**, sous **Paramètres ▸ Technique ▸ Endpoints** : une adresse, une méthode, un traitement — sans écrire de module. Vingt-trois autres modules traitent le cache, les imports par sessions, les échanges de factures et l'agenda.
Lire la suite
Documentation OCA, Intégration