Add a file upload field to your Shopify product page
Let customers attach a proof, photo, logo, or document right on the product page, next to the add-to-cart button. Works on any Shopify plan and any Online Store 2.0 theme. Every file saves to your own Shopify Files.
Let customers upload a file on the product page
Upload Native adds a file upload field to any Shopify product page through the theme app block. A customer picks their proof, photo, logo, or document right next to the add-to-cart button using a clean drag-and-drop card they can also click to browse. It works on any Shopify plan and any Online Store 2.0 theme, with no code: you place the block from the theme editor and it inherits your store’s fonts and colors. Each file saves to your own Shopify Files and its reference is carried onto the order automatically, so made-to-order and personalized products arrive with the artwork already attached.
Built for personalized and made-to-order products
If you sell engraved, printed, or custom-made items, the product page is where customers expect to hand over their file. The block lets a buyer attach one file or several, with the file types and maximum size you choose, so you get usable artwork instead of a follow-up email thread. Validation is inline: a wrong-type or oversized file is rejected on the spot, before the item reaches the cart. The same upload rules can also run on the cart page if you would rather collect one file for the whole order.
Show the uploader only where it belongs
Not every product needs a file. Turn on "Only show for flagged products" in the block’s Visibility settings, then enable the "Show file upload" metafield under Metafields on the product page in your Shopify admin for each product that does. The block appears on flagged product pages and stays hidden everywhere else; on the cart page and at checkout it shows whenever a flagged product is in the cart. The toggle is off by default, and the block always stays visible in the theme editor so you can configure it.
Show to controls which customers see the uploader. Leave it on Everyone and nothing changes. Set it to B2B (company) customers only and the uploader appears just for logged-in company buyers — useful when artwork or spec sheets are a wholesale-only step. Set it to Retail customers only for the reverse, when personalisation is a direct-to-consumer offer and your wholesale buyers order plain stock. It combines with per-product visibility: turn on both and the uploader shows only when the product is flagged and the customer matches.
Flag the product
In your Shopify admin, open Products and pick a product. Scroll to the Metafields card, click View all, and set "Show file upload" to True. Repeat for every product that needs a file.
Turn it on in the theme block
In the theme editor, select the File upload block and tick "Only show for flagged products" under Visibility. The block stays visible inside the editor so you can keep configuring it.
Turn it on at checkout (Shopify Plus)
In Settings, open Checkout and click Customize. Select the Upload a file block and set "Only show for flagged products" to True.
Files saved to your own Shopify Files
Bytes go straight from the customer’s browser to your Shopify Files, never through a third-party server or external storage. The file reference is carried onto the finished order automatically, so your fulfillment team opens the attachment from the order like any other Shopify asset. The app never writes or edits the order itself. Nothing new to log into, and no separate storage to manage or pay for.
Need it inside checkout? Upgrade on Shopify Plus
The product-page block is the any-plan baseline. If you are on Shopify Plus, you can also capture files inside checkout itself and make the file required to complete the order. See Shopify checkout file upload for the Plus upgrade, or browse all upload surfaces.
Questions, answered
How do customers upload a file on a product page?
Does the product-page upload work on any Shopify plan?
Can customers upload more than one file per product?
Where are product-page uploads stored?
Can I show the upload field only on certain products?
Collect product-page uploads today
Install free, add the block to your product page, and let customers attach their file. Live in minutes.
Install the app