We probably need to get a few terms straight.
Your daughter is certainly not “breaking the law,” since there is no law forbidding a sixteen-year-old from having a checking account.
When we talk about “breaking the law,” it’s usually understood to mean committing a criminal act.
The issue of whether a minor can enter into a binding contract is a matter of civil law.
In Virginia, a minor may enter into a contract. The minor’s guardian, however, has the power to ratify or reject the contract. (See Virginia Code § 31-14.1(A)(1)). The contract has force and its terms may be enforced against the non-minor party, but the minor party, through his guardian, may reject (or rescind) the contract.
So in a sense, it’s a dicey proposition to enter into a contract with a minor, since you can be held to its terms, but the minor may not.
In general, prinicples of equity will apply. So the minor cannot, for example, enter into a contract to buy groceries, take delivery of the groceries, and then refuse to pay. Even if the contract is rescinded, the grocery seller can recover under the tort of unjust enrichment, without recourse to contract law.
In the case of the bank, they’re not taking that much of a risk. If the daughter issues a check, they’ll pay it. If she issues a check for more than she has in her account, they will dishonor it. They don’t have a huge amount of loss potential here.
At slightly more risk is the merchant who accepts your daughter’s check for payment. But even then, she cannot issue a check and then stop payment with impunity; the merchant can recover from her as in the grocer example above. Moreover, the crime of uttering or of passing bad checks does not require that the actor be over 18… ANYONE who issues a check knowing there are insufficient funds to cover it is guilty of that crime, be they sixteen or sixty-six.