Request customer uploads before or after checkout

I am working on a website where customers can order a number of products and each product will require several photos (often hundreds) to be uploaded by the customer - the number of photos varies depending on the product.

I am now considering what is better from a UX point of view and for conversions.

Our options are:

  1. Should the customer upload their photos on the product page and then pay for their order - which might require them to register first so they can save photos to return later. Snapfish does something similar.
  2. Let the customer complete checkout and request the photos required afterwards.

I am in favour of No. 2 for these reasons:

  • In theory, higher conversions as there are less steps to checkout.
  • Captures impulse buyers - uploading photos gives them a chance to second-guess their purchase.
  • Currently the website is operating using No. 1 and we are seeing a high abandonment rate - possibly because of upload issues and customers will be more likely to report upload issues post-checkout.

Can someone help advise which option would be the preferred for this situation?

A bit of background: The website provides a variety of photo gifts, but unlike others it offers more of a direct customer service and there is a lot of interaction between staff and the customer during the order process - including a final approval of the finished item before despatch.