There is a large semantic gap between "Terms and conditions" in traditional legalspeak and Solidity code (and even more so, EVM bytecode, which is what is actually executed). These notations operate in different environments (legal system with human lawyers and judges vs decentralized virtual machine) and handle different type of objects (rights and obligations defined in natural language and interpreted by humans vs rules on how records in a distributed ledger are updated). "Translating" any non-trivial legal contract into Solidity is a highly challenging task. In any case, even if you limit the scope to just very narrow subset of legal contracts (i.e., those that handle units of value, which can relatively easily be represented with tokens), the number of subtleties in Solidity and EVM makes auto-generating smart contracts a risky endeavor.
In any case, you should expect parties of the contract to view the generated Solidity and explicitly agree that their intentions are accurately represented by the EVM bytecode generated by the latest Solidity compiler from the given source code (which was in turn generated from the contract description the parties have agreed upon).