Web-to-Print solutions come in all shapes and sizes. You can find solutions that cost you zero, zip, nada, but there is, of course, a catch. You can also find solutions very expensive, that still won't deliver what you need. How should any supplier, regardless, be able to deliver a solution that works if you haven't specified what you need?
If you haven't defined your requirements, technically and commercially, most suppliers won't be able to give you a realistic price. You will end up paying for development and implementation on an open account, and regardless of whether you chose the open-source solution of the most expensive you could find, it will for sure be more expensive.
You may also be tempted to choose a supplier based on features. But I am pretty sure that lists from all the suppliers by far will deliver more than you ever need. If you have specific requirements like integration points, particular applications, or products, it makes sense to disregard suppliers who can't support your objective.
One thing is the cost of the solution. More important is the time and effort to make your solution ready to be published. The more complex your web-to-print solution is, the longer time, and the more effort you will need to spend.
Most vendors or resellers can't predict the time needed for sure. But ask. And ask for references. What often becomes endless projects is not always your supplier's fault. You will need to allocate the time from your side as well.
A suggestion is to divide the entire project into clearly defined milestones. With milestones, the economy and experience will become more and more balanced. Another suggestion is to define from the beginning who is doing what.
If you choose a SaaS solution, be aware that not all solutions can be developed specifically for your needs. If this is the case, this isn't necessarily bad, but just something you have to consider. If your supplier promise you feature in the future that you find critical, ask your supplier to put this on paper - duly signed.
All the SaaS solutions I have seen will have more and more features frequently updated. This is good, but maybe less important in case you get a "monster" solution where the solution becomes so complicated that everybody loses the overview.
If a solution can be developed to your need, this is, of course, good. However, be aware that if it was difficult to find the right solution initially to develop, it could be even more of a challenge. When you develop specific services/features, demand from your supplier to use an easy to use project-management tool to follow the development as it progresses.
Have frequent update meetings (i.e., weekly) where you get the information needed to feel safe about the development.
One of the most important considerations you should have is the cost of upgrading to new versions if you choose to develop new features. Most "licensed" solutions require an AMC (Annual Maintenance Contract.) That essentially is paid, so that you have your software updated to the latest edition. However, the AMC does not always cover the cost of updating the features/functions you developed, which can lead to unexpected additional costs.
To get the software installed and run is one thing. When the software is ready to be used, it's not. Now comes the time where you test it carefully. Testing software isn't as easy as you expect, so here you should pay attention.
Most software is tested against test-cases.
A test case sets a scenario and describes the expected result. With enough test cases written and tested, you are most likely good to go.
Now comes a critical time. Now it's time to add products and prices, so stay tuned for the next chapter.
The above processes, of course, affect the total price of your solution. Without knowing all the solutions in the market, I am sure that some solutions are easier than others - so watch out!