Is the top image from preview and the bottom from production rendering? I'd recommend switching to raytracing preview using the toolbar button, to see the end result immediately. Sometimes faster preview is not providing all the details.

As for the problem itself, it looks like you used a box shape for the container and that box still has the opaque inside which casts shadows on the inner objects. There is a "split inner geometry" option in the box settings at the right, tick it on then apply similar artwork to the inner parts of the box, so they are transparent where needed. This should help.

Another option is to use Origami for making the box. 

Thanks I got it to work via doing that - but when I went to batch render it (I have several products that need to be done same layout) it kept coming up with message 'there are duplicates, can't go any further' - is there a way I can do this?

Then I proceeded just to render the one box (not batch) and got this render which is really out of focus etc - what have I done wrong?

There is a "depth of field" section in the camera panel at the left. You need to either turn it off or set it up. See here for more details:

Thanks - Can you help me answer the question of how I can batch render this image - when I go to it tells me there are too many duplicates - I have to build about 9 of these with different packaging - if there is a way to do this I woudl be very grateful

Can you share a screenshot? I am not sure which exactly tool you are using in Boxshot that gives you the error.

See previous message for screen grabs - Both Batch render and Batch render (multiple sides). Scene tree visual is in first message at the bottom so you can see how file is created. This is pretty urgent if there is anyway you could let me know how to set it up so I can do multiple files asap I would really appreciate it.

Well, the message tells its all. You have multiple objects with the same name. Boxshot needs unique names in order to do batch rendering, so you need to make sure that every object in the scene has a unique name. Then you can go on with the batch rendering.