There is an offer (in writing?) and a description of services. The offer was accepted. In my opinion, this definitely constitutes a contract. The content of the offer would be interesting ...
If it is not about entire houses, but only parts of them (new roof, new bathroom), this would probably correspond to the usual procedure: offer with description of services and price, offer is accepted, craftsman carries out the work. There is then no document labeled "Werkvertrag". Where should the problem be?