Aller au contenu principal

Affectations bancaires

Les liens entre une opération bancaire et les factures qu'elle solde. EN CRÉER UNE EST UN BROUILLON et rien de plus : cela n'écrit aucun paiement, ne touche aucune ligne de grand livre et laisse la facture impayée. L'argent bouge à POST /api/v1/bank_operations/{id}/reconciliation, qui prend le jeu d'affectations COMPLET et la version de l'opération - si bien que brouillonner reste bon marché et que solder reste lié à une version. Il n'existe au plus qu'une affectation ACTIVE par couple (opération, facture) ; une seconde est un validation_failed, jamais un duplicate_record. Les montants sont toujours des magnitudes POSITIVES OU NULLES - le sens du mouvement vit sur le direction de l'opération - et s'envoient sous forme de chaînes ou de nombres entiers, jamais de flottants JSON, parce qu'un double ne peut pas porter les quatre décimales que stocke la colonne. Si les affectations actives dépassaient alors le mouvement, le refus est allocation_exceeds_operation. RIEN N'EST JAMAIS SUPPRIMÉ : une affectation est une pièce d'audit, si bien que le DELETE écrit status: "rejected" et vous rend la ligne, et une affectation CONFIRMÉE y est refusée parce que l'argent doit d'abord revenir par la ressource de rapprochement.