There is a key point that needs to be addressed regarding your technical guidance. That is:
Does the software actually work and do what you asked them to do, in terms of the actual response to user inputs?
If the answer is "no", then give them actual reports of bugs - what the software does and what you expected it to do in different circumstances. This is very different from "technical guidelines". You should expect that these bugs will be fixed.
If the answer is yes, it does work, and your technical guidance is you saying "we would prefer if internally the code had worked this way" then you can't really make them change things. You asked for code that did something, and they have delivered code that did that. Of course it's different if you told them in advance (and preferably in writing) that you wanted something done a certain way - then you can reasonably ask them to make changes so it works the way you told them to. If you didn't do that, and you wanted things done a certain way, then there's a lesson there that you should give your requirements in advance.