Hi,
A custom field of the table "order" and of the type "checkbox" will allow you to let the customer choose during the checkout. That's the goal of this kind of custom fields:
www.hikashop.com/support/documentation/4...shop-field-form.html
The cart fees plugin will be able to take into account what is selected in the field and apply the fee or not based on that.
So, as far as I can see, it meets exactly your requirements.
The checkout related plugin on the other hand won't allow you to do what you want. It's goal is to display a listing of products related to the products already in the cart in order to increase the total amount of the orders placed.
But you could also just add a "text" view to your "checkout workflow" with the content tag of a product in order to display its add to cart button and its image:
www.hikashop.com/support/documentation/1...-product-insert.html
www.hikashop.com/support/documentation/4...eckout-workflow.html
That could work. However, as that's not exactly what you asked, I hadn't thought that it would be useful to mention it.
We don't have a demo for all of these. However, since you already have HikaShop Business, you can already test the custom order field. And I can assure you that the cart fee plugin will allow you to add an extra fee based on what is selected in a custom order field. The plugin was made for this kind of things. Also, note that we have a 30 days money back policy. So you can always purchase the plugin, test it, and if it doesn't work, you can always ask for a refund.