What is SheetDropper?
SheetDropper is a hosted catalogue system that turns a product spreadsheet into a searchable, browsable website. Each account has a public catalogue page, an admin panel, and an optional cart and checkout for customer orders.
The source of truth is your .xlsx file. When you upload a new version, the catalogue updates in place. Categories, filters, images, and individual product pages are all generated from the rows and columns in that file.
What it does
Parses an .xlsx file into a live catalogue with categories, search, attribute filters, and individual product pages. Re-uploads replace the existing dataset. Optionally adds cart and checkout with online payment.
What it isn't
Not a database or a CMS. You don't edit products through a web form. All changes happen in the spreadsheet, and the spreadsheet is re-uploaded.
AI Import
AI Import accepts any .xlsx file and maps its columns to SheetDropper's expected fields. Use it when your existing price list doesn't match the template format.
The file is sent to Claude, which inspects the column headers and sample rows and returns a proposed mapping: which column is product_name, which is price, which is category, and so on. The mapping is shown for review before any data is written to the catalogue.
Drop in your file
Go to your Admin panel and find the Smart Import section. Drag and drop your existing .xlsx price list -- any format, any column names.
Review the AI mapping
The AI analyses your file and suggests how to map each column. You'll see two sections: Catalogue Fields (which of your columns feeds each catalogue field) and Remaining Columns (set each one as an Attribute Filter or ignore it). Adjust anything the AI got wrong, then save the mapping for next time.
Upload live or download
Hit Upload to Live Site to go live immediately, or Download as .xlsx to get a converted file you can review and edit before uploading.
What the AI handles
- Arbitrary column names (e.g. "Item Description", "SKU", "Trade Price")
- Multiple price columns -- the review screen lets you pick which one maps to price
- Merged-cell category patterns where the category appears once per group and the rows below are blank
- Unmapped columns, which default to Attribute Filter dropdowns
- Internal-use columns (stock counts, totals, internal codes) which default to ignored
- Shipping and inventory columns: weight, dimensions, stock quantity, and per-product GST rate are automatically recognised and mapped
Saved mappings
After reviewing a mapping, you can save it. The next time you import from the same spreadsheet format, SheetDropper skips the AI step and applies the saved mapping directly. You can still edit the mapping before confirming. Saved mappings are stored per account and can be cleared at any time.
Data and privacy
When you run AI Import, a portion of your spreadsheet (column headers and a sample of rows) is sent to the Anthropic API using SheetDropper's API key. The request is used solely to generate the column mapping suggestion.
Anthropic's policy for API usage states that inputs and outputs are not used to train their models. This is a firm policy that applies to all API accounts -- it is the key distinction between the API and the Claude.ai consumer product. See Anthropic's privacy policy for current details.
If your spreadsheet contains pricing, supplier, or other commercially sensitive data and you'd prefer it not to leave your system, use the template method instead -- no data is sent externally when you upload a pre-formatted file directly.
Getting started
There are two paths to a populated catalogue. Both end at the same place: a live catalogue built from an .xlsx file stored on the server.
Option A: AI Import
Log in to the Admin panel, open the Smart Import tab, and drop in your existing file. The AI proposes a column mapping; you confirm it and the catalogue is populated. See AI Import for details.
Use this path when you already have a price list in some arbitrary format.
Option B: Template
From the Admin panel, click Download Excel Template. The template is a pre-formatted .xlsx with three tabs:
- User Guide -- in-file instructions
- Products -- one row per product, column headings pre-set
- Config -- business name, logo, colours, display settings
Fill it in and upload via the Upload Spreadsheet section in the Admin panel.
Use this path when starting from scratch or when you want exact control over the column structure.
Spreadsheet format
SheetDropper reads .xlsx (Excel) files. The file must have two tabs: Products and Config.
The Products tab has a header row on row 1 and one product per row below. Column order is not significant -- columns are matched by name.
Columns fall into two groups:
Fixed columns
Reserved column names that map to specific catalogue fields (product_name, category, price, etc.). See Column reference.
Attribute columns
Any column name that isn't reserved. Each becomes a filter dropdown in the catalogue, using the column header as the dropdown label.
If you're using AI Import, you don't need to rename columns to match the fixed set -- the mapping step handles that.
Column reference
Reserved column names in the Products tab. Only product_name is required for a row to be valid. Any column not listed here is treated as an Attribute Filter.
| Column | Description | |
|---|---|---|
| product_name | The main display name shown in the catalogue listing and product page. | Required |
| category | Top-level grouping, e.g. "Power Tools", "Fasteners". Products are grouped and navigated by category. | Optional |
| subcategory | Secondary grouping within a category, e.g. "Angle Grinders" within "Power Tools". | Optional |
| price | Numeric price value only, no currency symbols or text (e.g. 12.50 not $12.50). | Optional |
| price_unit | How the price is quoted, e.g. "each", "per metre", "per box of 100". Shown below the price. | Optional |
| description | Short description shown in the catalogue listing, 1-2 sentences. | Optional |
| long_description | Detailed product information, shown on the individual product page only, not in the catalogue listing. | Optional |
| image_url | Full web URL of the primary product image (must start with https://). Shown as a thumbnail in the table and full size on the product page. | Optional |
| image_2_url, image_3_url | Additional product images shown on the product page. | Optional |
| meta_description | SEO description for the product page. If omitted, the short description is used instead. | Optional |
| sort_order | A number for manually controlling the order products appear within a category. Lower numbers appear first. | Optional |
| stock_qty | Available stock quantity. When cart is enabled, the checkout enforces this limit and the catalogue can show a low stock indicator. Leave blank for unlimited stock. | Cart |
| gst_rate | Per-product GST rate as a decimal (e.g. 0.1 for 10%). Overrides the account-wide GST setting for this product. | Cart |
| weight_kg | Product weight in kilograms, used for AusPost shipping rate calculations. Falls back to 0.1 kg if omitted. | Cart |
| length_cm, width_cm, height_cm | Parcel dimensions in centimetres, used for AusPost rate calculations. Fall back to 10 × 10 × 10 cm if omitted. | Cart |
| Any other column | Becomes an Attribute Filter dropdown in the catalogue, e.g. Size, Grade, Material, Colour, Thickness. | Attribute |
Design settings
The Config tab controls branding and display: business name, logo, colours, fonts, and default layout. Values in this tab are applied on upload.
The same settings can be edited live via Site Settings in the Admin panel or through the Catalog Manager desktop app, without re-uploading the spreadsheet.
Key fields
- business_name -- heading text in the catalogue header
- business_info -- subheading shown below the business name
- contact_info -- footer text (phone, email, address)
- logo_url -- full URL to a logo image, or upload via the desktop app
- primary_color -- accent colour, hex code (e.g. #1F2D3D)
- currency_symbol -- prefix shown before prices (AU$, $, £, €)
- catalog_layout -- table or grid; the default view shown to customers
Colour fields accept hex codes typed directly into the cell. The template ships with default values in every field, so unset fields fall back to the defaults rather than blank.
Admin panel
The Admin panel is at sheetdropper.com/c/your-slug/admin. Access requires the admin password set on your account. The panel is organised into tabs across the top.
Import tab
Contains all upload and restore actions:
- Smart Import -- drop in any .xlsx, AI maps the columns, review and upload
- Upload Spreadsheet -- upload a pre-formatted template file directly
- Download Template -- download a blank or pre-filled Excel template
- Backups -- three server-side backup slots; restore any slot with one click
Orders tab
Lists all customer orders when the cart add-on is active. See Orders for full details.
Analytics tab
Shows visit and product view stats, top search terms, and -- when cart is active -- cart revenue and order metrics.
Settings tab
Edit branding and display settings live: business name, colours, fonts, logo, header, footer, and layout defaults. Changes take effect immediately without a re-upload.
Cart Settings tab
Stripe Connect setup, GST configuration, stock tracking toggle, postcode requirements, and shipping options. Only shown when the cart add-on is active.
Account tab
Admin password change, API key (for the desktop app), and iframe embed code.
Orders
The Orders tab appears in the Admin panel when cart is active. It lists all customer orders with status, total, and customer details.
Order status flow
Each order progresses through a set of status steps shown as a clickable progress bar. Click any step to advance or retreat the order to that status.
- Delivery orders: New → Processing → Shipped → Delivered
- Pickup orders: New → Processing → Ready for Pickup → Picked Up
- Cancelled: accessible at any point via the Cancel button or by stepping back on the progress bar
Status updates take effect immediately and trigger customer emails at key steps (e.g. when a pickup order is marked Ready, the customer receives their pickup code).
Pickup codes
For click & collect orders, a unique pickup code is generated when the order is placed and printed on any order printout. The customer does not receive the code until you mark the order as Ready for Pickup -- at that point an email is sent with the code to show on collection.
Printing
Each order has a Print button that opens a formatted order slip in the browser print dialog. Printing an order automatically moves it from New to Processing.
Refunds
The Refund button opens a panel where you can specify which items to refund and how many of each. Refunds are processed through Stripe and a confirmation email is sent to the customer. Shipping can optionally be included in the refund. Partial refunds are supported.
Order actions
- Copy Address -- copies the delivery address to the clipboard
- Print -- opens the formatted order slip for printing
- Refund -- initiates a full or partial Stripe refund
- Notes -- add internal notes to an order (not visible to the customer)
- Delete -- permanently removes the order record
Emergency controls
Two toggles at the top of the Admin panel. Both take effect immediately and require no file upload.
Hide All Prices
Replaces every price in the public catalogue with the text Contact for pricing. Underlying price data is not changed; only public display is affected. Toggle Show Prices to revert.
Take Catalogue Offline
Replaces the public catalogue with a maintenance message. Product data is preserved. Toggle Bring Online to revert.
Neither control has a confirmation step -- state changes as soon as the toggle is clicked.
Desktop app: Catalog Manager
Catalog Manager is a Windows app that connects to your catalogue via the account API key. It provides the same core actions as the web Admin panel, plus local backups, a live preview, and a full order management interface.
Download the installer from sheetdropper.com/static/downloads/catalog-manager-setup.exe. On first launch, paste your API key from the Admin panel's Account tab.
Dashboard
Product count, last-updated timestamp, online/offline toggle, and quick status at a glance.
AI Review
Column mapping review screen, shown after a Smart Import analysis. Hidden until a file is analysed.
Import
Smart Import and template upload drop zones, server backup slots, and a link to open the local backup folder.
Configure & Preview
Edit branding settings with a live iframe preview at 390, 768, 1280, 1440, and 1920 px viewports.
Analytics
Visit stats, top searches, top products, and cart revenue and order metrics when cart is active.
Cart Settings
Stripe Connect setup, GST options, stock tracking, postcode toggle, and shipping option configuration.
Orders
Full order management: filter tabs, expandable order rows, in-place progress bar, refund panel, print, copy address, and notes.
Help
In-app documentation and a support contact form.
Local backups
Every upload from the desktop app saves a timestamped local backup to Documents\Catalog Manager Backups\ before sending. Any local backup can be restored from the Import screen. The app also auto-snapshots the current config on first connect each day.
Browsing the catalogue
The public catalogue is at sheetdropper.com/c/your-slug/. No login is required.
Search
The search bar filters products live as the user types. It matches against product names, descriptions, and all attribute values. No page reloads.
Categories
The left sidebar lists all categories and subcategories present in the dataset. Selecting one restricts the product list to that group. All Products clears the selection.
Filters
The right panel renders a dropdown for every Attribute column in the spreadsheet. Available options are re-computed based on the active category and search query; options that would return zero results are hidden. Multiple filters can be active simultaneously.
Table and grid views
Toggled from the view switcher. The default view is set in the Admin panel; the customer's manual toggle overrides it for their session.
Product pages
Each product has a permanent URL. The product page shows the long description, all image fields, attribute values, and price.
Mobile
Categories and filters collapse into bottom-bar buttons that open as slide-up drawers, leaving the product list visible behind them.
Shopping cart
Cart & Checkout is an optional add-on. When enabled, customers can add products to a cart and complete an order with online payment. When disabled, no cart UI appears in the catalogue.
Adding to cart
Each product in the catalogue shows an Add to Cart button. The cart icon in the page header shows a running item count. Customers can adjust quantities or remove items from the cart page before proceeding to checkout.
If stock tracking is enabled for a product, the checkout enforces the available stock quantity and prevents over-ordering.
Checkout
Checkout collects the customer's name, email, phone, and delivery address. As the customer types their postcode, available shipping options are displayed and priced. The customer selects a shipping method, then enters card details to pay.
Payment is processed by Stripe. The card number is entered directly on the checkout page -- no redirect to a third-party payment page. SheetDropper never stores card data.
Shipping options
Configured in the Cart Settings tab of the Admin panel. Options can include:
- Flat rate -- a fixed cost regardless of order size
- Free over amount -- free when the cart total reaches a threshold
- AusPost calculated -- live rate from Australia Post based on the customer's postcode and order weight, shown at checkout as Express and/or Regular options
- Pickup / Click & Collect -- customer collects in person; a pickup code is generated for the order
- Delivery included -- shown as free, no shipping cost collected
AusPost rate calculations use the weight and dimension columns from your spreadsheet (weight_kg, length_cm, width_cm, height_cm). Products without these values use a small fallback parcel size.
GST
Configure in Cart Settings whether your prices are GST-inclusive or exclusive, and how prices are displayed. GST is calculated and shown as a separate line at checkout, and a GST amount appears on the order confirmation email. Per-product GST rates can be set via the gst_rate spreadsheet column to override the account-wide setting for individual items.
Order confirmation
After a successful payment:
- The customer receives a confirmation email with a full order summary including items, shipping method, and total
- The business receives an order notification email with the customer's contact details and delivery address
- The order appears immediately in the Orders tab
Pickup orders
For click & collect orders, a unique pickup code is generated when the order is placed. It appears on the printed order slip immediately. The customer does not receive the code until you mark the order as Ready for Pickup, at which point an email is sent with the code to show on collection.
Embedding in your website
The catalogue can be embedded in any web page via an iframe. The embed route (/embed) strips the site header and footer so only the catalogue body is rendered inside the frame.
The Admin panel's Account tab shows a copy-ready iframe snippet. The form is:
<iframe
src="https://sheetdropper.com/c/your-slug/embed"
width="100%"
height="800"
frameborder="0"
style="border:none"
></iframe>Paste this into your page's HTML at the position where the catalogue should appear. Adjust the height attribute to suit your layout. Search, filters, categories, and product pages all function normally inside the iframe.
FAQ
How do I update prices?
Edit the spreadsheet, then upload it via Smart Import or the Admin panel's Upload section. The catalogue reflects the new data as soon as the upload completes. Uploads can also be initiated from the Catalog Manager desktop app.
Can I use an existing spreadsheet?
Yes. Smart Import accepts arbitrary column names and layouts; no renaming is required. Use the template only if you're starting from scratch or want exact control over the column structure.
What if the AI maps something wrong?
The review screen lets you change any mapping dropdown before the upload is committed. Closing the review discards the proposed mapping. If the result is still off, try rewording column headers in the source file -- clearer header text typically yields better mappings.
How do I add filter dropdowns?
Add a column to the spreadsheet with a header that isn't one of the reserved names (product_name, category, price, etc.). The header text becomes the filter label; distinct values in that column become the filter options.
How do I add product images?
Put a full public URL in the image_url column. The image must be reachable from a browser without authentication. Images can be hosted anywhere: your own site, cloud storage, or a CDN.
What happens if I upload the wrong file?
Every upload writes the previous dataset to a backup slot automatically. Open the Admin panel's Import tab and click Restore on any of the three server-side backup slots to roll back.
Can customers search within a category?
Yes. Search and filters compose: selecting a category, typing a search term, and applying attribute filters all narrow the same result set simultaneously.
Can I have multiple catalogues?
Each catalogue is a separate account with its own slug, admin panel, and API key. Email info@sheetdropper.com to add catalogues to an existing account.
Can customers place orders through the catalogue?
Yes, with the Cart & Checkout add-on. When enabled, customers can add products to a cart, enter their delivery details, choose a shipping method, and pay by card. See Shopping cart for full details. The cart can be left disabled if you only need a browsable catalogue with no ordering.
How do I set up AusPost shipping rates?
In the Cart Settings tab, add an AusPost Calculated shipping option and enter your sender postcode. For accurate rates, add weight_kg and dimension columns to your spreadsheet. Without weights, SheetDropper falls back to a small parcel estimate.
How do I process a refund?
Open the order in the Orders tab and click Refund. Select which items and quantities to refund, and whether to include shipping. The refund is processed through Stripe and a confirmation email is sent to the customer. Partial refunds across multiple transactions are tracked and aggregated per order.