Citation: 4A_268/2021 E. B

B.a. Par requête de conciliation du 15 mai 2012, la demanderesse a ouvert action contre la défenderesse, concluant au paiement par cette dernière de 237'461 fr.85 avec intérêts et à la levée définitive de l'opposition formée au commandement de payer qu'elle lui avait fait notifier. La conciliation n'ayant pas abouti, elle a porté sa demande devant la Chambre patrimoniale cantonale du canton de Vaud. Dans sa réponse, la défenderesse a soulevé l'exception non adimpleti contractuset l'objection de compensation. Elle a conclu au rejet de la demande et, reconventionnellement, au paiement par la demanderesse de 6'940 fr. plus intérêts, représentant le solde dont elle estimait être encore créancière (47'000 fr. [207'000 fr. - 160'000 fr. d'acomptes versés à la défenderesse] sous déduction de 20'700 fr. de " rétrocession (qui lui serait) due ", de 30'240 fr. de " travaux de remise en état " et de 3'000 fr. d' " avance " (qu'elle aurait) accordée à la demanderesse. La demanderesse a conclu au rejet des conclusions reconventionnelles. Une expertise judiciaire a été confiée à G.________, architecte SIA, lequel a déposé un rapport le 1er avril 2014 et un rapport complémentaire en novembre 2016. Une seconde expertise a été confiée à H.________, architecte EPFZ-SIA, afin de déterminer si la facture de la demanderesse relative aux travaux effectués sur le chantier en cause était justifiée. L'expert a délivré son rapport le 15 juin 2018 et l'a assorti d'une lettre explicative le 23 novembre suivant. Par jugement du 17 septembre 2019, la Chambre patrimoniale cantonale a dit que la défenderesse devait payer à la demanderesse 87'459 fr.80 plus intérêts. Elle a rejeté la conclusion reconventionnelle. En substance, elle a raisonné comme suit. Le litige portait sur le prix dû par la défenderesse pour les travaux réalisés par la demanderesse. En application de l'art. 374 CO, le prix devait être déterminé sur la base des coûts effectifs. L'expertise judiciaire H.________ estimait la valeur totale des travaux réalisés par la demanderesse à 270'755 fr.55 bruts (soit le montant des factures adressées par la demanderesse à la défenderesse, après correction par la direction des travaux). Ce montant avait été accepté par les parties, à tout le moins par actes concluants, aucune d'entre elles n'ayant contesté le décompte du bureau d'architectes représentant le maître de l'ouvrage. La problématique résidait dans les déductions (un rabais de 25,5 %, plus une ristourne de 10 %) auxquelles la défenderesse prétendait. Aucun élément n'indiquait que les parties se seraient entendues sur un rabais de 25,5 % (à part les déclarations de la défenderesse elle-même). S'agissant d'une hypothétique « rétrocession » supplémentaire de 10 %, un accord dans ce sens n'était pas établi, même si les parties avaient procédé ainsi lors d'un précédent chantier (cf. supra let. Aa). Dès lors, le montant correspondant au travail effectué par la demanderesse devait être arrêté à 255'115 fr.80 nets, toutes taxes comprises. La défenderesse excipant de la compensation, les premiers juges ont admis une déduction non contestée de 4'656 fr. et une autre de 3'000 fr. au titre d'un versement de la défenderesse à une entreprise tierce; en revanche, ils ont écarté une facture de 30'240 fr. relative à des travaux effectués par un tiers, que la défenderesse entendait également porter en déduction, celle-ci n'ayant pas démontré avoir donné l'avis des défauts ni s'être acquittée de ce montant. B.b. Par arrêt du 30 mars 2021, la Cour d'appel civile du Tribunal cantonal du canton de Vaud a partiellement admis l'appel de la défenderesse sur le point du montant dû par cette dernière à la demanderesse, lequel s'élevait à 42'944 fr., plus intérêts à 5 % l'an dès le 12 janvier 2012. Elle a confirmé le rejet de la conclusion reconventionnelle. Ses motifs seront évoqués dans les considérants en droit du présent arrêt, dans la mesure utile à la discussion des griefs. Par arrêt du 26 avril 2021, la cour cantonale a rectifié le dispositif de son arrêt précédent sur le point des dépens, pour corriger une interversion malencontreuse dans le texte entre la demanderesse et la défenderesse.