
163 S.W.3d 472 (2005)
BUILDING ERECTION SERVICES COMPANY, Appellant,
v.
PLASTIC SALES & MFG. CO., INC. d/b/a Sunglo Skylight Products, et al., Respondent.
No. WD 63383.
Missouri Court of Appeals, Western District.
April 12, 2005.
Motion for Rehearing and/or Transfer Denied May 31, 2005.
As Modified May 31, 2005.
*474 Kurt S. Brack and Judd L. Herbster, Overland Park, KS, for appellant.
Andrea G. McCarthy, Kansas City, MO, for respondent.
Before SMART, P.J., ELLIS and HARDWICK, JJ.
Motion for Rehearing and/or Transfer to Supreme Court Denied May 31, 2005.
LISA WHITE HARDWICK, Judge.
Building Erection Services Company (BESCO) filed claims against Plastic Sales & Manufacturing Company, Inc., d/b/a Sunglo Skylight Products (Sunglo) for an action on account, quantum meruit, and breach of contract. After a bench trial, the circuit court awarded BESCO damages of $4,904 on the quantum meruit claim and denied the remaining claims. BESCO appeals, contending the circuit court erred in denying the contract-based claims, the request for attorney's fees, and additional damages on the quantum meruit claim. We affirm.

FACTUAL AND PROCEDURAL HISTORY
Viewed in a light most favorable to the judgment, the facts underlying BESCO's claims are as follows. In April 1996, Sunglo entered into a contract with J.E. Dunn, as general contractor, to fabricate and install three skylights as part of a remodeling project at Terminal C of the Kansas City International Airport (KCI). Sunglo planned to fabricate the skylights and then have its regular subcontractor, Royal Remodeling, perform the installation work. After the subcontractor submitted a bid of $6,500 to install the three skylights, Sunglo learned that Royal Remodeling was working on another job and would be unavailable in March 1998, when the installation was to begin.
In late February or early March 1998, Sunglo contacted BESCO to request a bid on the KCI skylight installation. BESCO's representative, Todd Riggs, visited Terminal C to review the scope of work with Sunglo's representative, Tim Driller. Driller pointed out the rough openings for three skylights and explained that two of the openings were nearly complete and ready for installation. The third opening was scheduled for completion in one or two months. Driller told Riggs that Sunglo's regular subcontractor had bid $6,500 on the project and that Sunglo was unlikely to pay any more than $7,000 for the entire installation. Prior to bidding on the project, Riggs reviewed the shop drawings, *475 which reflected that three skylights were to be installed.
Riggs made a verbal bid of slightly more than $7,000 and then negotiated further with Brian Wilson, a Sunglo representative. In early March 1998, BESCO and Sunglo reached a verbal agreement that the skylights would be installed for $7,000. BESCO began the installation on March 9, 1998, and completed two of the skylights by March 30, 1998. Although Sunglo prepared a "Subcontract for Installation" dated March 8, 1998, neither party executed the written agreement until several weeks after the two skylights were installed.
The Subcontract was eventually signed by Sunglo on April 21, 1998, and by BESCO on May 5, 1998. The written agreement provided that Sunglo would pay BESCO the sum of $7,000 for "the full, faithful, and prompt performance of [the] Subcontract." The only reference to the scope of work was set forth in Article 3, which stated:
ARTICLE 3DESCRIPTION OF WORK
3.1 Subcontractor agrees to furnish all labor, material, plant, equipment, tools, hoisting, temporary power, safety equipment, skills, services, supervision, administration, taxes, insurance, secure all field measurements and all other items necessary to complete the Work described as follows (hereinafter "Work") in accordance with the terms of the Subcontract Documents:
3.2 Subcontractor shall provide a 1 year leak warranty for its Work on this project. This warranty shall be in writing and shall be provided to Contractor upon completion of Subcontractors Work.
Although the Subcontract referenced the "KCI Terminal C" project, it did not include any specific mention of the skylight installation work or the number of skylights to be installed. The written agreement also did not define the term "Subcontract Documents" as referenced in Section 3.1.
Two weeks after signing the subcontract, BESCO submitted to Sunglo a "subcontractor warranty" and an application for payment in the amount of $8,350. The application, dated May 19, 1998, included charges for the $7,000 sum set forth in the subcontract and $1,350 for additional costs incurred during the installation of the two skylights. The application stated that "100%" of the subcontract work had been completed. Sunglo objected to paying the invoice because the $1,350 in additional costs were not covered by the written subcontract and had not been otherwise approved.
Sometime in mid-May 1998, Sunglo notified BESCO that the third skylight opening was complete and ready for installation. At that time, no discussions took place between the parties regarding any additional costs associated with the third skylight. BESCO began installing the third skylight on May 22, 1998, and completed the work on June 25, 1998. BESCO thereafter notified Sunglo that an additional $4,904 would be billed for installation of the third skylight. Sunglo disputed that any additional money was due and paid BESCO $6,300, consistent with the subcontract price of $7,000 minus a 10% retainage.
In addition to the KCI project, Sunglo and BESCO entered into a subcontract in July 1998 for skylight installation work on the ETC Institute. BESCO agreed to perform the installation for $9,500. Upon completion of the work, Sunglo paid BESCO $9,000 and retained $500, pending BESCO's submission of a warranty and lien waiver.
*476 In July 2001, BESCO filed a petition against Sunglo alleging an action on account (Count I), an action in quantum meruit (Count II), and a breach of contract claim (Count III). All three counts alleged that Sunglo failed to pay the reasonable value of BESCO's materials, equipment, and labor for skylight installation work on the KCI and ETC projects. BESCO sought $7,454 in damages under each count, plus interest and attorney's fees. The damages claim included $1,350 for additional costs incurred for installation of the first two skylights at Terminal C, $4,904 for installation of the third skylight at Terminal C, the $700 retainage on the KCI project, and the $500 retainage on the ETC project.
After a bench trial, the circuit court denied the action on account and breach of contract claims. The court found that no contract existed on the KCI project because the terms of the subcontract were indefinite and the parties did not have a "meeting of the minds" regarding the number of skylights to be installed by BESCO. The court further found that Sunglo did not breach the terms of the subcontract on the ETC project. The court ruled in favor of BESCO on the quantum meruit claim, finding that Sunglo failed to pay the reasonable value of installation work performed on the third skylight. The judgment awarded BESCO $4,904 in damages, plus prejudgment interest. BESCO's request for attorney's fees was denied. BESCO appeals.

POINTS ON APPEAL
BESCO brings seven points on appeal. BESCO contends the circuit court erred in: (I) determining no subcontract existed on the KCI project; (II) considering parol evidence to determine whether the subcontract existed; (III and IV) denying the retainage claims on the KCI and ETC projects; (V) denying the recovery, under a quantum meruit theory, of additional costs incurred on installation of the first two skylights on the KCI project; and (VI and VII) denying the requests for attorney's fees under Sections 34.057 and 431.180, RSMo.2000. We will address these points as related to the claims set forth in BESCO's petition.
In reviewing this court-tried case, we must affirm the circuit court's judgment unless there is no substantial evidence to support it, it is against the weight of the evidence, or it erroneously applies the law. Murphy v. Carron, 536 S.W.2d 30, 32 (Mo. banc 1976). We give deference to the circuit court's factual determinations, reviewing the evidence and inferences in light most favorable to the judgment, while disregarding all contrary evidence and inferences. Langdon v. United Rests., Inc., 105 S.W.3d 882, 886 (Mo.App.2003). Questions of law, however, are reserved for the independent judgment of the appellate court without deference to the trial court's determination. Id.

ACTION ON ACCOUNT AND BREACH OF CONTRACT CLAIMS
The action on account[1] and breach of contract claims were premised on BESCO's allegation that it had a valid subcontract with Sunglo on the KCI project. The circuit court denied these claims because it determined there was no meeting of the minds on an essential term of the alleged subcontract and, thus, no contract existed. On appeal, BESCO asserts the terms of the subcontract were unequivocal, plain, and clearly expressed the parties' intention that two skylights were to be installed on the KCI project. Accordingly, *477 BESCO argues the circuit court erred, as a matter of law, in considering parol evidence and in ultimately determining that no contract was formed.
Under Missouri law, the essential elements of a contract are: (1) competency of the parties to contract; (2) subject matter; (3) legal consideration; (4) mutuality of agreement; and (5) mutuality of obligation. Ketcherside v. McLane, 118 S.W.3d 631, 635 (Mo.App.2003). At issue here is the fourth element, which requires the parties to have "a mutuality of assent or a meeting of the minds on the essential terms of a contract." Id.
Courts can determine whether there has been a meeting of the minds by "looking to the intention of the parties as expressed or manifested in their words or acts." Smith v. Hammons, 63 S.W.3d 320, 325 (Mo.App.2002). The essential terms of the contract must be certain or capable of certain interpretation. Ketcherside, 118 S.W.3d at 636. "That is, [the] terms of agreement must be sufficiently definite to enable the court to give it an exact meaning." Id.
No contract is formed when the terms of agreement are unduly uncertain and indefinite. Around the World Importing, Inc. v. Mercantile Trust Co., 795 S.W.2d 85, 90 (Mo.App.1990). However, uncertainty and indefiniteness are matters of degree. In determining whether the terms of an agreement are too uncertain to create an enforceable contract, "a court is guided by principles of law applied with `common sense and in the light of experience.'" Ketcherside, 118 S.W.3d at 636 quoting Shofler v. Jordan, 284 S.W.2d 612, 615 (Mo.App.1955). A contract should not be held void for uncertainty unless there is no possibility of giving meaning to the agreement. Branson Land Co. v. Guilliams, 926 S.W.2d 524, 526 (Mo.App.1996); Computer Network, Ltd. v. Purcell Tire & Rubber Co., 747 S.W.2d 669, 676 (Mo.App. 1988).
The purpose of the alleged agreement between Sunglo and BESCO was to provide for the installation of skylights in Terminal C as part of the KCI project. Thus, the scope of the skylight installation was an essential term the parties had to agree upon in order to establish a valid contract. BESCO argues the written subcontract on the KCI project was valid and enforceable because it clearly expressed the parties' mutual intention to install two skylights in Terminal C. We must review the terms of the subcontract and the "words and acts" of the parties to determine whether there was sufficient evidence to support the circuit court's contrary finding that the parties did not reach an agreement on the number of skylights to be installed by BESCO.
The subcontract itself, which was not executed until several weeks after two of the skylights were installed, makes an introductory reference to the KCI project but does not mention the installation of any skylights. The "Description of Work" in the agreement states only that BESCO will "furnish all labor, materials, . . . and all other necessary items to complete the Work described as follows in accordance with the terms of the Subcontract Documents:" without providing any further description. The written agreement also does not define the term "Subcontract Documents," nor describe or attach any such documents.
This lack of a definition is further clouded by the parties' divergent testimony regarding their understanding of the term "Subcontract Documents." Sunglo argued at trial that the documents referred to were its prime contract with the general contractor, J.E. Dunn, and the shop drawings, both of which reflected plans for the *478 installation of three skylights in Terminal C. BESCO disputed Sunglo's contention and instead argued the only document integrated into the subcontract was a written bid proposal, that BESCO submitted on or about March 2, 1998, for the installation of two skylights in Terminal C at a price of $7,180. Sunglo denied ever receiving the bid proposal or having any knowledge of its existence when the subcontract was executed. The conflicting testimony of the parties indicates there was no mutual understanding regarding the nature of the "Subcontract Documents" or the scope of the work to be performed.
Without definite terms in the written subcontract to describe the scope of work, we must consider the intention of the parties as expressed in their words and acts. There is substantial testimony in the record regarding the statements and conduct of the parties prior to the time the skylight installation work began on March 9, 1998. Viewed in a light most favorable to the judgment, this testimony supports the circuit court's determination that the parties did not have a clear and definite agreement on the number of skylights to be installed by BESCO.
When BESCO representative Todd Riggs visited Terminal C to discuss the scope of the KCI project, Sunglo representative Tim Driller showed him three skylight openings and explained that two were nearly complete and ready for installation. Driller said the third opening would not be ready for one to two months. Driller thought Riggs would understand, based on this visit and explanation, that Sunglo wanted BESCO to bid on the installation of all three skylights. Driller told Riggs that Sunglo had already received an installation bid from Royal Remodeling for $6,500, but Royal Remodeling would not be available in March 1998 when the first two skylights were scheduled for installation. Riggs interpreted this explanation to mean that BESCO was being asked to bid on the installation of the two skylights that Sunglo's standard subcontractor was unavailable to perform. Although Riggs was clearly made aware that the overall scope of the KCI project involved the installation of three skylights in Terminal C, he could have reasonably believed, under the circumstances explained, that BESCO's involvement was limited to the two skylights scheduled for installation in March 1998.
The misunderstanding between the parties continued even after work was completed on two of the skylights. BESCO sent Sunglo an application for payment, stating the installation work was 100% complete and the $7,000 subcontract amount was due, plus additional costs of $1,350. The invoice was sent in mid-May 1998, around the same time the third skylight opening was ready and Sunglo requested BESCO to perform the installation. BESCO made no effort to negotiate a new subcontract with Sunglo regarding the third skylight at that time, and Sunglo did not dispute BESCO's invoice stating that the original subcontract work was complete.[2] Neither party made any effort to clarify the scope of the original subcontract until after the third skylight had been installed. It was only then that BESCO demanded additional payment of $4,904 for the third skylight, and Sunglo responded that the original subcontract price of $7,000 included the installation of all three skylights.
There is substantial evidence in the record to indicate the parties never had a "meeting of the minds" regarding the *479 scope of the skylight installation on the KCI project. Neither the written subcontract nor the conduct of the parties demonstrates that an agreement was reached as to how many skylights were to be installed for the negotiated price of $7,000. Without mutual assent on this essential term, no valid contract could be formed. The circuit court did not err in declaring the subcontract void for uncertainty because there was no possibility of giving meaning to the agreement. Point I is denied.
BESCO also contends the circuit court violated the parol evidence rule in considering testimony regarding the prime contract and shop drawings to vary the terms of the subcontract. We disagree that the rule is applicable in determining whether a valid contract was formed.
The parol evidence rule bars evidence of prior or contemporaneous oral agreements that vary or contradict the terms of an unambiguous, final, and complete writing, absent fraud, mistake, accident or duress. Mo. Dep't. of Transp. v. Safeco Ins. Co. of Am., 97 S.W.3d 21, 32 (Mo.App.2002). The rule applies only to complete agreements. CIT Group/Sales Fin. Inc. v. Lark, 906 S.W.2d 865, 868 (Mo.App.1995). If a writing omits an essential term, it is considered incomplete and extrinsic evidence may be introduced to establish the parties' intent. Safeco, 97 S.W.3d at 32. The parol evidence rule does not exclude proof that an alleged contract omits a fundamental assumption upon which the agreement is made. Don King Equip. Co. v. Double D Tractor Parts, Inc., 115 S.W.3d 363, 373 (Mo.App. 2003).
The question of whether a complete contract exists must be determined before considering interpretation of the contract or the application of the parol evidence rule. Id. Thus, the circuit court properly considered testimony regarding the prime contract and shop drawings as a factor in determining whether the parties had a meeting of the minds on the number of skylights to be installed by BESCO. We find no violation of the parol evidence rule, as the court could rely on extrinsic evidence in making the preliminary decision that no valid contract existed. Point II is denied.
In Point III, BESCO contends the circuit court erred in denying its action on account and breach of contract claims for the $700 retained by Sunglo under the KCI subcontract. In light of our holding that no valid subcontract existed, BESCO's retainage claim was properly denied for the work performed on Terminal C. Point III is denied.
In Point IV, BESCO contends the circuit court erred in finding that Sunglo did not breach the ETC subcontract when it failed to pay the $500 retainage amount. The court determined the retainage amount was not due because BESCO had never submitted a warranty or lien waiver, as required by the parties' written agreement.
The relevant provision in the ETC subcontract is Section 4.1, which states:
Payment shall be made by the Contractor when the Subcontractor's work is fully performed in accordance with the requirements of the Subcontract Documents, the Subcontractor has submitted to Contractor a signed owner acceptance from the Work, Contractor has received Subcontractor's written warranty/guarantees as required in the Subcontract documents, and any lien waiver that may be required. A retainage of 10% will be held until the project is substantially complete and Sunglo has received payment from the Customer for the installation work.
*480 Based on the last sentence of Section 4.1, BESCO argues there are only two precedent conditions for payment of the retainage and both have been met: the project is substantially complete, and Sunglo has been paid by the customer, ETC. However, contractual words and phrases are not interpreted in a vacuum but by reference to the contract as a whole. Yerington v. La-Z-Boy, Inc., 124 S.W.3d 517, 520 (Mo.App.2004). The last sentence of Section 4.1 must be interpreted in a manner consistent with the preceding sentence, which actually defines when payment is due.
Section 4.1 provides that Sunglo will make "payment" when BESCO's work is fully performed, ETC has accepted the work, and BESCO has submitted any required warranties and lien waivers. Thus, no payment is due until those conditions are met. The last sentence of Section 4.1 provides additional conditions under which Sunglo can retain 10% of the contract payment, even if the conditions in the prior sentence have been met. It would be illogical to read the final sentence in isolation, as BESCO suggests, because that would mean the 10% retainage could have been due before the 90% payment was made. Section 4.1 can only be reasonably interpreted to require that the conditions in the first and second sentence should be met before BESCO is entitled to receive full payment of the subcontract amount
Sunglo presented evidence at trial that it had requested a warranty and lien waiver from BESCO after work was completed on the ETC project. BESCO argues that the closing documents must have been provided by December 18, 1999, because Sunglo otherwise would not have paid $9,000 of the contract price on that date. However, the record reflects that BESCO did not produce originals or copies of the closing documents at trial as evidence in support of its breach of contract claim. Sunglo provided a hand-written notation on a letter as evidence that it was still waiting for the lien waiver in July 1999, seven months after having paid more than 90% of the contract price to BESCO. The trial court could consider this evidence in determining that BESCO failed to provide all of the closing documents required for full payment under the ETC contract.
Based on the terms of Section 4.1, Sunglo was not required to make any payment, including the retainage amount, until the warranty and lien waiver were received. Even though Sunglo proceeded to pay $9,000 without receiving the closing documents, it could still retain the balance of $500 until BESCO fully complied. BESCO failed to prove that Sunglo breached the subcontract by withholding the retainage. We find no error in the circuit court's denial of the breach of contract claim on the ETC project. Point IV is denied.
In Points VI and VII, BESCO contends the circuit court erred in denying its request for attorney's fees on the contract-based claims. Although attorney's fees are generally allowed when authorized by contract or statute, the question of whether to award such fees is left to the broad discretion of the trial court. McDonald's Corp. v. Sandbothe, 814 S.W.2d 665, 671 (Mo.App.1991). We will not disturb that determination absent an abuse of discretion. Id.
BESCO argues it was entitled to recover attorney's fees for breach of contract on the KCI and ETC projects under Section 431.180.2, R.S.Mo.2000, or Section 34.057.6. Both statutory provisions allow an award of attorney's fees to the prevailing party in certain breach of contract cases. The circuit court did not award attorney's fees because BESCO failed to prevail on any of its contract claims. We have affirmed the *481 court's holding that no contract existed on the KCI project and that there was no breach of the contract on the ETC project. Accordingly, we find the court did not abuse its discretion in denying BESCO's attorney's fees for those claims on which it did not prevail. Points VI and VII are denied.

QUANTUM MERUIT CLAIM
In Point V, BESCO argues the circuit court erred in refusing to award the $1,350 in additional costs incurred during the installation of the first two skylights on the KCI Project. As an alternative to the contract-based claims in Counts I and III, BESCO sought recovery of the additional costs in Count II under a quantum meruit theory as "reasonable compensation for valuable services or materials provided." Bellon Wrecking & Salvage Co. v. Rohlfing, 81 S.W.3d 703, 711 (Mo.App.2002).
To prevail on the quantum meruit claim, BESCO was required to prove that: (1) it provided services at Sunglo's request or acquiescence; (2) the services were of a certain and reasonable value; and (3) Sunglo refused to pay for the services upon demand. Mills Realty, Inc. v. Wolff, 910 S.W.2d 320, 322 (Mo.App.1995). The circuit court denied BESCO's claim based on the second element, finding there was no evidence as to the reasonable value of the additional materials and services provided.
BESCO contends the testimony of its representative, Todd Riggs, was sufficient to prove the reasonableness of the additional costs. Riggs gave a detailed explanation that BESCO assessed $1,350 in "extra charges" for the following items and services related to installation of the first two skylights on the KCI project: $21 for screws, $240 for pick-up and delivery of skylight glass, $225 in gas and insurance costs for the use of the truck; and additional labor charges of $480 (two iron workers for 4 hours) and $384 (crane operator for 4 hours) due to late delivery of the aluminum frames. Although Riggs explained that these expenses were not anticipated at the time BESCO negotiated the $7,000 skylight installation price, he never testified as to the reasonableness of the extra charges. Riggs' testimony fell short of proving that $1,350 was reasonable compensation for the additional materials and services provided.
The record supports the circuit court's finding that there was no evidence regarding the reasonableness of the extra charges. Failure to prove the reasonableness of costs is fatal to a quantum meruit claim. Id. Point V is denied.

CONCLUSION
Finding no error, we affirm the trial court's judgment.
All concur.
NOTES
[1]  An action on an account is based in contract. Associated Bearings Co. v. Southwest Latex Supply, Inc., 962 S.W.2d 918, 919 (Mo. App.1998)
[2]  Sunglo disputed the $1,350 in additional costs but did not object to BESCO's representation that the subcontract work was "100%" completed.
