Token estimate: ~52,000 # Wholesale Handler > Customer order portal for wholesalers - customers order online 24/7 instead of phoning, emailing, or texting. No transaction fees. Last updated: 2026-07-04 Wholesale Handler is a self-service B2B ordering portal built for small wholesale businesses such as bakeries, fresh produce wholesalers, egg producers, and seasonal operations like Christmas tree farms and pumpkin growers. Customers place orders 24/7 with delivery dates through the portal - no more phoning, emailing, or texting to chase. Merchants manage orders, products, customers, invoices, and delivery rules from one place, with an aggregated production schedule turning incoming orders into a daily or weekly plan. Invoice and payment tracking are built in: merchants generate invoices from orders, send them by email or PDF, and customers can declare payments for merchants to confirm. An optional public storefront lets new customers find you through search engines. No transaction fees, no contract, and a 30-day free trial with no credit card required. ## What merchants can do - **Order management** - search, filter, and mark orders as processed; print packing slips - **Standing orders** - weekly, fortnightly, three-weekly, or four-weekly recurring orders, set up by the customer or by you on their behalf. Each upcoming order is generated automatically at your cut-off time. Three days before the order is placed, the customer gets a preview email with the line items at today's prices, a one-click "Skip this order" link that doesn't need a login, and a link to edit the schedule - if they do nothing, the order fires normally. Pause to a specific resume date or pause indefinitely; skip a single occurrence; edit any line anytime. Optional minimum-spend override per schedule. Up to 10 active per customer - **Product catalogue** - add products with names, descriptions, pack sizes, prices, and VAT rates. Mark a product unavailable for one or more date ranges, each tagged with a reason (weather delay, limited stock, discontinued, or other) and an optional customer-facing note, with an open-ended "until further notice" option - customers cannot order it for a delivery date inside a window - **Stock tracking (opt-in)** - optional per-product stock tracking - leave off for unlimited stock (produce-to-order default), or enable to track finite quantities. The system prevents overselling, and customers can subscribe to email notifications when out-of-stock products are restocked - **Customer management** - invite customers via email, add delivery notes and private merchant-only notes - **Invoice generation** - create invoices from orders, batch-invoice multiple orders, send invoices via email, export as PDF, mark invoices as paid - **Payment tracking** - customers declare payments, merchants confirm or dispute after checking their bank. Disputes send a professional email written by Wholesale Handler so the merchant doesn't have to compose it. Payment references, bank check history, and a full timeline on every invoice. Optional for both sides - **Data export** - export invoice line items to CSV for accounting software. Preset or custom date ranges, column selection and renaming, settings saved per merchant - **Dashboard** - action items (pending orders, uninvoiced orders, unconfirmed payments), this month vs last month stats (orders, revenue, average order value), top products and customers, quiet customer alerts - **Public storefront (opt-in)** - a public product page for your business that search engines can find. Choose which products to show, control pricing with a dedicated storefront price list (separate from your customer prices), show or hide prices entirely. Disabled by default - nothing is published unless you set it up - **Production schedule** - daily and weekly views aggregated from all incoming orders - **Order profiles** - reusable bundles of delivery days, cut-off time, lead time, delivery charge, and minimum spend, assigned per customer. Group customers who share a delivery run onto one profile - e.g. a distant region you only serve on Wednesdays and Thursdays - update the profile once and every customer on it follows. Up to 20 profiles; merchants who deliver to everyone on the same days just keep the single default. Holidays and blackout dates are global across all profiles - **Cut-off message** - optionally write a short message that customers see once a delivery date has locked - tell them in your own voice how to reach you if they really need a last-minute change. - **Price lists** - create up to 20 named price lists with per-product pricing. Assign customers to a list; they see only their price, never the list name. Set prices directly or as percentage discounts from the default list. Rounding controls for charm pricing across all currencies - Delivery charges and minimum spend thresholds - **Customisable business details** - configure invoice and packing slip content including business info, bank details, and returns policy ## What customers can do - Place orders 24/7 from any device - Browse the product catalogue with prices, pack sizes, and availability - View order history with status (pending or processed) - Reorder from previous orders - Set up your own standing orders for recurring deliveries (weekly, fortnightly, three-weekly, or four-weekly). Three days before each order is placed, get a preview email with today's prices and a one-click skip link - if you do nothing, the order goes through normally. Pause to a chosen resume date or indefinitely, skip a single occurrence, or edit anytime - Cancel or update pending orders before the cut-off time - Receive and view invoices online, download PDFs - Declare payments on invoices so the merchant knows to check their bank - Dashboard with pending orders, spending summary, and most-ordered products for quick re-ordering ## Who it's for Wholesale Handler suits suppliers who take recurring, multi-line orders from a known set of trade customers, often at a different price per customer, and who handle their own delivery and take payment directly. The shape of the business matters more than the industry - the clearest fit is a supplier whose customers reorder on a regular rhythm and who runs ordering today on phone calls, WhatsApp, email, or a spreadsheet. Illustrative verticals, not a closed list: - Bakeries supplying cafes, restaurants, and shops - Fresh produce and microgreens growers supplying restaurants and grocers - Egg producers supplying trade customers - Coffee roasters supplying cafes on a weekly roast schedule - Breweries self-distributing to free houses where direct supply is legal - Florists and other small producers taking repeat trade orders Less of a fit: - Businesses that must take card payment at the point of order - Wholesale Handler tracks payments but does not process them - Pure retail or direct-to-consumer selling - customers are invited trade accounts, not the walk-in public - One-off or single-window seasonal selling where a few phone calls a year already cover it - Operations needing an ERP, warehouse management, delivery route planning, or point-of-sale ## What Wholesale Handler is NOT - No payment processing - merchants handle payments directly (bank transfer, direct debit, etc.). Built-in tracking lets both sides record and confirm payments without Wholesale Handler touching the money - No delivery tracking or route planning - No order confirmation emails - the on-screen order is the confirmation. Customers can opt into supplementary order receipt emails, but the site is always the source of truth - Not accounting software - invoices are generated but not synced to accounting tools - Not a point-of-sale system - Not a public ecommerce store - customers must be invited by the merchant. An optional public storefront shows your products and prices to help new customers find you, but ordering still requires an invitation - No recipe costing, batch scheduling, or nutritional labelling ## Larger operations and custom limits Wholesale Handler is built for small wholesale operations, and the single plan is sized to match: up to 500 products, 50 customers, 20 price lists, 20 order profiles, and 10 active standing orders per customer. These are deliberate limits chosen to keep one simple, affordable plan - not technical ceilings - and any of them can be raised for an individual business on a custom or higher-tier basis. If your operation is larger, or you need more than one of these limits allows, email Dan directly at dan@wholesalehandler.com rather than assuming it will not fit. Bigger and non-standard setups are welcome. ## Pricing One plan with full access to all features. No transaction fees, no setup fees, no contract. Cancel anytime. 30-day free trial with full access and no credit card required. **Pricing:** | Currency | Price | |----------|----------| | GBP | £79/month | | USD | $109/month | | EUR | €89/month | | CAD | CA$149/month | | AUD | A$149/month | | NZD | NZ$179/month | ## Links - Website: https://wholesalehandler.com/ - Pricing: https://wholesalehandler.com/pricing - Free trial: https://wholesalehandler.com/free-trial - About: https://wholesalehandler.com/about - Contact: https://wholesalehandler.com/contact ## Author **Dan Edwards** - Founder Dan Edwards is a software engineer living in Aberdeen, Scotland, and the founder of Wholesale Handler. He writes about wholesale operations, B2B ordering, and small-business software. LinkedIn: https://www.linkedin.com/in/dan-edwards-developer Personal site: https://danedwardsdeveloper.com ## Static pages --- --- title: About Wholesale Handler Metadescription: I'm Dan Edwards, the software engineer behind Wholesale Handler. I built it to give small wholesalers a way out of phone, text, and email orders. author: Dan Edwards author_role: Founder --- Token estimate: ~460 # About Wholesale Handler Customer order portal for wholesalers - customers order online 24/7 instead of phoning, emailing, or texting. No transaction fees. ## About me I'm Dan Edwards, a software engineer in Aberdeen, Scotland. You can find out more about me on my [personal homepage.](https://danedwardsdeveloper.com/ "Portfolio for Dan Edwards, software engineer") ![Dan C. Edwards, software engineer and founder of Wholesale Handler, the customer order portal for wholesalers.](https://wholesalehandler.com/dan-c-edwards.png) ## Why I made Wholesale Handler A few years ago, my mum bought a village shop in the New Forest in Hampshire, UK, and I was very surprised to find out that the majority of her suppliers took orders over the phone. I couldn't believe all these suppliers were doing everything over the phone - it must never stop ringing! But when I looked into existing solutions, I realised that most are either far too expensive or over complicated for the kinds of tiny wholesaler my mum buys from - like her honey supplier who runs his business completely solo. I created Wholesale Handler to provide a service that makes wholesale operations easier and lets customers take orders 24/7 without the phone chaos. [See all features.](/articles/features "Features of Wholesale Handler") ## Contact Wholesale Handler is a new service and I'm actively working to improve it based on user feedback. If you have questions, suggestions, or run into any issues, please email me at [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com) and I'll get back to you as soon as I can. --- --- title: Contact Metadescription: Get in touch with Dan Edwards, founder of Wholesale Handler. Questions, feedback and feature requests welcome. author: Dan Edwards author_role: Founder --- Token estimate: ~160 # Contact Wholesale Handler is a new service and I'm actively working to improve it based on user feedback. If you have questions, suggestions, or run into any issues, please email me at [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com). ![Dan C. Edwards, software engineer and founder of Wholesale Handler, the customer order portal for wholesalers.](https://wholesalehandler.com/dan-c-edwards.png) Dan Edwards, founder of Wholesale Handler. --- --- title: Privacy policy Metadescription: How Wholesale Handler handles your data. Plain-English privacy policy covering what I collect, how I use it, and your rights. author: Dan Edwards author_role: Founder updated: 2026-07-04 --- Token estimate: ~1,800 # Privacy policy By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. ## The short version Wholesale Handler is built and run by me, Dan Edwards. I collect the minimum data needed to run the service. I don't sell it, share it with advertisers, or do anything unexpected with it. Your payment details go directly to Stripe - I never see your card numbers. ## What I collect When you create an account, I store - Your name and email address - Your business name - A hashed version of your password (never stored in plain text) As you use the service, I also store - Products, orders, invoices, and customer relationships you create - Business settings you configure (delivery preferences, packing slip text, invoice details) - Your currency (detected automatically from your country) and timezone I do not collect or store payment card details. Payments are handled entirely by Stripe. ## What I use it for Running the service. That's it. I send the following emails, all transactional - Email confirmation when you sign up - Password reset requests - Email change verification - Customer invitations (sent by merchants to their customers) - Invoices - Restock notifications - Subscription confirmation - Account deletion notifications (sent to connected businesses) - Inactive account warnings (if you haven't signed in for over a year) I do not send marketing emails. ## Where your data is stored Different parts of the service are hosted across the EU and US - Database hosted by Neon (AWS US-East-1, N. Virginia) - Application hosted by Fly.io (Ashburn, Virginia) - Emails sent via Postmark (EU endpoint) - Cache hosted by Upstash (AWS US-East-1, N. Virginia) The cache only stores storefront content that merchants have explicitly submitted for publication. No personal information, account details, or authentication data is cached. Stripe processes payment data on their own infrastructure under their own privacy policy. ## Who else has access to your data | Service | What they receive | Why | | --- | --- | --- | | Stripe | Payment and billing data | Processes subscriptions | | Postmark | Email addresses | Delivers transactional emails | | Neon | All account data | Hosts the database | | Fly.io | All account data | Hosts the application | | Inngest | Event metadata | Handles background email delivery | | Sentry | Error details, IP addresses, browser information | Monitors errors and performance | | Upstash | Storefront content that merchants have submitted for publication (business details, product listings, prices) | Serves approved public storefront pages | None of these services use your data for their own marketing purposes. ## AI and machine learning I don't use your data, or your customers' data, to train artificial intelligence or machine-learning models. I also don't share your data with any AI provider for training purposes. None of the sub-processors above receives your data for AI training, and the contracts I have with them prohibit it. Wholesale Handler doesn't currently use generative AI inside the product. If I add features that do (for example, drafting an email to a customer based on order context), I'll explain in advance which AI provider is involved, what data is sent to it, and how to opt out. I'll never send your data to a third-party AI provider without telling you first. ## Cookies Wholesale Handler sets the following cookies | Name | Purpose | Duration | | --- | --- | --- | | token | Keeps you signed in to your account | 7 days | | menu\_sidebar | Remembers whether the sidebar menu is open or closed | 7 days | | demo\_industry | Remembers which industry demo you viewed so the demo stays consistent as you browse | 90 days | | current\_party | Remembers whether you are viewing the demo as a seller or buyer | 365 days | | trading\_currency | Remembers your preferred currency for products, orders and invoices | 365 days | | billing\_currency | Remembers your preferred currency for the Wholesale Handler subscription | 365 days | | delivery\_precision | Remembers whether you schedule deliveries by date or by week, so the order-profiles screen paints correctly | 365 days | During checkout, Stripe may set its own cookies (such as \_\_stripe\_mid and \_\_stripe\_sid) for fraud prevention. I don't control these - see [Stripe's cookie policy](https://stripe.com/gb/cookie-settings) for details. ## Browser local storage I store a small amount of functional data in your browser's local storage to keep the demo working between page loads | Name | Purpose | | --- | --- | | demo-access-token-merchant | Remembers your demo session so your changes are saved | | demo-access-token-customer | Remembers your demo session for the customer view | | dashboard-period | Remembers your selected time range on the dashboard | This data stays in your browser and is not sent to any third party. ## Analytics I use Umami, a self-hosted analytics tool that does not use cookies and does not collect personal data. It records anonymous page views, device types, browsers, and country-level location. No individual visitors are identified or tracked. I do not use tracking pixels, advertising scripts, or any analytics service that profiles users. ## Error monitoring I use Sentry to detect and fix errors. When something goes wrong, Sentry receives technical details about the error including your IP address and browser information. ## How long I keep your data Your data is kept for as long as your account is active. If you cancel your subscription, your data remains available in read-only mode. If you haven't signed in for over a year, I'll send you an email with 30 days notice before scheduling your account for deletion. Signing in at any point resets the clock. When a merchant deletes a customer, financial records (orders and invoices) are preserved for accounting compliance. ## Deleting your data You can delete your business data (products, orders, invoices, customers) from the [settings](/settings) page in the app. To delete your account entirely, go to the Danger zone section on the [settings](/settings) page. Account deletion is scheduled immediately but your data is kept for 90 days in case of mistakes or fraudulent account takeovers. After 90 days, all data is permanently removed. If you change your mind during the 90-day window, email me at [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com) and I can restore your account. ## Your rights Under UK GDPR, you have the right to - Access the personal data I hold about you - Correct inaccurate data - Request deletion of your data - Export your data in a portable format - Object to processing of your data To exercise any of these rights, email me at [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com). ## Changes to this policy If I make changes, I'll update the date at the top of this page. For significant changes, I'll notify you by email. ## Contact Dan Edwards [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com) --- --- title: Terms and conditions Metadescription: Terms and conditions for using Wholesale Handler. Plain-English contract covering subscriptions, billing, your data, and what happens if things go wrong. author: Dan Edwards author_role: Founder updated: 2026-05-13 --- Token estimate: ~4,000 # Terms and conditions By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. ## The short version Wholesale Handler is a subscription service I run as a sole trader from Aberdeen, Scotland. You use it to take orders from your wholesale customers; I keep it running and charge you a flat monthly fee. These terms are the contract between us. They cover the boring but important bits: how the subscription works, what happens with your data, what I'm responsible for, and what I'm not. I've written them in plain English because lawyer-speak is mostly hostile to readers without a law degree. If you don't agree with these terms, please don't use the service. ## 1\. Who I am Wholesale Handler is operated by me, Dan Edwards, trading as a sole trader. My contact email is [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com). When these terms say "Wholesale Handler", "the service", "I" or "me", they mean me, Dan Edwards. When they say "you" or "your", they mean the business using the service. ## 2\. About these terms These terms apply every time you use Wholesale Handler. By creating an account, paying a subscription, or just continuing to use the service after I publish a new version, you agree to them. Wholesale Handler is for businesses only. You confirm that you are using the service in the course of a business, not as a consumer. UK consumer rights legislation (such as the Consumer Rights Act 2015) does not apply. You must be old enough under the law of your country to enter into a binding business contract. In Scotland and in most of the UK that's 16; in some places it's 18. If you're representing a business that you don't yourself own, you also need that business's authority to agree to these terms. These terms work together with my [privacy policy](/privacy-policy). If anything in the privacy policy contradicts these terms about how data is handled, the privacy policy wins. ## 3\. Your account You need an account to use the service. When you register, you confirm that the information you give me is accurate and that you have authority to bind your business to these terms. You're responsible for keeping your password safe. If you suspect someone else has access to your account, change your password from the settings page and let me know. You're also responsible for everything that happens under your account, including the actions of anyone you invite as a customer. If a customer of yours misuses the service, that's between you and them, not me and them. ## 4\. Free trial New accounts get a 30-day free trial with full access to the service. You don't need to enter card details to start the trial. The trial ends in one of three ways: - You subscribe during the trial. Stripe takes your card details when you subscribe but doesn't charge you until day 30. - You don't subscribe by day 30. Your account pauses but your data is kept. You can subscribe later to pick up where you left off. - I end the trial early if I reasonably believe you're abusing it (for example, creating multiple accounts to keep extending the trial). ## 5\. Subscription, billing, and renewal The subscription is a flat monthly fee. Current prices are listed on the [pricing page](/pricing). You'll see the price in your local currency when you subscribe. Payments are processed by Stripe. I don't see or store your card details; they're held by Stripe under [their own terms](https://stripe.com/legal/ssa). By subscribing, you also agree to Stripe's terms with respect to the payment. Your subscription renews automatically every month on the same date Stripe took the first payment. Renewal happens until you cancel. I'm not currently registered for UK VAT, so the prices you see are the prices you pay - no VAT is added at checkout. If I register for VAT in future I'll let you know in advance and add VAT at the prevailing rate from a stated date. Stripe sends an electronic receipt to your billing email after each successful payment. Your full payment history is available in your Stripe customer portal, which I can link you to on request. ## 6\. Failed payments If Stripe can't take a payment, it will retry automatically over several days. If the payment still fails after the retries, I'll suspend your account until it's paid. Suspension means your customers can't place new orders, but your data is kept. Once payment goes through, the account reactivates automatically. If a suspended account stays unpaid for more than 30 days, I may treat the subscription as cancelled and start the data-deletion process described in section 15. ## 7\. Cancellation You can cancel your subscription at any time from the settings page. Cancelling stops the next renewal; it doesn't end the current paid period. You keep full access to the service until the end of the period you've already paid for. After that, your account moves into a read-only state (you can sign in and export data, but customers can no longer place orders). I don't give pro-rata refunds for unused days in the period you're cancelling out of. I may cancel your subscription too, with reasonable notice, if I'm winding down the service. If that happens I'll refund any payment you've made for a period you won't get to use. ## 8\. Price changes If I change the subscription price, I'll give you at least 30 days' notice by email before the new price takes effect. If you don't want to pay the new price, you can cancel before it takes effect and you'll keep the old price for any remaining time you've paid for. Existing customers usually keep their old price for as long as they stay subscribed continuously - I generally only apply price changes to new sign-ups. If that ever changes I'll tell you in advance. ## 9\. Your data Your data is yours. I act as a data processor for the personal information you put into the service (your customers' names, email addresses, order history, and so on). You decide what to collect; I keep it safe and process it on your instructions. How I handle data, where it's stored, who else sees it, and what your rights are is all spelled out in my [privacy policy](/privacy-policy). The privacy policy is part of these terms. I won't use your data for any purpose other than running the service and doing the things described in the privacy policy. I won't sell it, share it with advertisers, or train AI models on it. If you need a Data Processing Agreement under UK GDPR Article 28, the privacy policy together with these terms is intended to satisfy that. Email me if you want something signed for a lawyer. ## 10\. Acceptable use You can use Wholesale Handler for anything a wholesale business reasonably needs to do. You can't use it to: - Resell access to the service to third parties (your customers can use your portal, but you can't sell that portal as your own service) - Reverse engineer, scrape, or copy the service for the purpose of building a competitor - Send spam, phishing emails, or anything else illegal through the service - Upload content that infringes someone else's copyright, trademark, or other rights - Probe, attack, or otherwise interfere with how the service runs - Use the service to handle goods that are illegal to sell in the UK or in your or your customer's country If you breach this section I may suspend or terminate your account without notice. ## 11\. Service availability and changes I try hard to keep the service available 24/7. I don't promise any specific uptime percentage, but in practice availability is very high. Downtime in the last year has been measured in minutes per month, not hours. Some downtime is planned (for upgrades and maintenance) and some isn't. I'll give notice for planned downtime when I can. I add, change, and occasionally remove features. If I remove a feature you depend on, I'll give you reasonable notice by email and try to suggest an alternative. I won't make a change that materially reduces the value of the service without that notice. I might also offer beta or experimental features marked as such. These are provided as-is and may break, change, or disappear without notice. ## 12\. Intellectual property I own Wholesale Handler: the code, the design, the brand, and all the prose on the marketing pages and articles. None of that transfers to you when you subscribe. You own your data and your business content (your products, prices, customer list, invoices, and so on). You give me a non-exclusive licence to host and process that content for the purpose of running the service for you. That licence ends when your account is deleted. If you give me feedback, suggestions, or feature requests, I can act on them and incorporate them into the service without owing you anything. You're not transferring ownership of anything when you do that; you're just helping me make the service better. ## 13\. Third-party services The service relies on a small set of third-party suppliers to run. The main ones are: - **Stripe** for payment processing - **Neon** for the database (AWS Europe, London) - **Fly.io** for the application servers (London) - **Postmark** for sending transactional emails - **Upstash** for caching public storefront content - **Sentry** for error monitoring - **Inngest** for background email jobs A full and current list is in the [privacy policy](/privacy-policy). Each of those providers has its own terms and privacy policy that apply to their part of the chain. If one of them goes down, the service may go down with it. I treat that as my problem to fix and choose suppliers carefully, but I can't make any third party meet a particular SLA on my behalf. ## 14\. Suspension and termination I can suspend or terminate your account if: - You materially breach these terms - Your payment fails and isn't fixed within 30 days - A regulator or law-enforcement agency asks me to (and the request is lawful) - I have reasonable grounds to believe you're using the service to commit fraud or break the law For minor or fixable issues I'll get in touch first and give you a chance to put it right. For anything serious I may act without notice. You can terminate your account at any time by cancelling and then deleting it from the settings page. ## 15\. Data export and deletion after termination When your account ends - whether you cancel, or I terminate it, or you delete it from settings - you have a window to export your data before it's deleted. Account deletion is scheduled immediately when you request it, but data is kept in a recoverable state for 90 days. This protects you from mistakes and fraudulent account takeovers. During those 90 days you can email me at [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com) to restore the account. After 90 days, your data is permanently deleted from the database. Some financial records (orders and invoices) are kept beyond that for accounting compliance, as described in the privacy policy. Stripe keeps its own copy of your billing history under its own retention rules; that's outside my control. ## 16\. Warranties The service is provided "as is" and "as available". To the fullest extent the law allows, I don't make any warranties or representations about it, including any implied warranties of satisfactory quality, fitness for a particular purpose, or non-infringement. I don't warrant that the service will be uninterrupted, error-free, free of harmful components, or that any defect will be corrected. I don't warrant that the service will meet your specific business requirements. If a part of this section is unenforceable under UK law (for example, because I can't validly exclude a particular implied term in a B2B contract), the rest of this section still applies. ## 17\. Limitation of liability Nothing in these terms excludes or limits my liability for death or personal injury caused by my negligence, fraud, fraudulent misrepresentation, or any other liability that can't be excluded by law. Subject to that: - I'm not liable for any indirect, incidental, special, consequential, or punitive losses, including loss of profits, loss of business, loss of goodwill, or loss of data. - My total aggregate liability under or in connection with these terms - whether in contract, tort (including negligence), breach of statutory duty, or otherwise - is capped at the amount you paid me in subscription fees in the 12 months immediately before the event giving rise to the claim. The service is a low-cost SaaS product, not enterprise software with enterprise-grade contractual guarantees. This liability cap reflects that. ## 18\. Indemnity You agree to indemnify me against any third-party claim, loss, or damage I suffer as a result of: - The content you upload to the service (products, customer details, communications, and so on) - Your customers' use of the portal you operate using the service - Your breach of these terms - Any claim by HM Revenue & Customs or another tax authority relating to your VAT, your customers' VAT, or your accounts In plain terms: if a customer of yours sues me because of something you sold them through the service, that's on you, not me. ## 19\. Force majeure I'm not in breach of these terms if something outside my reasonable control prevents me from running the service. That includes major outages at my suppliers, internet-level disruptions, natural disasters, war, civil unrest, government action, and pandemics. If a force-majeure event lasts more than 30 days, either of us can terminate the subscription without penalty. If you terminate, I'll refund any payment for a period you didn't get to use. ## 20\. Governing law and disputes These terms are governed by the law of Scotland. Any dispute arising under them is subject to the exclusive jurisdiction of the Scottish courts, with Aberdeen as the convenient forum. Before going to court, please email me at [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com). Most things I'd much rather sort out directly. ## 21\. Changes to these terms If I change these terms, I'll update the date at the top of this page and notify subscribed accounts by email. The new version applies from the date stated; continued use of the service after that date means you accept the new version. If you don't accept a change, you can cancel the subscription before the new version takes effect. You'll keep the existing terms for any time you've already paid for. ## 22\. General **Assignment.** I can transfer or assign my rights and obligations under these terms (for example, if I incorporate the business or sell it). You can't transfer your rights without my written consent, which I won't unreasonably withhold. **Notices.** Notices from me to you go to the email address on your account. Notices from you to me should go to [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com). **Severability.** If a court finds part of these terms unenforceable, the rest stays in force. **Entire agreement.** These terms, together with the privacy policy and the pages they link to, are the whole agreement between us. They replace any earlier discussions, emails, or drafts. **No waiver.** If I don't enforce a right under these terms straight away, that doesn't mean I've given it up. **No partnership.** Nothing in these terms creates a partnership, employment relationship, or agency between us. **Headings.** Section headings are there to help you find things. They don't affect how the terms are interpreted. ## Contact Dan Edwards [dan@wholesalehandler.com](mailto:dan@wholesalehandler.com) --- --- title: Pricing Metadescription: Simple, transparent pricing for Wholesale Handler. 30-day free trial. No credit card. No contract. author: Dan Edwards author_role: Founder --- Token estimate: ~310 # Pricing Wholesale Handler is £79 | US$109 | €89 | CA$149 | A$149 | NZ$179/month. No contract. No transaction fees. Cancel anytime. 30-day free trial with full access and no credit card required. [See all features.](/articles/features "Features of Wholesale Handler") ## Q&A **Q: Is there a free trial?** A: Yes. 30 days, full access, no card required to start. Subscribe at any point during the trial - Stripe takes your card details but does not charge you until the trial ends. The first payment is taken at the end of day 30. **Q: Are there any transaction fees?** A: No. Wholesale Handler is a flat monthly subscription. You handle payments with your customers directly your revenue is unaffected. **Q: What happens after the trial?** A: If you have not subscribed by day 30, your account pauses but your data is kept. Subscribe at any time to pick up where you left off. Seasonal businesses welcome. **Q: Can I cancel at any time?** A: Yes. There is no contract. If you cancel, your account stays active until the end of your current billing period. --- --- title: Product roadmap for Wholesale Handler Metadescription: Public roadmap for Wholesale Handler - the wholesale ordering portal. Shipped features, in-flight work, and the next batch of improvements. author: Dan Edwards author_role: Founder updated: 2026-06-19 --- Token estimate: ~2,700 # Product roadmap for Wholesale Handler What's shipped, what's in flight, and what's planned next on Wholesale Handler. By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. ![Red pushpin stuck into a paper road map](https://wholesalehandler.com/red-pin-on-map.png) Wholesale Handler is built solo and ships fast. Here's a live view of what's just landed (last 90 days), what I'm building right now, what's queued up next, and ideas I'm still mulling over. ## Shipped recently - **Pricing by weight and catch weight** _18 June 2026_ Two new ways to price a product alongside the usual flat per-unit price. Catch weight is for goods counted by the piece but billed by weight - a whole salmon, a leg of lamb, a wheel of cheese, a box of grapes - where every piece weighs a little differently. Customers order a count ("2 salmon") at your price per kg or lb and see a typical price based on a typical weight, so they know roughly what to expect; then at pick you record the real weight for each line and the order settles to the actual amount, which is what flows through to the invoice - "5.1 kg at $4.00/kg". Pricing by weight is for goods ordered as an exact weight directly, at a per-kg or per-lb rate settled at order time. No more averaging everyone out or hand-correcting invoices after the scale. - **Managed customers** _13 June 2026_ Bring your existing customer list onboard on day one without sending a single email. Take orders yourself by phone, text or in person and Wholesale Handler does the back-office. Optionally add their email for invoice delivery; optionally upgrade them to a full login when they're ready. One customer record across every stage, so order history is never lost in migration. - **Seasonal updates for customers** _10 June 2026_ Customers can subscribe to a weekly email that tracks their supplier's whole seasonal calendar - what's just come into season and what's about to go out, with a heads-up before a favourite's last week. It always looks forward: on a quiet week it widens its horizon up to a month rather than sending an empty "nothing changed". This is the plan-ahead companion to the existing per-product "Notify me", which still pings the instant one specific item is orderable again - turn on either or both. One-click unsubscribe from any email, no sign-in needed. - **Product codes - SKUs and barcodes** _5 June 2026_ Give every product its own SKU - a stock keeping unit, the short reference code wholesale buyers reconcile their orders against - on your records, packing slips and accounting export. If you already use SKUs in another system, type or paste your own. Otherwise Wholesale Handler suggests a short, memorable three-word code like "oak-hawk-fox" - far easier to read over the phone to a customer than a string of digits - and you can shuffle for a different one or clear it entirely if you don't use codes. Each product can also store the manufacturer's own barcode - a GTIN, UPC, EAN or produce PLU, the universal code printed on the carton - kept separate from your own SKU. - **Per-day cutoffs** _3 June 2026_ Give each delivery day its own ordering cutoff on an order profile, so a Saturday run can close to new orders Friday lunchtime while a Monday run stays open until Sunday evening - because each day's production starts at a different time. You set it the way you'd say it out loud, "order by noon, one day before", and the storefront locks each day to match. This also simplifies the old setup - the separate cutoff time and lead time, which interacted in confusing ways, collapse into a single clear cutoff per day. - **Seasonal availability** _3 June 2026_ Set a product as "available March to April" once and it repeats every year on its own - no re-entering dates each season. Out of season, customers aren't left guessing: instead of the product quietly disappearing, they see exactly why it can't be ordered and when it's coming back - "asparagus is out of season, back in March". It works for any recurring run, whether that's a summer crop, hot cross buns around Easter, or Christmas cakes in December, and a single product can carry more than one season across the year. Knowing when their favourites return is one of the things wholesale buyers value most. - **Order profiles** _31 May 2026_ Group customers who share a delivery schedule into a reusable profile - delivery days, cutoff time, lead time, delivery charge and minimum spend in one named bundle. A customer two hours away who can only be served Wednesday or Thursday goes on a "Far North" profile; update the profile once when the run changes and every customer on it follows. Merchants who deliver to everyone on the same days just keep the single default. - **Product availability windows** _31 May 2026_ Mark a product unavailable for one or more date ranges instead of letting it silently vanish from the catalogue. Each window carries a reason (weather delay, limited stock, discontinued or other) and an optional note customers see - "back in April", "frost damage" - or leave the end open for "until further notice". Customers can't order it for a delivery date inside a window. - **Install Wholesale Handler on your phone** _24 May 2026_ Open Wholesale Handler in your phone's browser and use "Add to Home Screen" (iPhone Safari) or "Install app" (Android Chrome). It opens in its own window with no browser chrome - the experience is the same as a native app you'd download from an app store, with none of the App Store gatekeeping. Same install for merchants and customers. - **Standing orders** _23 May 2026_ Weekly, fortnightly, three-weekly or four-weekly recurring orders, set up by the customer or by the merchant on their behalf. Three days before each order, the customer gets a preview email with today's prices and a one-click "Skip this order" link that doesn't need a login - if they do nothing, the order fires normally at the cutoff. Pause to a specific resume date or indefinitely, skip a single occurrence, or edit any line anytime. - **Custom cutoff message** _16 May 2026_ Optional message that shows on a customer's order page once it's locked for changes but not yet processed - for example, telling them to call if they need a last-minute change. - **Terms & conditions** _13 May 2026_ A plain-English contract covering subscriptions, billing, your data, and what happens if things go wrong. - **Detailed order emails** _11 May 2026_ Optional order receipt emails for customers and merchants, with itemised line items and price changes when an order is placed, updated or cancelled. - **Choose your billing currency** _10 May 2026_ The currency you pay your subscription in can be set separately from the currency you trade in with your own customers. - **Order lock window** _5 May 2026_ Choose how long customers can edit or cancel an order after placing it, from "until the delivery cutoff" all the way down to "immediately on placement". - **Merchants can place orders on a customer's behalf** _4 May 2026_ Take an order by phone or text and enter it yourself - the customer never has to log in. Receipt emails fire to both parties just like a customer-placed order. - **Public storefronts** _22 April 2026_ Opt-in public page for your business so customers can find you. Choose which products to display, show prices to everyone or hide them behind "Contact us for pricing", and list the delivery areas you cover. ## Building now - **Bulk import customers and products** Bring your whole book onboard in minutes by pasting straight from a spreadsheet. Copy a block of rows out of Excel or Google Sheets, paste it into an editable grid, and Wholesale Handler checks every row as you go - flagging a bad email or an unmatched price list before anything is saved, so you fix it in place and import only what's clean. Customers come in as quiet records with no email sent until you choose to invite them, so you can populate your whole list and start taking orders on day one. Products follow the same paste-and-check flow. ## Next up - **Addresses and business details on your paperwork** Put the details that make a packing slip useful and an invoice look professional onto every document. Each customer gets an optional delivery address, phone number, and your own account reference for them; your own business address, phone, and tax or VAT number go in your settings once and head every invoice. The delivery address prints on the packing slip so the box gets where it's going, and the invoice reads like one from an established supplier - your full details up top, the customer's ship-to address and account code in the bill-to block. All optional, and Wholesale Handler still doesn't route or track delivery for you. ## Considering - **Automatic invoicing** Pick an invoice day for each customer and Wholesale Handler collates their processed, un-invoiced orders into a draft invoice on that day automatically - no more remembering who's due. Drafts land ready for you to review, amend and send, so the system does the boring aggregation while you keep the final say. - **Live orders page** A dedicated page that alerts you within a second of every order placed, updated or cancelled. Choose your alert style - a ringtone-style alarm that repeats until you acknowledge it, a single ding per arrival, or silent with a visual notification only. - **Smart availability alerts** Let customers opt in to hear the moment an unavailable product comes back, and give regular buyers a heads-up when something they often order is about to go out of stock. - **Credit notes** Issue a credit against an already-sent invoice for returns, missing items or post-delivery discounts. Keeps your accounting audit trail clean by leaving the original invoice untouched. - **Keep cancelled orders visible** Cancelled orders stay in the list with a "Cancelled" status instead of disappearing, so both you and your customer have a record of what was cancelled and when. ## Help articles series --- --- title: How customers, invitations and managed customers work Metadescription: How customers join Wholesale Handler - invitations, the three management modes, email confirmation, password resets, expiry, resending and bounces. Display description: Every customer belongs to one wholesaler. You add them yourself and choose how hands-on the relationship is - place their orders, email their invoices, or invite them to sign in and order themselves. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-04 updated: 2026-06-13 --- Token estimate: ~2,600 # How customers, invitations and managed customers work By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. Every customer belongs to one wholesaler - you. You add them yourself, and you choose how hands-on the relationship is. You can place every order for them, email them their invoices and order updates, or invite them to sign in and order themselves. This article covers those three modes, how invitations work, and what each status means. Looking for how your own account, free trial and subscription work? See [subscription, free trial and billing](/articles/how-subscription-and-billing-work-on-wholesale-handler). ## The three kinds of customer How much a customer does for themselves is set by their management mode. It's a ladder, from "you do everything" to "they do everything", and you can move a customer up it whenever they're ready. **Fully managed** - you place their orders and nothing is emailed to them. There's no sign-in and no email address. This suits the customer who phones or texts their order and is happy for you to key it in. They still get the full benefit of price lists, order profiles and invoicing on your side - they just never touch the app. **Notified by email** - you still place every order, but their invoices and order updates are emailed to their address. They don't sign in. This is the middle rung for a customer who wants a paper trail in their inbox without logging in to get it. **Self managed** - they sign in and place their own orders, picking from the products, prices and delivery dates you've set for them. This is the self-service customer, and the mode that takes the most work off your plate. ## How do I add a customer? Open [Customers](/customers) and click Create customer.... Pick the customer type, then fill in their details. Every customer needs a business name; first and last name are optional. What else you enter depends on the type: - **Fully managed** needs no email at all - the field is hidden. You're just creating a record to order against. - **Notified by email** needs an email address. A verification email goes out first, and invoices and updates start once the customer confirms it (more below). - **Self managing** needs an email address too - the invitation to sign in is sent there. You also pick a price list and an order profile, or leave both on your defaults. They control the prices the customer sees and their delivery days, cutoff and any minimum spend. ## What does "notified by email" confirmation involve? When you add (or later give an email to) a notified-by-email customer, Wholesale Handler sends them a short email on your behalf asking them to confirm the address. It has a single "Confirm email address" button. Until they click it, the customer shows an amber **Email pending** badge and no invoices or order emails go out to them. This is a deliberate opt-in. It proves the address is real and that the customer agreed to hear from you before anything lands in their inbox. The moment they confirm, the badge clears and emails start flowing. They don't create an account or a password - confirming simply switches on delivery. If a confirmation hasn't come through, you can resend it with Resend confirmation from the customer's Email & access card. ## How do I invite a customer to sign in themselves? Open the customer and click Invite to sign in.... Confirm or enter their email and send. The invitation is emailed to that address; once they accept and set a password, they become **Self managed** and start placing their own orders. This is a promotion, not a fresh start. A fully managed or notified-by-email customer keeps their existing orders, invoices and history - the same record simply gains a login. It's the natural step once a customer is comfortable enough to order for themselves. ## How does a customer accept an invitation? The invitation email is sent on your behalf with a single "Accept invitation" link. Clicking it opens a short form where the customer sets their password, and they land straight in their portal ready to place an order. There's no app to download and no merchant directory to browse - the link is specific to one merchant and one customer. Until they accept, a self-managed customer shows a blue **Invited** badge. ## How long does an invitation last? 14 days. After that the link expires and the customer sees an error message if they click it. The merchant can resend, which extends the expiry by another 14 days using the same link. ## Can I resend an invitation? Yes, with two limits: a 60\-minute cooldown between resends, and a maximum of 5 resends per invitation. Old email links keep working after a resend - the link doesn't change. If an invitation has bounced, the email needs correcting first. ## What happens if my customer's email bounces? The customer shows a red "Bounced" badge with the message "This email could not be delivered" and an inline "Update email…" action. Resending is blocked until the address is corrected. This applies to a self-managed customer's invitation and to a notified-by-email customer's confirmed address alike. Bounces only cover hard bounces - invalid addresses, full mailboxes, blocked domains. Soft bounces are retried automatically and never reach you. ## Can I correct a typo in a customer's email? Yes. Open the customer, click Update email... and enter the correct address. A fresh email goes out immediately, the old link stops working, and the bounce status clears. Update the email rather than deleting and re-inviting - it keeps the customer's history intact. ## Can I stop emailing a customer? Yes. Use Clear email... on a notified-by-email customer. The email is removed and the customer returns to **Fully managed** - you place their orders and nothing is emailed to them. A self-managed customer signs in with their email, so that one stays put. ## Do my customers need to pay to use Wholesale Handler? No. Customers never pay anything. There's no payment step on an invitation, no card details collected, no usage limits on their side. The merchant pays the subscription; the customer uses the site for free, forever. For how the merchant subscription works, see [subscription, free trial and billing](/articles/how-subscription-and-billing-work-on-wholesale-handler). ## Can my self-managed customers reset their password? Yes. Once a customer accepts an invitation they have a normal account. Customers and merchants both use the same [sign-in page](/sign-in) - Wholesale Handler detects which type of account is signing in and routes them appropriately. Password resets go through the standard "forgot password" flow, and customers can update their email address from their settings page. ## How many customers can I have? Up to 50 in total - managed customers, pending invitations and self-managed customers combined. [Get in touch](/contact) if you need more. ## Do customers see each other? No. Each self-managed customer only sees their own account, their own orders, and the products and prices you've set for them. Customers can't see other customers exist, and managed customers don't sign in at all. ## How Wholesale Handler shows customer status The customers list shows two things at a glance. The management mode - Fully managed, Notified by email or Self managed - is always shown, so a managed customer never reads as a dead or deactivated account. On top of that, a status badge appears only when there's something to act on: "Invited" while a self-managed customer hasn't accepted, "Email pending" while a notified customer hasn't confirmed, and "Bounced" or "Failed" when an email didn't get through. A confirmed, settled customer shows just their management mode and nothing else - no news is good news. When a customer accepts their invitation, they move to Self managed automatically. ## Q&A **Q: What are the three kinds of customer?** A: Fully managed (you place every order, no email or sign-in), Notified by email (you place orders, invoices and updates are emailed to them), and Self managed (they sign in and place their own orders). It's a ladder - you can move a customer up it at any time. **Q: How do customers join Wholesale Handler?** A: You add them. A fully managed customer just becomes a record you order for. A notified-by-email customer gets a confirmation email. A self-managed customer gets an invitation, sets a password, and lands in their portal ready to order. There's no public sign-up - every customer is tied to one specific wholesaler. **Q: Do customers pay to use Wholesale Handler?** A: No. The merchant pays the subscription. Customers never pay anything, never enter card details, and have no usage limits on their side. **Q: Can I move a managed customer to signing in themselves?** A: Yes. Use "Invite to sign in" to send a fully managed or notified-by-email customer an invitation. Once they accept and set a password, they become self managed and place their own orders - keeping their existing orders and history. **Q: How long does an invitation last?** A: 14 days. After that, the link expires and the customer sees an error if they click it. The merchant can resend, which extends the expiry by another 14 days using the same link. **Q: How many times can I resend an invitation?** A: Up to 5 resends per invitation, with a 60-minute cooldown between sends. Old email links keep working after a resend - the link does not change. **Q: How many customers can I have?** A: Up to 50 in total - managed customers, pending invitations and self-managed customers combined. --- --- title: How products work on Wholesale Handler Metadescription: How products work on Wholesale Handler - adding products, pack quantities, VAT, prices, stock, seasonal availability and storefront visibility. Display description: Products are the items your customers order. You set the name, pack details, VAT, prices and (optionally) stock and seasonal availability. Each customer sees their personalised product list with the prices you've assigned them. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-04 updated: 2026-06-10 --- Token estimate: ~2,900 # How products work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. Products are the items your customers order - bread, vegetables, eggs, Christmas trees, bouquets. You set the name, pack details, VAT, prices and (optionally) stock and seasonal availability. Each customer sees their personalised product list with the prices you've assigned them. ## How do I add a product? Open [Products](/products) and click Create product.... Fill in the name, choose how it's sold (single item or pack - more below), set the VAT rate and a price for each of your price lists. For example, a bakery might create "Sourdough loaf", a fresh produce wholesaler might create "Tomatoes 5kg crate", and an egg supplier might create "Large eggs" sold as a Box of 12. ## What do single item and pack mean? Each product is either a **single item** or a **pack** of identical items. **Single item** suits products sold one at a time: - A bakery's sourdough loaf - A florist's bouquet - A fresh produce wholesaler's "Tomatoes 5kg crate" **Pack** suits products where each unit is a container of multiple identical items - the customer orders the container, not the individual items: - An egg supplier might list a **Box of 12** eggs - A bakery might list a **Tray of 6** pastries - A winery might list a **Case of 6** bottles In pack mode you set the **unit label** (Box, Tray, Case, Bunch, Bag and Pack are suggested) and the **pack quantity**. For pack products, customers see the unit and quantity alongside the product name when ordering ("Box of 12 eggs"), so they always know what they're getting. ## How does VAT work? Each product has a VAT rate set as a whole number percentage between 0 and 100. The form defaults to 20% - set whatever rate applies to your products. Wholesale Handler calculates VAT on each line item of an order and totals it on the order itself. ## How do I set prices? Price lists let you charge different customers different amounts for the same product. Newer customers might pay full price, loyal customers might get 10% off, and trade contacts might get 20% off. Every merchant has one **Default** list and can create up to 19 more. The demo seeds \*\*Default\*\*, \*\*Storefront\*\* (+20%), \*\*Trusted\*\* (10% off) and \*\*Friends & Family\*\* (20% off) as examples to show how tiered pricing might look. When you create or update a product, you set a price per list. Each customer is assigned to one list and sees only the price from theirs. **Customers never see the list name or that other lists exist** - each customer's pricing stays private from the others. Existing orders aren't affected when you change a price - they keep the price they were placed with. For the full story see [how price lists work](/articles/how-price-lists-work-on-wholesale-handler). ## How do I track stock? Stock tracking is optional. Leave the quantity unset and Wholesale Handler treats the product as having infinite stock - fine for bakeries baking to order. Set a quantity and Wholesale Handler tracks it: orders decrement it, cancellations restore it, and customers can't order more than is left. When stock hits zero the product moves to a **Sold out** section in the customer's product list - they can subscribe to be emailed when you restock. More on the customer-facing flow in [how orders work](/articles/how-orders-work-on-wholesale-handler). You can restock using the Restock... button on the [products](/products) page. ## Can I mark a product as unavailable? Yes. Add one or more **unavailability windows** to a product. Each window is a single calendar day or an inclusive range of days, and you can leave the end open for "until further notice". Customers can't add the product to an order for a delivery date that falls inside a window. Each window carries a reason and an optional note your customers see: - **Seasonal** - out of season, like asparagus outside spring or Christmas cake in summer - **Weather delay** - a crop or delivery held up by the weather - **Limited stock** - temporarily sold out or rationed - **Discontinued** - no longer made; pair it with an open-ended window - **Other** - anything else, explained in the note The note is shown to customers so they know what's going on - "back in April", "frost damage", "back next week". Leave it blank to simply hide the product on those dates. For closing the whole business for a season - say a christmas tree farm that only trades in November and December - holidays are a better fit. Set the off-season as a holiday range to block all delivery dates outside the trading window. Add no windows at all for products that are available year-round. ## Can I set a recurring season? Yes. If a product only sells at certain times of year - asparagus in spring, pumpkins in autumn - set a **season** instead of re-entering dates every year. Switch the product from "Sold all year" to seasonal and give it a start and end date, for example 1 March to 30 April. Seasons repeat automatically every year, so you set them once. The dates are inclusive - the product is available from the start day through to the end day each year. Out of season the product can't be ordered for now, but it doesn't disappear: it still shows on the order form with the date it's back - "back in March" - so customers know it's coming rather than wondering where it went. If you have a public storefront setup, it appears there too, in an "Out of season" section. Customers don't have to keep checking the order form to catch a season change. They can turn on **Seasonal updates** in their [settings](/settings) to get a weekly email of what's coming into and going out of season across your range, with a heads-up before a product's last week. A single product can carry more than one season - UK strawberries in summer and Spanish strawberries in winter on the same product, say - and a season can span the new year, like 1 November to 28 February. A product with no season set is available all year round. Seasons and unavailability windows work together: the season sets when a product is sold at all, and an unavailability window can still carve a temporary gap inside it - a weather delay in the middle of the crop, for instance. ## Can I show products on a public storefront? Yes. The public storefront is an opt-in feature that lets prospective customers browse your range before signing up. Each product has a **show on storefront** toggle (off by default) that controls whether it's eligible to appear there. The storefront has its own setup flow - fill in business details, pick which products to include, and submit for review. There's also a single setting for whether prices appear on the storefront at all: with it off, the storefront shows a "Contact us for pricing" notice instead. For the full setup process see [how storefronts work](/articles/how-storefronts-work-on-wholesale-handler). ## How many products can I have? Up to 500 per account. [Get in touch](/contact) if you need more. ## How do I update a product? Open a product from your products list, switch to update mode, change any field - name, pack details, VAT, prices, stock, dates, storefront visibility - and save. Updates are immediate. A customer who opens the order form seconds after you save sees the new values. Existing orders aren't affected. The name, pack details, VAT and price are snapshotted onto each line item at the moment the order is placed, so: - Changing a price only affects future orders ✅ - Renaming a product doesn't change how it appears on existing orders ✅ ## How do I delete a product? Use Delete product... from the product's actions menu. Wholesale Handler asks you to confirm. Deletion is permanent. The product disappears from every customer's order form straight away. If a customer had the order form already open and tries to place an order including the deleted product, the submission is rejected and they would need to submit the order again without the deleted product. Existing orders are unaffected because each line item is already snapshotted with the product's name, pack details, VAT and price: - Deleting a product doesn't break existing orders or invoices ✅ ## How Wholesale Handler handles products The products list is your master view. Search by name or description, sort by any column, filter by availability or stock status, and open any product to see or update its details. Stock-tracked products show their remaining quantity in the list. Sold-out products are flagged with a "No stock" badge - open Restock... to see how many customers have signed up for an email when it's back. ## Q&A **Q: What is the difference between a single item and a pack?** A: A single item is sold one at a time (a sourdough loaf, a bouquet, a 5kg crate of tomatoes). A pack is a container of multiple identical items where the customer orders the container, not the individual items (a Box of 12 eggs, a Tray of 6 pastries, a Case of 6 bottles). **Q: How does VAT work?** A: Each product has a VAT rate set as a whole number percentage between 0 and 100. The form defaults to 20%. Wholesale Handler calculates VAT on each line item and totals it on the order itself. **Q: How does stock tracking work?** A: Stock tracking is optional. Leave the quantity unset and the product is treated as infinite (the default for bakeries baking to order). Set a quantity and Wholesale Handler tracks it: orders decrement it, cancellations restore it, and customers cannot order more than is left. **Q: Can I mark a product as unavailable?** A: Yes. Add one or more unavailability windows to a product. Each window is a single calendar day or an inclusive range of days (or open-ended for "until further notice"), with a reason (weather delay, limited stock, discontinued or other) and an optional note your customers see - "back in April", "frost damage". Customers can't add the product to an order for a delivery date that falls inside a window. Useful for a weather delay, a line that's temporarily off, or a one-off gap. **Q: Can I set a recurring season?** A: Yes. If a product only sells at certain times of year, give it a season - for example "available 1 March to 30 April". Seasons repeat every year automatically, so you set them once and never re-enter the dates. Out of season customers can't order it, but it still shows on the order form with the date it's coming back - and on your public storefront too, if you have one setup. A single product can carry more than one season (split crops), and a season can span the new year (like 1 November to 28 February). A product with no season set is available all year round. **Q: How many products can I have?** A: Up to 500 per account. --- --- title: How price lists work on Wholesale Handler Metadescription: How price lists work on Wholesale Handler - creating lists, percentages, rounding, customer assignment, deletion and existing orders. Display description: Price lists let you charge different customers different amounts for the same products. Every merchant starts with a Default list. You can create more, set a percentage of the Default, override individual prices and assign each customer to one list. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-04 --- Token estimate: ~2,300 # How price lists work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. Price lists let you charge different customers different amounts for the same products. Every merchant starts with one **Default** list, and can create more on top of it. Each customer is assigned to one list and sees only their price - never the list name, and never anyone else's price. For example, you might keep full price on the Default list, lower prices for loyal customers, and the highest price as a public-facing rate for the storefront. The demo includes \*\*Default\*\*, \*\*Storefront\*\* (+20%), \*\*Trusted\*\* (10% off) and \*\*Friends & Family\*\* (20% off) so you can see how tiered pricing looks in practice. ## How do I create a price list? Open [Price lists](/price-lists) and click Create price list.... Fill in the name, an optional description, and a percentage of Default (90 for 10% off, 110 for a 10% surcharge, blank for "set every price manually"). When you save, Wholesale Handler creates the list, populates a price for every product based on the percentage, and takes you to the list's detail page where you can review and adjust individual prices before assigning any customers. Customers aren't assigned at creation time - that comes later. A new list always starts at zero customers, so there's no risk of someone seeing a half-set-up price. ## How does the percentage of Default work? Each list (other than Default itself) has an optional **percentage of Default**. It anchors the list's prices to the Default list: - **90** - 10% cheaper than Default - **100** or **blank** - same as Default - **110** - 10% more than Default When you create a list with a percentage, every product's price is calculated from its Default price and stored on the new list. You can override any individual price afterwards (more on that below). Leaving the percentage blank means there's no anchor at all - every price on this list is set manually, with no automatic relationship to Default. ## How does rounding work? Percentage-derived prices rarely land on neat numbers. A 10% discount on $4.50 is $4.05; on $3.20 it's $2.88. Wholesale Handler can clean these up automatically using two settings: - **Rounding** - off, nearest 5, or nearest 10 minor units. $4.05 with nearest 10 becomes $4.10. $2.88 rounds to $2.90 with either nearest 5 or nearest 10 (both happen to land there). - **Charm pricing** - off, .95, or .99. ".99" snaps whole-unit prices like $3.00 and $5.00 down to $2.99 and $4.99. ".95" does the same plus anything in the .96-.99 zone snaps back to .95. When both are enabled, **charm pricing takes precedence over rounding**. If a derived price would trigger a charm value, charm fires first and the rounding step is skipped. For example, a derived price of $4.96 with nearest 10 alone would round up to $5.00 - but add ".95" charm and charm fires instead, snapping the price to $4.95. Both apply only to **derived** prices - prices calculated from the percentage. Manually overridden prices are left alone, and Default prices are never rounded by these settings (you set those directly). Adjust both from Rounding settings... in the price lists menu, or from the Pricing section of [Settings](/settings). ## Can I override an individual price? Yes. Open any list's detail page and you'll see one row per product with the current price, the Default price for reference, and a basis badge marking each row as derived (calculated from the percentage) or custom (manually set). Update a single price and click Update on that row to save it. Each row saves independently, so you can work through dozens of products without worrying about losing changes elsewhere. An overridden price stays put even if you later change the list's percentage. ## How do I assign customers to price lists? New customers are automatically assigned to the Default list when you invite them. To move customers between lists, use Move customers... from the price lists menu, or open a list's Update details... drawer and pick customers from there. Each customer is on exactly one list at a time. Moving a customer takes effect immediately - their next order uses the new list's prices. ## Do customers see the price list name? No. Customers never see the list name, the percentage, or any indication that other lists exist. They just see their own price next to each product. The list system is entirely on your side. ## How many price lists can I have? Up to 20 in total - that's the Default list plus 19 more. [Get in touch](/contact) if you need more. ## How do I update a price list? Open Update details... from the price list's row actions menu to change the name, description, percentage, or assigned customers. To update individual product prices, open the list's detail page and use the per-row update flow described above. ## What happens when I change a list's percentage? The new percentage saves immediately, but existing prices on the list **don't change**. The percentage is a starting point for \*new\* products, not a live setting that retroactively rewrites prices you may have already tuned. So if you change a list from 10% off to 20% off: - Products you create from now on get priced at 20% off Default on that list ✅ - Existing products stay at the prices they were already at ✅ - The basis badge on the detail page turns zinc for rows whose deviation no longer matches the new percentage, making it easy to spot which ones to adjust ✅ To shift existing prices to match the new percentage, open the list's detail page and update each row manually. A separate flow handles the related case where you change a \*Default\* price for a single product: after saving, Wholesale Handler asks whether to recalculate that product's price on every other list that's still tracking the percentage. ## How do I delete a price list? Use Delete price list... from the row's actions menu. Wholesale Handler asks you to confirm. The Default list cannot be deleted - there's always at least one. Any other list can be deleted, including the demo "Trusted" and "Friends & Family" examples. If the list has customers assigned, they're moved to Default first, then the list is deleted. Existing orders are unaffected because each line item already carries the price it was placed with. ## What happens to existing orders if I change a price? Existing orders keep the price they were placed with. Wholesale Handler snapshots the price onto each line item at the moment the order is placed, so: - Changing a list's percentage only affects future orders ✅ - Manually adjusting a single price only affects future orders ✅ - Deleting a list doesn't break existing orders or invoices ✅ Customers see the updated price on their next visit; nothing they've already ordered changes. ## How Wholesale Handler handles price lists The price lists page is your master view. Each row shows the list's name, how many customers are assigned to it, its percentage of Default (as a "10% off" / "5% more" badge) and the Default list is clearly marked. Open any list to see and update individual product prices, with a badge on each row showing whether the price is still tracking the list's percentage or has been manually overridden. ## Q&A **Q: What is a price list?** A: A named set of prices applied to one or more customers. Every merchant starts with a Default list and can create more on top of it. Each customer is assigned to exactly one list and sees only their own price - never the list name and never anyone else's price. **Q: How does the percentage of Default work?** A: Each list (other than Default) has an optional percentage anchor. 90 means 10% cheaper than Default; 110 means 10% more. When you create a list with a percentage, every product's price is calculated from its Default price and stored on the new list. Individual prices can be overridden afterwards. **Q: Do customers see the price list name?** A: No. Customers see one price next to each product. They never see the list name, the percentage, or any indication that other lists exist. **Q: How many price lists can I have?** A: Up to 20 in total, including the Default list. **Q: What happens to existing orders if I change a price?** A: Existing orders keep the price they were placed with. The price is snapshotted onto each line item at the moment the order is placed, so changing a list's percentage or adjusting a single price only affects future orders. --- --- title: How order profiles work on Wholesale Handler Metadescription: Order profiles set per-customer delivery days, cutoffs, lead time, minimum spend and charges on Wholesale Handler. Cutoffs can vary per day. Display description: An order profile is a reusable bundle of ordering rules - delivery days, ordering cutoff, maximum lead time, minimum spend and delivery charge - that you assign to customers. Every merchant starts with a Default profile. Create more when a group of customers orders on a different schedule or pays a different delivery charge, then assign each customer to the profile that fits them. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-06-01 updated: 2026-06-03 --- Token estimate: ~2,200 # How order profiles work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. An order profile is a reusable bundle of ordering rules that you assign to customers. One profile sets the delivery days, ordering cutoff, maximum lead time, minimum spend and delivery charge for every customer on it. Update the profile once and all of them follow. Every merchant starts with a single Default profile, so if all your customers order the same way you never have to think about profiles at all. ## What is an order profile? An order profile groups the rules that decide when and on what terms a customer can order: - Which days of the week you deliver on - The ordering cutoff - how much warning you need before each delivery day - The maximum lead time - how far ahead a customer can order - The minimum spend before an order is allowed - The delivery charge, and whether it's waived once the minimum spend is met Each customer is assigned to exactly one profile, and those rules come from it whenever they place an order. The profile is the single place you set them - they no longer live in your global Settings. ## Why would I create more than one profile? Because not every customer fits the same schedule. A customer two hours away might only sit on a Wednesday/Thursday delivery run, while everyone local orders Monday to Friday. Put the far-flung customers on a "Far North - Wed/Thu only" profile and leave the rest on the Default. The same applies to commercial terms. A profile can carry its own delivery charge and minimum spend, so a group of customers on a longer round can pay a higher charge without you editing each customer one at a time. The point of a profile is reuse. When the Wednesday/Thursday run changes, you update the one profile and every customer on it follows - you never edit customers individually. ## What settings live on a profile? Open a profile to see its cards. The **Ordering** card holds the rules that govern when a customer can order: - **Delivery days** - the weekdays you accept deliveries on. Customers can only pick a delivery date that falls on one of them. A profile with no delivery days set can't take orders. - **Cutoff** - how much warning you need before a delivery day. Set one for the whole profile or a different one per day (see below). Past the cutoff, that delivery day stops accepting new orders. - **Maximum lead time** - how far ahead a customer can request delivery, so orders aren't placed months in advance. - **Minimum spend** - the order value a customer has to reach before they can place an order. The **Delivery charge** card holds what delivery costs: - **Delivery charge** - a flat charge added to the order. Set it to zero for free delivery. - **Delivery charge waiver** - whether the charge is dropped once the order meets the minimum spend, or always applied. ## How does the ordering cutoff work? The ordering cutoff is the point each delivery day stops taking new orders and locks. You set it the way you'd say it out loud - a time of day plus how many days before delivery - so "order by noon the day before" reads itself. By default one cutoff applies to every delivery day - for example **Order by 2pm the day before**. But different days often have different production runs, so a switch on the cutoff control lets you choose **Same for all days** or **Different per day**. Pick "Different per day" and each delivery day gets its own row, so a Saturday run can close to new orders Friday lunchtime while the Monday run stays open until Sunday evening. Whichever you choose, the customer's order page and your public storefront only let them pick a delivery date that's still before its cutoff - the locking happens automatically, per day. ## How do I create an order profile? Open [Order profiles](/order-profiles) and click Create.... Give the profile a name, set its delivery days, cutoff, maximum lead time, minimum spend and delivery charge, and save. The new profile starts with no customers assigned. You can have up to 20 profiles. The count on the Order profiles page shows how many you've used. ## How do I assign customers to a profile? Two ways: - From the [Order profiles](/order-profiles) page, use Move customers... to move one or several customers onto a profile at once. - From a profile's own page, the assigned-customers card shows who's on it and lets you move customers across. A customer is always on exactly one profile. Moving them onto a new profile takes them off their old one - there's no double assignment to keep in sync. ## What is the Default profile? Every merchant starts with one Default profile, and it's the fallback for any customer you haven't deliberately moved. New customers join it automatically. You can rename the Default profile and change its settings like any other. You can't delete it or leave it empty of the fallback role - it's the profile a customer lands on when they're not assigned anywhere else. ## What happens when I change a profile? The change applies to every customer on that profile straight away. Edit the cutoff on a profile and all its customers order against the new cutoff from then on. Existing orders that are already placed keep the terms they were placed under. ## Can a customer be on more than one profile? No. One profile per customer, many customers per profile. This keeps things predictable - there's never a question of which profile's cutoff or delivery charge applies to a given customer, because there's only ever one. ## How Wholesale Handler handles order profiles The [Order profiles](/order-profiles) page lists every profile in one table, with its name, accepted delivery days, cutoff and how many customers are on it. The Default profile is badged so it's easy to find. Each profile's own page splits the rules across cards - Ordering, Delivery charge, and the customers assigned to it - so you can change one thing without wading through the rest. Move customers between profiles from either the list or the profile page, and the customer's orders pick up their new profile's rules from the next order they place. ## Q&A **Q: What is an order profile?** A: A reusable bundle of ordering rules - delivery days, ordering cutoff, maximum lead time, minimum spend and delivery charge - that you assign to customers. Each customer is on exactly one profile, and their ordering rules come from it. **Q: What is the ordering cutoff?** A: How much warning you need before a delivery day - the point after which that day stops accepting new orders. You set it the way you'd say it out loud, like "order by noon the day before". Set one cutoff for the whole profile, or a different one per delivery day so a Saturday run can close Friday lunchtime while a Monday run stays open until Sunday evening. **Q: Why would I create more than one profile?** A: To serve customers on different terms. A group of distant customers might only get Wednesday/Thursday deliveries, or pay a higher delivery charge for a longer round. Put them on their own profile and leave everyone else on the Default. Update the profile once and every customer on it follows. **Q: What is the Default profile?** A: The profile every merchant starts with and the one new customers join automatically. You can rename it and change its settings, but you can't delete it - it's the fallback for any customer you haven't moved elsewhere. **Q: How many order profiles can I have?** A: Up to 10. **Q: Can a customer be on more than one profile?** A: No. One profile per customer, many customers per profile. There's only ever one set of rules that applies to a given customer. **Q: What happens to existing orders when I change a profile?** A: Orders already placed keep the terms they were placed under. The new rules apply to orders placed after the change. --- --- title: How orders work on Wholesale Handler Metadescription: How orders work on Wholesale Handler - placing orders, delivery cutoffs, lead times, statuses, edits, cancellations and invoicing. Display description: Customers place orders themselves through the Orders page, picking from the products, prices and delivery dates you've set up. Each order is editable while pending, locks at the cutoff, then moves to processed once you've prepared it. Processed orders are ready to invoice. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-04 updated: 2026-06-01 --- Token estimate: ~4,700 # How orders work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. Orders flow through one place - your [Orders](/orders) list - whether the customer placed them themselves or you placed them on their behalf. Each order is editable while pending, locks at the cutoff, then moves to processed once you've prepared it. Processed orders are ready to invoice. ## How does a customer place an order? The customer signs in, opens [Orders](/orders) and clicks Place order.... They pick a delivery date, add quantities for the products you've made available, and complete by clicking Place order. Wholesale Handler shows them their personalised price list, hides products that aren't available on their chosen delivery date, and prevents them from picking a delivery date outside your cutoff and lead time settings. If you've set a minimum order amount, Wholesale Handler blocks orders that don't meet it. You can also charge a flat delivery fee, with an option to waive it for orders that meet the minimum spend. ## How do I place an order on behalf of a customer? You can start a new order from a few places: - The [Orders](/orders) page - click New order... - The [Customers](/customers) page - either from a customer's row, or from the menu at the top of the page - The dashboard - in the menu at the top of the page Pick a customer, choose a delivery date, add line items, and place the order. The same cutoff, lead-time and accepted-day rules apply. The order shows up in your list as a normal pending order, except you can mark it as processed straight away - there's no customer-editing window to wait for. ## Where do delivery days, cutoffs and charges come from? Delivery days, cutoff time, lead times, minimum spend and the delivery charge are set per [order profile](/order-profiles), not in your global Settings. An order profile is a reusable bundle of these ordering rules that you assign to customers. Every merchant starts with a Default profile, and you can create more for customers who order on a different schedule or pay a different delivery charge - a customer two hours away might sit on a "Far North - Wed/Thu only" profile while everyone else stays on the Default. Each customer is assigned to exactly one profile, and the delivery dates and charges they see when ordering come from it. Update a profile once and every customer on it follows. The rest of this page describes how those rules behave - they all read from the customer's order profile. ## How do cutoffs and lead times work together? Two settings control which delivery dates a customer can pick: the **cutoff time** and the **minimum and maximum lead days**. The cutoff is a time of day - it decides whether "today" still counts for ordering. Lead days set how soon and how far ahead a customer can request delivery. A common setup is a 5pm cutoff with a 1-day minimum and a 14-day maximum lead. Order at 4pm Monday and the picker shows Tuesday through to two weeks out. Order at 5:01pm Monday and Tuesday drops off - earliest is Wednesday. ## What's a delivery cutoff? The cutoff is the time of day after which "today" stops counting for ordering purposes. Order before the cutoff and lead time starts counting from today; order after, and it starts from tomorrow. Pick a cutoff that gives you enough time to prep what's been ordered without making customers plan further ahead than they need to. Most wholesalers set it somewhere between 3pm and 8pm. ## What are minimum and maximum lead days? **Minimum lead days** is how soon a customer can request delivery once their lead time starts. **Zero (same-day delivery)** - the customer can order today for today's delivery, as long as they order before the cutoff. With a 5pm cutoff: - Order at 4pm Monday for Monday delivery ✅ - Order at 5:01pm Monday for Monday delivery ❌ (earliest is Tuesday) Useful for collect-on-the-day businesses where prep is fast. **One** - the most common setup. At least a full day between order and delivery. With a 5pm cutoff: - Order at 4pm Monday for Tuesday delivery ✅ - Order at 5:01pm Monday for Tuesday delivery ❌ (earliest is Wednesday) **Two or more** - useful when you need to source ingredients or batch production before delivery. **Maximum lead days** is how far ahead a customer can plan. With a customer ordering on Monday 1 January: - Max = 7 - can pick any date up to Monday 8 January - Max = 14 - can pick up to Monday 15 January - Max = 30 - can pick up to Wednesday 31 January Lower values keep planning manageable and suit fresh produce. Set higher for seasonal businesses like christmas trees or pumpkins where customers commit weeks or months in advance. ## Can I take orders for a specific day or for a whole week? Both. In Settings, choose **delivery precision**: - **Daily precision** - customers pick an exact delivery date. For example, if a bakery chooses daily precision, a customer can pick a particular Thursday, and that's the day their bread arrives. - **Weekly precision** - customers pick a Monday that represents the whole Mon-Sun week. For example, if a Christmas tree farm chooses weekly precision, a customer can order for the week commencing Monday 27 November, and the trees arrive at some point during that week. Week precision is mainly for seasonal businesses like christmas trees and pumpkins, where customers might order months in advance. Most industries - bakeries, florists, egg suppliers - use daily precision. ## Which days of the week can I deliver on? On an order profile, pick the days of the week you accept deliveries on - Monday, Tuesday, Wednesday and so on. This is a recurring weekly pattern, not specific dates, and it can differ between profiles. Customers can only pick a delivery date that falls on one of the accepted weekdays for their profile. Customers can still \*place\* orders at any time of day, on any day of the week. If a bakery doesn't work on Mondays, a customer can still place an order on a Monday - they just can't pick Monday as the delivery day. Wholesale Handler keeps taking orders even when you're not working. For example: - A bakery delivering to local cafes might accept **Mon-Fri**. - An egg supplier doing one big drop a week might accept **Thursday only**. - A florist preparing for weekend events might accept **Wed-Sat**. ## How do holidays work? Add a holiday in Settings and Wholesale Handler hides that date from the delivery date picker. Holidays support single dates and ranges: - **Single date** - a bank holiday like 1 January - **Short range** - a long weekend or trade show (e.g. 26-28 March) - **Long range** - an extended closure like Christmas (24 December - 2 January) **With weekly precision**, a week is only blocked if every accepted day in it is a holiday. If even one accepted day remains, customers can still book that week. For a wholesaler accepting Mon-Fri deliveries: - Holiday **Monday 1 - Sunday 7 January** - w/c Monday 1 January ❌ (every accepted day is in the holiday) - Holiday **Tuesday 2 - Sunday 7 January** - w/c Monday 1 January ✅ (Monday is still accepted) ## What are the order statuses? Wholesale Handler shows a single status badge per order that subsumes the raw stage, the lock state, and the invoice lifecycle. Some statuses are merchant-only - the customer's view collapses them into a friendlier set so they don't see internal-state details that don't concern them. ### Placed The customer has placed the order and it's still open for changes - they can update line items, change the delivery date, or cancel it entirely. The status stays at Placed until the cutoff for the delivery date passes, or until your configured order-lock window expires (whichever comes first). If you've set the order-lock mode to lock immediately on placement, you won't see this status at all - new orders go straight to Locked. ### Locked The order is placed and the editing window has closed. The customer can no longer update or cancel it themselves. Mark it as processed once you have prepared it. ### Processed You've prepared the order. The customer can no longer change it. Ready to invoice. ### Invoice created A draft invoice exists for this order but you haven't sent it yet. You can keep adding orders to the same draft invoice before sending. Customers see this as **Processed**. ### Invoice sent You've sent the invoice. The customer can see it on their invoices page and declare it paid once they've sent payment. ### Customer declared paid The customer has declared they've sent payment but you haven't reconciled it yet. Confirm with Mark as paid once the funds have arrived; if you can't reconcile the payment, dispute it instead. Customers see this as **Paid**. ### Paid You've confirmed the customer's payment. The invoice and order are both closed. Customers see this as **Paid**. ### Invoice disputed You couldn't reconcile a customer's payment declaration. Use this when a customer marked an invoice as paid but the funds didn't arrive. The dispute is communicated to the customer by email. Customers see this as **Invoice sent**. Cancelled orders are removed entirely - there's no "cancelled" status. ## When does an order become locked? By default, an order locks once the cutoff for its delivery date has passed. For a Tuesday delivery with a 5pm Monday cutoff, the order locks at 5pm Monday. Locked means the customer can no longer change or cancel it. You can shorten this window in Settings - see the next section. A padlock icon shows up next to pending orders so you can see which ones are still editable and which are locked. ## Can I lock orders sooner than the cutoff? Yes. The **Order lock window** setting in [Settings](/settings) controls when a customer's order locks. The default - **Until cutoff** - keeps the order editable right up to the cutoff for its delivery date. This is the most flexible option for customers and what most wholesalers want. If you'd rather lock orders sooner, you can pick: - **Immediately** - the order is locked the moment it's placed. Customers never see the **Placed** status - new orders go straight to **Locked**. - A fixed window after placement: **15 minutes**, **30 minutes**, **1 hour**, **2 hours**, **6 hours** or **24 hours**. Once the window expires, the order locks even if the delivery cutoff is still days away. The delivery cutoff always wins if it lands sooner. A 24-hour window on an order placed 6 hours before the cutoff locks at the cutoff, not at the 24-hour mark - the order can never stay editable past its delivery cutoff regardless of which window you pick. A tighter lock window suits merchants who start preparing orders the moment they come in and don't want last-minute changes. The looser default suits merchants who batch their work close to the delivery date and are happy for customers to keep tweaking until the cutoff. ## When can I mark an order as processed? For orders the customer placed, once they're locked. Until the order locks, the action is disabled - the customer might still be making changes or cancelling. When that happens depends on your Order lock window setting (see above). For orders **you** placed on the customer's behalf, you can mark them as processed straight away. There's no customer-editing window to wait for, so the lock gate doesn't apply. Either way, you can mark orders as processed individually from each order's actions menu, or in bulk by selecting multiple eligible orders at once. ## Can I revert a processed order back to pending? Yes, as long as it hasn't been invoiced. Once an invoice exists, the order's status is fixed. ## Can a customer change their order after placing it? Yes - up until the order locks. They can change quantities, add or remove products, or change the delivery date. Wholesale Handler revalidates everything on update - stock, prices, minimum spend and delivery date validity. The updated order uses today's prices, not the prices that applied when they originally placed the order. When the order locks depends on your Order lock window setting (see above). With the default **Until cutoff**, the customer can edit right up to the delivery cutoff. With **Immediately**, they can't edit at all once placed. With a fixed window like **1 hour after placement**, they have that long from when they placed the order, or until the delivery cutoff if it lands sooner. Once the order locks, the customer can no longer update or cancel it. ## Can a customer cancel their order? Yes, while it's still pending and not yet locked. Cancelling removes the order entirely and returns any finite-stock items back to your inventory. Once the order locks the customer can no longer cancel it themselves - same window as updates, controlled by your Order lock window setting. ## How is the order reference generated? Each order gets a reference like \`ORD-2026-001\`. The year is when the order was placed; the number is a running sequence across all your orders that doesn't reset each year. Numbers are padded to at least three digits. Both you and your customer see the reference, it appears on invoices, and you can search for orders by reference on the orders list. ## What happens when a product runs out of stock? Stock tracking is optional - leave the quantity unset and Wholesale Handler treats the product as infinite (the default for bakeries and similar). For products with a finite stock level, Wholesale Handler tracks the remaining quantity and prevents customers from ordering more than is left. When stock hits zero, the product moves to a **Sold out** section at the bottom of the customer's product list. They can still see it but can't add it to their order. There's a button to subscribe for a one-time email when you restock. You can restock manually, or stock returns automatically when an order is cancelled. Either way, subscribed customers get an email and the product becomes orderable again. Subscriptions clear once the notification fires - if the product sells out again, customers subscribe again. ## How do I get notified about orders? Turn on order activity emails in Settings and you'll get an email whenever a customer places, updates or cancels an order. If a customer makes several changes in quick succession, you'll get one update email rather than several. Customers can opt in to email receipts in their own settings - they'll get a copy of every order they place, update, or cancel. The order on their account is the source of truth either way; the email is just a copy. ## Are there any limits on how many orders I can take? No - there are no order count limits. Wholesale Handler caps how many customers (50) and products (500) you can have, but orders themselves are unlimited. ## How Wholesale Handler handles orders The orders list shows every order in one place, whether the customer placed it themselves or you placed it on their behalf. A status badge tells you whether each order is pending or processed, the padlock icon picks out the pending orders that are still editable by the customer, and the search bar finds orders by reference, customer name or contact name. Bulk actions sit at the bottom of the list once you've selected one or more rows: mark several eligible orders as processed in one click, or generate packing slips for a whole day's deliveries together. Once orders are processed, they show up in the **uninvoiced** drawer ready to be turned into invoices in a single batch. ## Q&A **Q: How does a customer place an order?** A: They sign in, open Orders, click "Place order...", pick a delivery date, add quantities for the products you have made available, and submit. They see their personalised price list and only the delivery dates allowed by the cutoff and lead time on their order profile. **Q: Can I place an order on behalf of a customer?** A: Yes. Pick a customer, choose a delivery date, add line items, and place the order. It appears in your orders list as a normal pending order, except you can mark it as processed straight away - there is no need to wait for the cutoff, since you are the one placing it. **Q: What is a delivery cutoff?** A: The time of day after which "today" stops counting for ordering. Order before the cutoff and lead time starts counting from today; order after, and it starts from tomorrow. Most wholesalers set it between 3pm and 8pm. **Q: When does a customer's order lock?** A: By default, at the cutoff for its delivery date - up until then the customer can update line items, change the delivery date, or cancel. You can shorten that window in Settings via the Order lock window setting: lock immediately on placement, or after a fixed window of 15 or 30 minutes, 1, 2, 6 or 24 hours from placement. The delivery cutoff still wins if it lands sooner. If you set it to lock immediately, customers never see the Placed status - new orders go straight to Locked. **Q: What are the order statuses?** A: Wholesale Handler shows one badge per order that combines the raw stage, the lock state, and the invoice lifecycle. The merchant sees the full set - Placed, Locked, Processed, Invoice created, Invoice sent, Customer declared paid, Paid, Invoice disputed - while the customer sees a friendlier subset (Placed, Locked, Processed, Invoice sent, Paid). Cancelled orders are removed entirely - there is no separate "cancelled" status. **Q: Can a customer change their order after placing it?** A: Yes, until the order locks. They can change quantities, add or remove products, or change the delivery date. The updated order uses today's prices, not the prices that applied when it was originally placed. When the order locks depends on your Order lock window setting - by default at the delivery cutoff, but you can shorten that window. **Q: Can a customer cancel their order?** A: Yes, while it is still pending and not yet locked. Cancelling removes the order entirely and returns any finite-stock items back to your inventory. --- --- title: How standing orders work on Wholesale Handler Metadescription: How standing orders work on Wholesale Handler - weekly through four-weekly recurring orders, three-day preview emails with one-click skip and pause. Display description: A standing order places the same delivery on a repeating schedule, so a regular customer doesn't have to repeat last week's order every week. Wholesale Handler generates each delivery a few days ahead, emails a preview with a one-click skip link, then locks at the cutoff. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-23 updated: 2026-06-01 --- Token estimate: ~3,000 # How standing orders work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. A standing order places the same delivery on a repeating schedule - same products, same quantities, same day of the week - so a regular customer doesn't have to sign in every week to repeat last week's order. The customer or the merchant can set one up. Wholesale Handler generates each upcoming order a few days ahead of time, emails the customer a preview at today's prices with a one-click skip link, then locks the order at the usual cutoff. ## What is a standing order? A **standing order** is a rule that generates regular orders automatically. The rule sets the day of the week, the cadence (weekly, fortnightly, three-weekly, or four-weekly), the first delivery date, and the products and quantities. From there, each delivery's order is created without anyone having to log in. The generated orders show up in the normal [Orders](/orders) list and behave like any other order - same cutoff, same lock rules, same packing slip, same invoice. The only difference is who created them. ## Who can create a standing order? Either party. A customer signs in, opens [Standing orders](/standing-orders) and starts a new one with a merchant they already order from. A merchant can also create one on a customer's behalf from the same page, after picking the customer. Each customer can have up to 10 active standing orders with one supplier. Cancelled ones don't count toward the limit. ## How do I create a standing order? Open [Standing orders](/standing-orders) and start a new one. The form asks for: - **Day of the week** for the delivery. Only days the customer's order profile accepts are selectable. Each day shows how many standing orders are already scheduled for it, so a customer adding a second Monday order can see they already have one. - **Cadence** - weekly, fortnightly, three-weekly, or four-weekly. - **First delivery date** - a list of the next 60 days, with anything outside the customer's order profile - its lead time, cutoff, or accepted days - shown disabled with the reason inline. - **Products and quantities** - the same picker as the one-off order form. Leave a quantity blank to skip a product. - **Optional label** - a short name like "Monday Breads" or "Friday Veg" that replaces the default "Weekly on Mondays" title on the detail page and in emails. Useful when a customer has more than one standing order with the same merchant. - **Optional delivery notes** - reused on every generated order. The summary updates as quantities change so the total cost per delivery is visible before submit. ## What does each status mean? ### Active Generating orders as scheduled. ### Paused A pause window covers today. Bounded pauses show "Paused until \[date\]" and resume themselves on their own once that date passes; indefinite pauses show "Paused indefinitely" and stay paused until someone resumes the schedule. ### Needs attention Wholesale Handler can't generate the next order without a decision - for example the merchant stopped accepting that day of the week, or a product on the standing order was discontinued. The schedule's detail page shows the specific cause and the action to take. A schedule that hasn't been paused or cancelled stays Active. Paused is automatic - a paused schedule flips back to Active on its own once the pause end date passes. ## How do I skip a single delivery? Two ways: - **From the email** - each upcoming order's preview email has a "Skip this order" link. Clicking it opens a confirmation page with the order summary and a final skip button. Two clicks total, to protect against email clients pre-fetching the link. - **From the website** - on the standing order's detail page, click Skip... and confirm. The action affects only the next delivery. Skipping cancels the already-generated upcoming order if Wholesale Handler has created one, then tells the schedule to skip that one date on the next pass. The standing order stays active and the delivery after that is unaffected. ## How do I pause a standing order? On the standing order's detail page, click Pause.... The form lists the next dozen upcoming deliveries plus a "Pause indefinitely" option. Pick the delivery date the customer wants to resume on, or pick indefinitely if they don't know yet. The submit button names the consequence - "Resume on Wed, 28 May" or "Pause indefinitely" - so there's no surprise on click. While paused: - No new orders generate for that schedule. - Any already-generated order with a delivery date inside the pause window is cancelled. Pausing stops the very next delivery even if Wholesale Handler has already created the order for it. - The status row shows "Paused until \[date\]" or "Paused indefinitely". Bounded pauses resume themselves on their own. Indefinite pauses stay paused until someone clicks Resume... on the detail page. There's no maximum pause length either way. ## How do I cancel a standing order? Click Cancel... on the detail page and confirm. Cancelling stops the schedule from generating any more orders. Orders that have already been generated stay where they are. The cancelled schedule becomes read-only and can't be reactivated, so a customer who changes their mind has to create a new standing order. ## What's the difference between pausing and cancelling? **Pausing** is temporary and reversible. The standing order keeps its history, its products, its day, and its cadence, and either resumes itself on the chosen date or waits for someone to resume it. Use it for holidays, school terms, off-seasons, or any predictable gap. **Cancelling** is permanent. Use it when the customer wants to stop the arrangement, not pause it. Creating a fresh standing order later is the way back. ## When does my standing order's order lock? The same rules as a one-off order - the order locks at the cutoff for its delivery date, unless the merchant has set a shorter lock window. See [How orders work on Wholesale Handler](/articles/how-orders-work-on-wholesale-handler) for the full picture - the standing order doesn't change any of it. The preview email shows the exact cutoff timestamp so there's never any ambiguity about when the next chance to edit closes. ## What emails does the customer receive? Two: - **One email when the standing order is created** to both the customer and the merchant. Includes the cadence, the first delivery date, the product list, and a link to the standing order's detail page. - **One email three days before each delivery** to the customer only. Includes the delivery date, the cutoff timestamp, the product list with today's prices, and a "Skip this order" link that doesn't need a login. Both emails are a copy for the customer's records. The standing order and its upcoming order on the site are the source of truth either way. If the customer does nothing with the preview email, the order fires normally at the cutoff. Customers who are notified by email but don't sign in (managed customers with a confirmed email address) receive the same emails, with one difference - no links or buttons. Their emails are purely informational, and each one says who to contact to make a change: the merchant, through whatever channel they already use. If something unexpected happens, like an item being out of stock when a standing order places, the customer is always emailed about it regardless of their email settings. ## What about bank holidays? Holiday handling for standing orders is on the roadmap. Until it lands, the safe default is to skip the affected delivery from either the preview email or the detail page once it's been generated. ## Can a merchant manage a customer's standing orders? Yes. The merchant's [Standing orders](/standing-orders) page shows every customer's schedules in one table, with a day-of-week filter for finding all the Monday schedules at once. Clicking through opens the same detail page the customer sees, with the same skip, pause, and cancel actions. Useful when a customer calls and asks for a change without going through the site themselves. ## How Wholesale Handler handles standing orders The standing orders list at [Standing orders](/standing-orders) shows every active and paused schedule in one place, with the day of the week, cadence, item count, next delivery date, and status visible inline. Each generated order appears in the main [Orders](/orders) list as soon as it's created. From there it's an ordinary order - the customer can update it, skip it from the preview email, or let it lock at the cutoff. The standing order itself is the rule; the upcoming order is the thing about to be delivered. ## Q&A **Q: Can I skip just one delivery without cancelling the whole standing order?** A: Yes. Each upcoming order's preview email has a "Skip this order" link that doesn't need a login, and the standing order's detail page has the same option. Skipping affects only that one delivery - the schedule keeps running. **Q: What happens if I pause my standing order while an order is already being prepared?** A: Pausing cancels any already-generated order whose delivery date falls inside the pause window, even if Wholesale Handler created the order earlier in the week. Orders that have already locked are left alone - locked orders are real commitments. **Q: Can I change the products on my standing order?** A: Yes. Open the standing order's detail page and update the lines - the change applies to every future delivery. To change just one upcoming delivery, edit that order on the Orders list instead. **Q: How many standing orders can I have with one supplier?** A: Up to 10 active ones per supplier. Cancelled standing orders don't count toward the limit. **Q: Will my standing order keep firing on bank holidays?** A: Holiday handling for standing orders is on the roadmap. Until it lands, skip the affected delivery from the preview email or the detail page. **Q: Why didn't I receive an email for my standing order this week?** A: Check the standing order's status on its detail page. If it's Paused or Needs attention, no order will have been generated and no email will have been sent. The status row explains the cause. **Q: Can the supplier manage my standing order on my behalf?** A: Yes. The merchant's standing orders list shows every customer's schedules and they can skip, pause, or cancel any of them on the customer's behalf, the same as if the customer did it themselves. **Q: What's the difference between pausing and cancelling?** A: A pause is temporary - the standing order resumes itself on the chosen date with the same products, day and cadence. A cancel is permanent and a new standing order has to be created from scratch to start again. **Q: When does a standing order's order actually lock so I can't edit it?** A: At the cutoff for the delivery date, unless the merchant has chosen a shorter lock window in their settings. The preview email shows the exact cutoff timestamp. **Q: How do I see what's about to be delivered?** A: Each upcoming order appears in the Orders list alongside any one-off orders. The standing order's detail page also shows the next few upcoming deliveries. --- --- title: How production schedules work on Wholesale Handler Metadescription: How production schedules work on Wholesale Handler - aggregated quantities, daily and weekly views, lock status, per-customer breakdown and PDFs. Display description: A production schedule is the merchant's view of what to make for a given day or week. Wholesale Handler totals up every customer's order by product, so you can see what to bake, pack or pick - then print it as a PDF to help prepare your orders. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-05 --- Token estimate: ~2,200 # How production schedules work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. Your production schedule is the merchant's view of what to make for each delivery date. Wholesale Handler reads every pending and processed order, totals up the quantities by product, and shows you one summary per day (or per week) so you don't have to flick through ten separate orders to plan the day's work. It lives at the [Production schedule](/production) page in the menu, and every day's totals can be printed as a PDF to hand to whoever's preparing the orders. ## What is a production schedule? A production schedule turns a stack of customer orders into a single "what to make" list per delivery date. If five customers between them order 42 sourdough loaves, 28 baguettes and 16 dozen eggs for Thursday, your Thursday card on the production schedule shows exactly those three lines - not five separate orders. You start the day knowing what to make in total, not what each customer wants. ## How do I open the production schedule? Click [Production schedule](/production) in the menu. The page opens to today (if you use daily precision) or this week (if you use weekly precision), with a grid of upcoming delivery dates ahead of it. Use the chevron buttons either side of the grid to scroll backwards or forwards in time, or click **Today** / **This week** to jump back. ## What does each day on the schedule show? Every day (or week) on the grid is a card containing: - The delivery date - A lock icon showing whether the cutoff has passed - The total number of orders placed for that date - An aggregated product list - every product, with the total quantity needed across all customers - A **PDF** button to print a hand-out for that date Past dates fade slightly so the eye is drawn to upcoming production. Days with no orders show the reason - a holiday name if you've added one (like "Bank holiday Monday"), or a note that you don't deliver on that weekday. ## What does the lock icon mean? The lock icon shows whether orders for that delivery date are final. Locked The cutoff for this date has passed. Customers can no longer change, cancel or add to their orders, so the totals on this card are final. Safe to start prepping. Open The cutoff hasn't passed yet. Customers can still place, change or cancel orders, so the totals may still move before the deadline. ## How do I see which customer ordered what? Click into the date on the schedule and the detail page opens. It shows the same aggregated product list as the grid card, plus a per-customer breakdown listing every customer ordering for that date and what they ordered. Each customer's order references link straight back to the order itself if you need to check anything specific. This is mainly useful when you're moving from "make" to "pack" - the aggregated list tells you what to prepare in total, the per-customer breakdown tells you which order each item belongs to. ## How do I print a production schedule? Click **PDF** on the day's card on the grid, or open the date's detail page and click **PDF** there. The PDF lists each product with its total quantity and a checkbox - tick them off as you prepare each item. Totals match what you see on screen at the moment you generate the PDF. If the cutoff hasn't passed yet, regenerate the PDF after the lock to make sure you've got the final numbers - any orders that came in late or got changed after you printed won't be reflected on the earlier copy. ## Can I add notes to a production day? Yes. Each production day has a private notes field on its detail page - free text, saved against that date, only visible to you. Use it for things that don't belong on any customer-facing order: - A substitution you've agreed informally with a customer - A delivery instruction ("leave at side gate") - A reminder about who's picking up that day - Anything else you'd otherwise have to remember separately Notes are per-date, so a note saved against Thursday won't show up when you open Friday. ## How does daily vs weekly precision work? Your **delivery precision** setting controls how the schedule is grouped: - **Daily precision** - the grid shows individual days (Mon, Tue, Wed...) and you plan production one day at a time. This suits most wholesalers - bakeries, florists, egg suppliers, fresh produce. - **Weekly precision** - the grid shows weeks-commencing-Monday, and each card aggregates everything ordered for that whole week. This suits seasonal businesses where customers commit weeks or months ahead - Christmas trees, pumpkins, and similar. You set this in Settings under delivery precision. Switching it changes the production schedule grid the next time you open the page. ## What happens on holidays? Days you've marked as a holiday show the holiday name in place of a product list - they're not orderable, so there's nothing to make. For weekly precision, a week is only marked as a holiday if every accepted delivery day in that week falls inside the holiday range. If even one accepted day remains, the week stays orderable and the card shows the totals for the orders that did come in. ## Can I look at past production schedules? Yes. Use the chevron buttons or click **Today** / **This week** to scroll backwards through the grid - past dates stay accessible indefinitely. The detail pages for past dates also stay accessible, so you can re-print a PDF or look up what a specific customer ordered on any historical delivery date. ## How Wholesale Handler handles production schedules The production schedule is built directly from your orders, so you never enter the same information twice. Place an order on a customer's behalf and the totals on its delivery date update immediately. A customer changes their order before the cutoff and the totals change with it. The cutoff passes and the lock icon flips green - the totals are final, the PDF you print is the one you can hand to whoever's preparing the orders. The grid view is for planning - "what's the week ahead look like?". The detail view is for prepping - "what exactly am I making on Thursday, and for whom?". The PDF is the hand-out for the bench, the field, the cool-room or the workshop - wherever the actual work happens, away from the screen. ## Q&A **Q: What is a production schedule?** A: A production schedule is your view of what to make for each delivery date. Wholesale Handler adds up every customer's order line by line, so instead of reading ten orders you see one total per product - "42 sourdough, 28 baguettes, 16 dozen eggs" - for the day or week you're prepping for. **Q: How do I print my production schedule?** A: Open the Production schedule page, find the day or week you want, and click PDF on its card. The PDF shows totals per product with checkboxes you can tick off as items are prepared. **Q: What does the lock icon on each day mean?** A: A green lock means the cutoff has passed for that delivery date - the orders are final and safe to start prepping. An amber lock icon means customers can still place, change or cancel orders for that date, so the totals could still move. **Q: Can I see which customer ordered what?** A: Yes. Click into a date from the production schedule grid and you'll see a per-customer breakdown alongside the aggregated totals - useful when you're packing customer-specific bags or checking a query against a specific order. **Q: Can I add notes to a production day?** A: Yes. Each production day has a private note field where you can record anything that doesn't belong on a customer-facing order - a substitution to make, a delivery instruction, a reminder about who's collecting. **Q: Does the production schedule work for weekly deliveries?** A: Yes. If your delivery precision is set to weekly (common for Christmas tree farms, pumpkin growers and other seasonal businesses), the production schedule groups by week-commencing Monday instead of by day, and shows totals for the whole week. --- --- title: How storefronts work on Wholesale Handler Metadescription: How public storefronts work on Wholesale Handler - enabling, setup, choosing products, pricing, review and approval, editing once live and disabling. Display description: A storefront is an opt-in public page that lets prospective customers find your wholesale business through Google. You set it up in three steps, submit for review, and once approved your page goes live at /stores/your-slug. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-04 --- Token estimate: ~2,000 # How storefronts work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. A storefront is an opt-in public page that lets prospective customers find your wholesale business through search engines. You fill in business details, pick which products to include, submit for review, and once approved your page goes live at [/stores/your-slug](/stores). Existing customers don't use the storefront - they sign in and order through their normal account. The storefront is purely an acquisition channel. ## Why have a public storefront? Many small wholesalers have no web presence and rely on word of mouth. A café owner looking for a bread supplier or a florist needing wholesale flowers has no good way to find local options. A storefront gives you a search-friendly page targeting long-tail queries like "wholesale bakery delivery Aberdeenshire" so trade buyers can discover you. ## How do I enable it? Open [Settings](/settings) and scroll to the **Storefront** section. Click Enable storefront. Nothing is published yet - this just unlocks the setup flow. The feature is opt-in: until you enable it, no storefront exists for your account, and the storefront-related options on your products and price lists stay hidden. ## How do I set it up? Once enabled, the setup flow has three steps: - Details - your slug (the part of the URL after \`/stores/\`), country, business description, city and delivery areas. The description is what search engines show in results, so there's a character target shown on the field. - Products - a per-product toggle on each row of your library decides which products appear on the storefront. You can display all or a selection of your products. - Review - check how the page looks via [preview](/storefront/preview), then submit for review. The slug is locked once you save it - pick something stable. Delivery areas are comma-separated tags ("Aberdeen, Aberdeenshire, Dundee") and are the SEO gold: they target the long-tail search queries trade buyers actually use. ## How do I choose which products appear? Each product has a **show on storefront** toggle (off by default). Turn it on for products you want listed publicly. The toggle only appears once the storefront feature is enabled. You can manage visibility from each product's update form, or as a bulk view from the Products step of the setup flow. For details on the rest of a product's settings see [how products work](/articles/how-products-work-on-wholesale-handler). ## How does pricing on the storefront work? A storefront has a single **show prices** toggle that applies to every product on the page: - **On** - every product shows its price from the dedicated **Storefront** price list (typically your highest, public-facing rate) - **Off** - every product shows "Contact for pricing" instead **Showing prices** [Blue Ridge Christmas Trees](/stores/blue-ridge-christmas-trees) displays a price next to every product on the page. **Hiding prices** [Magnolia Street Bakery](/stores/magnolia-street-bakery) shows "Contact for pricing" instead. The Storefront price list works like any other price list in your account - set a percentage of Default (or override individual prices) on its detail page. For the full mechanics of price lists see [how price lists work](/articles/how-price-lists-work-on-wholesale-handler). ## How does review and approval work? When you submit your storefront for review, its status moves from **draft** to **pending review** and Wholesale Handler emails me a private link to preview your page. I approve or reject it within a working day or so. If approved, your page goes live at \`/stores/your-slug\`. If rejected, you'll get an email with the reason and the storefront moves back to draft so you can edit and resubmit. Submission is blocked until you've added a business description and at least one product. Wholesale Handler tells you which one is missing. The review step is content moderation. Wholesale Handler is my website and I'm personally responsible for what is published under it, so I read each submission to make sure it's a real wholesale business and the copy is fit to publish. I'm not evaluating your style or prose - merely making sure my website isn't being used for anything untoward. ## Can I update my storefront after it's live? Yes. Updates to an approved storefront don't take it offline. The approved version stays live exactly as it was; your changes are saved as a working draft and only replace the live version once you resubmit and I re-approve. This means you can fix a typo or update your description without worrying about your page going dark. The trade-off: changes you make aren't visible to the public until they've been re-reviewed. ## How do I disable my storefront? From the Storefront section of [Settings](/settings), click Disable storefront.... If your storefront is approved or under review, Wholesale Handler asks you to confirm - disabling takes the public page offline immediately. Disabling preserves all your storefront data. If you re-enable later, your details, products and slug are still there - you don't need to start over. ## How Wholesale Handler handles storefronts The storefront sits alongside your normal merchant tools rather than on top of them. Storefront-eligible products are the same product records you sell to existing customers; the storefront price list works like any other price list; the public page reads directly from those same sources. Nothing about your day-to-day order workflow changes when you enable a storefront. The public-facing side - your \`/stores/your-slug\` page, structured data for search engines, and the public directory at [/stores](/stores) - is generated automatically from your details and your storefront-flagged products. ## Q&A **Q: What is a Wholesale Handler storefront?** A: An opt-in public page that lets prospective customers find your wholesale business through search engines. You fill in business details, pick which products to include, submit for review, and once approved your page goes live at /stores/your-slug. Existing customers do not use it - it is purely an acquisition channel. **Q: How do I set up a storefront?** A: Three steps. Details: slug, country, business description, city and delivery areas. Products: a per-product toggle decides which products appear publicly. Review: check the preview and submit for moderation. **Q: How does pricing on the storefront work?** A: A single "show prices" toggle applies to every product on the page. On - every product shows its price from the dedicated Storefront price list (typically your highest, public-facing rate). Off - every product shows "Contact for pricing" instead. **Q: How does review and approval work?** A: When you submit, the storefront moves from draft to pending review. Dan personally reads each submission to make sure it is a real wholesale business and the copy is fit to publish, and approves or rejects within a working day or so. If rejected, you get an email with the reason. **Q: Can I update my storefront after it is live?** A: Yes. Updates do not take the page offline. The approved version stays live exactly as it was; your changes are saved as a working draft and only replace the live version once you resubmit and it is re-approved. --- --- title: How packing slips work on Wholesale Handler Metadescription: Generate packing slip PDFs for one order or a whole day's deliveries on Wholesale Handler. What's on the slip, the standing info field and bulk printing. Display description: A packing slip is a printable PDF telling whoever's loading the van exactly what goes in each customer's crate. Wholesale Handler generates them directly from the order, with quantities, delivery date and any standing notes you want printed on every slip. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-20 --- Token estimate: ~2,600 # How packing slips work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. A packing slip is a printable PDF for each customer's order, telling whoever's loading the van exactly what's in their crate. Wholesale Handler builds it for you from the order itself, so the slip always matches the order as it stands the moment you click the button - no copying out by hand, no out-of-date notes. You can print one slip for one order, or a whole day's deliveries in a single click. ## What is a packing slip? A packing slip is a print-friendly version of the order - same customer, same line items, same delivery date, but no prices and with your standing delivery notes underneath. It goes out with each delivery so whoever's packing or driving can check the right items are in the right crate. The customer typically signs it on delivery or keeps it as a record of what arrived. A packing slip in Wholesale Handler shows: - Your business name and the customer's business name and contact name - The order reference - The delivery date - Every line item on the order, with quantity, pack size and unit label - Any standing information you've added under **Packing slip information** in [Settings](/settings) There are no prices on a packing slip. If you need a document with prices, that's an invoice. ## How do I generate a packing slip for one order? Two routes: - From the [Orders](/orders) list - open the order's actions menu and click Generate packing slip - From the order's detail page - click Generate packing slip at the top Either way, Wholesale Handler builds the PDF and opens it in a new tab. From there you print it, save it, or do whatever your delivery workflow needs. You can generate a packing slip at any point - including for a brand new order that the customer might still change. If you want to be certain the contents won't shift between printing and delivery, wait until the order has locked - but nothing stops you printing one earlier if that fits your workflow. ## How do I generate packing slips for a whole day's deliveries? From the [Orders](/orders) list, tick the checkbox on each order you want a slip for. Use the search bar and filters to narrow the list down to (for example) Thursday's deliveries, then select them all in one go. Once you've selected at least one order, a Generate 12 packing slips action appears - click it and Wholesale Handler builds one combined PDF with each order's slip starting on a fresh page, then opens it in a new tab. Send it to the printer and you've got a stack of slips ready to go on the van. Your selections stay put as you search, filter and page through the list - so you can search "Thursday delivery", select all 12, clear the search, find a 13th order that needs to go on the same run, select it too, and then generate one combined PDF for all 13. ## What goes on the slip and what doesn't? **On the slip:** - Your business name (top) - Order reference, status, and delivery date - Customer business name and contact name - Line items with quantity, pack size and unit label - The product description, if you've added one - Your **Packing slip information** text (see below) **Not on the slip:** - Prices, totals, VAT or delivery charges - those belong on invoices - The customer's address - Wholesale Handler doesn't store delivery addresses on orders (you arrange delivery details with each customer separately) - Your contact details unless you've added them to the packing slip information field ## What is the packing slip information field? Free text that appears on every packing slip you generate. It's the same on every slip - delivery hours, your phone number, instructions for the recipient, anything you'd otherwise hand-write or stamp on each slip. Set it under **Packing slip information** in [Settings](/settings). There's a sensible default with delivery hours and a contact number to give you the shape of it - replace it with whatever fits your business. There's also a Generate example packing slip button there that builds a sample PDF from your most recent order, so you can see how your text lands on the page before you commit. Common things to include: - Delivery hours so the recipient knows when to expect you - A phone number or hours for queries about the order - Instructions about checking the delivery and reporting issues - Anything that applies to every customer (terms, returns policy, social handles) The field is optional - leave it blank and the slip just shows the order details with no extra block. ## Can a customer see their packing slip? No. Packing slips are for merchants, not the customer. The customer sees their order in their own [Orders](/orders) list with the same line items, quantities and delivery date, but they don't generate or receive a separate packing slip. The slip is for your delivery workflow - the order itself is the customer's record. ## How is a packing slip different from the production schedule? The two answer different questions: - **Packing slip** - one document per customer, per order. Answers "what goes in this customer's crate?". Use when you're packing or delivering. - **Production schedule** - one document per day (or week), totalled across every customer. Answers "what do I need to make in total today?". Use when you're prepping or baking. A bakery prepping Thursday's run would print the production schedule for Thursday - "make 42 sourdough, 28 baguettes" - bake all of it, then pack from packing slips - "Café A gets 4 sourdough and 2 baguettes, Café B gets 6 sourdough and 4 baguettes, ...". See [how production schedules work](/articles/how-production-schedules-work-on-wholesale-handler). ## What happens if the order changes after I generate the slip? The PDF reflects the order as it stood the moment you clicked the button. If the customer (or you) updates the order after that, the PDF on your desk is now out of date - just generate it again to get a fresh version. This is the usual reason to wait until the order has locked before printing slips. Once it's locked, the customer can't change it any more, so the slip you print will still be accurate at delivery time. When orders lock is controlled by the **Order lock window** setting in [Settings](/settings) - see [how orders work](/articles/how-orders-work-on-wholesale-handler) for the full mechanics. ## Can I generate a packing slip for a cancelled order? No. Cancelled orders are removed from your orders list entirely, so there's nothing to generate a slip from. If you need a record of a cancelled order, the order activity email you received when it was placed has the details. ## How Wholesale Handler handles packing slips Packing slips are built fresh from the order every time you click the button - there's no separate packing-slip document sitting somewhere that you have to keep in step with the order. Change the order, generate again, and the new PDF reflects the change. Print one slip for one order from the order's actions menu, or select a batch of orders on the list and print the whole day's slips in a single combined PDF. The **Packing slip information** field is the only standing text attached to packing slips - everything else comes from the order itself. Edit it once and every slip you generate from then on picks it up; print an example slip directly from the settings card to see how it lands before you rely on it for a real delivery. ## Q&A **Q: What is a packing slip?** A: A packing slip is a print-friendly version of the order - same customer, same line items, same delivery date, but no prices and with your standing delivery notes underneath. It goes out with each delivery so whoever's packing or driving can check the right items are in the right crate. **Q: How do I generate a packing slip for one order?** A: Open the order's actions menu from the Orders list (or open the order itself) and click Generate packing slip. Wholesale Handler builds the PDF and opens it in a new tab - print it, save it, or do whatever your delivery workflow needs. **Q: How do I generate packing slips for a whole day's deliveries?** A: Tick the orders you want on the Orders list, then click the Generate N packing slips action that appears. Wholesale Handler combines every selected order into one PDF with each slip starting on a fresh page, then opens it in a new tab ready to print. **Q: Can a customer see their packing slip?** A: No. Packing slips are for merchants, not customers. The customer sees their order in their own Orders list with the same line items, quantities and delivery date, but they don't generate or receive a separate packing slip. **Q: How is a packing slip different from the production schedule?** A: A packing slip is one document per customer, per order, answering "what goes in this customer's crate?". A production schedule is one document per day or week, totalled across every customer, answering "what do I need to make in total today?". Use packing slips when packing or delivering, the production schedule when prepping or baking. **Q: What happens if the order changes after I generate the slip?** A: The PDF reflects the order as it stood the moment you clicked the button. If the order changes after that, the printed PDF is out of date - just generate it again to get a fresh version. This is why most slips are printed once the order has locked. **Q: Can I generate a packing slip for a cancelled order?** A: No. Cancelled orders are removed from your orders list entirely, so there's nothing to generate a slip from. If you need a record of a cancelled order, the order activity email you received when it was placed has the details. --- --- title: How invoices work on Wholesale Handler Metadescription: How invoices work on Wholesale Handler - creating drafts, finalising and sending, payment tracking, bank checks, disputes and credit notes. Display description: An invoice is a priced record of what a customer owes you for one or more orders. Wholesale Handler creates it from the orders, you finalise and send, then both sides track payment together until it's marked paid. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-21 --- Token estimate: ~3,600 # How invoices work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. An invoice is your formal demand for payment - the document that tells the customer "this is what you owe me, please pay it". In Wholesale Handler you build it from the orders the customer has already placed, finalise it, send it, and then both you and the customer track payment against it until it's marked paid. There's no separate "invoice book" to maintain. Invoices come straight out of the orders you've already accepted, with the line items and totals already in place. ## What is an invoice? An invoice is the document that demands payment. The orders themselves are records of what the customer bought (and at what price), but they're not in themselves a request for money - the invoice is. It's what you send when you're ready to be paid, and what the customer pays against. One invoice can cover a single order or bundle several orders together (a whole week's deliveries, say). Where a packing slip is the unpriced "what's in the crate" handed over with the delivery, the invoice is the priced "this is what you owe me" sent to settle the account. See [how packing slips work](/articles/how-packing-slips-work-on-wholesale-handler). Every invoice in Wholesale Handler shows: - Your business name, contact details and **Invoice information** text (bank details, payment instructions, anything you want on every invoice) - The customer's business name and contact name (snapshotted at send time so future edits to the customer's profile don't change historical invoices) - A unique reference like INV-2026-042 (per-merchant sequence) - The orders it covers, with their delivery dates - Every line item - quantity, pack size, unit price, line total, VAT - Any adjustments you've added (delivery charges, discounts, credits) - Subtotal, VAT total and grand total - Status (Draft, Sent, Customer declared paid, Paid, or Disputed) ## How do I create an invoice from an order? From the [Orders](/orders) list or an order's detail page, open the order's actions menu and click Create invoice.... Wholesale Handler opens the new-invoice form pre-populated with that order's line items, customer details and totals. Review, edit if you need to (you can add adjustment lines, tweak line items, set a payment reference), then Finalise & send... to send it - or save as a draft to come back to. Only orders that don't already belong to an invoice can be turned into one - once an order's on an invoice, it disappears from the "ready to invoice" pool. ## How do I create one invoice for several orders? From the [Orders](/orders) list, tick the orders you want to bundle. They must all be the same customer - you can't put orders from two different customers on one invoice. Once you've selected at least one, a **Create N invoices...** action appears - click it and Wholesale Handler builds a single draft invoice covering all the selected orders, with each order's line items listed in order of delivery date. This is the usual route for weekly invoicing - select every Monday-to-Friday order for a customer, create one invoice, send it on Friday afternoon. ## What's the difference between a draft and a sent invoice? A draft is editable. You can add or remove line items, add adjustments, update the payment reference, and tweak anything you want. Drafts don't have a reference number assigned yet and the customer can't see them. Once you click Finalise & send..., the invoice locks: - A reference (INV-2026-042) is assigned from your per-merchant sequence - Customer name and email are snapshotted onto the invoice - An email goes out to the customer with a link to view it - The status moves from Draft to Sent - Line items, totals and adjustments are frozen The only field you can still edit on a sent invoice is the payment reference - useful if you set up a new bank account or change the reference format mid-flow. ## How do invoice references work? References use the format INV-YYYY-NNN, where YYYY is the current year and NNN is a per-merchant counter that increments each time you send. Two different merchants on Wholesale Handler can both have an INV-2026-001 - the sequence is yours alone, not shared across the platform. The reference is assigned only when you finalise and send - drafts don't burn a number. ## What is the invoice information field? Free text that lands on every invoice you send - your bank details, payment terms, contact hours, returns policy, anything you'd otherwise hand-write or stamp. Set it under **Invoice information** in [Settings](/settings). There's a sensible default to give you the shape of it - replace it with whatever fits your business. There's also a Generate example invoice button there that builds a sample PDF from your most recent invoice, so you can see how your text lands on the page before you commit. Common things to include: - Bank account name, sort code and account number - Payment terms ("Payment due within 14 days") - A phone number or hours for queries about the invoice - Notes about late payment or credit terms The field is optional - leave it blank and the invoice just shows the line items and totals with no extra block. ## How does sending an invoice work? Click Finalise & send... from the draft. Wholesale Handler: 1. Assigns the next reference from your sequence 2. Snapshots the customer's name and email onto the invoice (so future profile edits don't rewrite history) 3. Emails the customer with a link to view the invoice 4. Moves the status to Sent From there, the customer sees the invoice in their own [Invoices](/invoices) list and can declare payment when they've sent the money. ## How does payment tracking work? Two paths, depending on whether the customer uses the "I've paid" button or you just mark it paid yourself: **Customer-led:** 1. Customer sends payment via bank transfer (or whatever method you've agreed) 2. Customer clicks I've paid... on their copy of the invoice - status moves to "Customer declared paid" 3. You check your bank, see the money's arrived, click Mark as paid... - status moves to Paid **Merchant-led:** 1. Customer pays (no button click on their side) 2. You check your bank, click Mark as paid... on the invoice - status moves straight to Paid Either way, marking as paid is the final state - the invoice and the orders it covers are now closed. ## What does Record bank check do? The Record bank check button on an invoice logs the fact that you've looked at your bank account and checked whether this invoice has been paid. It doesn't change the invoice status - it just leaves a timestamped event on the invoice's history. Use it when you've checked the bank, the money's not in yet, and you want to record "checked on Friday, not yet arrived" so you don't forget you've already looked. The next time you open the invoice, you'll see when you last checked. ## What happens if I can't reconcile a customer's declared payment? If a customer marks an invoice as "I've paid..." but the money doesn't arrive (wrong amount, wrong reference, wrong account, or just never sent), click Dispute declaration.... Wholesale Handler: - Emails the customer to let them know you couldn't reconcile their declaration - Logs the dispute as an event on the invoice - Reverts the customer-visible status so they're prompted to check and re-declare On your side, the invoice keeps the dispute event in its history. Once the customer fixes the payment or re-declares, the normal payment flow resumes. ## Can I add adjustments to a draft? Yes. On a draft invoice, click Add adjustment to add a one-off adjustment line - a delivery charge, a goodwill credit, a discount, a deposit deduction. Adjustments can be positive or negative, and they flow into the subtotal and VAT calculations. Common uses: - Delivery fee that varies per order - Discount for paying early - Credit for a previous over-supply - Deposit already paid being deducted ## Can I edit an invoice after sending? Mostly no - sent invoices are frozen so the customer's copy stays in sync with yours. The exception is the payment reference: click Update payment reference... to change it without unsending or re-issuing. Useful if you switched banks, or want to add an order number to the reference for reconciliation. Customer name and email are snapshotted at send time, so editing the customer's profile later won't change the invoice. If a sent invoice was genuinely wrong (wrong line items, wrong totals), the right move is to issue a credit note rather than edit it - the audit trail stays intact. ## How do customers see their invoices? Customers have their own [Invoices](/invoices) page when they log in - they see only their own invoices, with the same line items, totals and status they'd see on a paper bill. They can click into any invoice for full detail and use I've paid... to declare payment when the money's been sent. They don't have a create/send flow - invoices are merchant-driven only. Customers can't edit, delete or dispute on their side; their only action is declaring payment. ## Can I delete an invoice? A draft can be deleted - it hasn't been sent, no reference has been burned, no customer's seen it. Sent invoices stay on the record permanently so the audit trail is intact - if a sent invoice was wrong, issue a credit note rather than deleting. ## How is an invoice different from a packing slip? The two answer different questions: - **Invoice** The priced document. Answers "how much does this customer owe me?". Goes out by email when you finalise and send, lives in both your and the customer's [Invoices](/invoices) list until paid. - **Packing slip** The unpriced document. Answers "what goes in this customer's crate?". Generates as a PDF on demand, goes out with the physical delivery, doesn't track payment. A typical week: customer's orders come in across Monday-Friday, you print packing slips daily for the deliveries, and at the end of the week you bundle the orders into one invoice and send it. See [how packing slips work](/articles/how-packing-slips-work-on-wholesale-handler). ## What about automatic invoicing? Right now invoicing is fully merchant-driven - you decide when to bundle orders into an invoice and when to send it. Automatic per-customer invoicing (set a billing day per customer, cron picks up uninvoiced orders and creates drafts on that schedule) is in design but not live yet. ## How Wholesale Handler handles invoices Invoices are built from your orders - you don't enter customer details or line items twice, the invoice form starts with everything filled in. Drafts are editable, sent invoices are frozen, and the customer sees their own copy in their own [Invoices](/invoices) page. The **Invoice information** field is the only standing text attached to invoices - everything else comes from the orders themselves. Edit it once and every invoice you send from then on picks it up; generate an example invoice directly from the settings card to see how it lands before you rely on it for a real customer. Payment tracking is two-sided: the customer can declare payment with I've paid... when they've sent the money, you confirm with Mark as paid... when you've seen it arrive. If the two don't reconcile, Dispute declaration... kicks the conversation back to the customer with an email. Record bank check is the audit trail in between - "I looked, it's not in yet". There's no separate accounts package to sync with, no double-entry bookkeeping to maintain, and no manual sequence numbering - the invoice reference, the customer snapshot, the totals and the audit trail are all handled for you. You decide when to send and when to mark paid; Wholesale Handler does the rest. ## Q&A **Q: What is an invoice?** A: An invoice is the priced document that demands payment - your formal "this is what you owe me" sent to the customer once the orders have been delivered. In Wholesale Handler one invoice can cover a single order or bundle several orders together (a whole week's deliveries, say), pulling line items and totals straight from the orders themselves. **Q: What's the difference between a draft and a sent invoice?** A: A draft is editable - you can add and remove line items, add adjustments and tweak the payment reference - and the customer can't see it. Once you finalise and send, the invoice locks: a reference is assigned, customer details are snapshotted, an email goes out, and line items and totals are frozen. The only field still editable on a sent invoice is the payment reference. **Q: How does payment tracking work?** A: Two paths. Customer-led: the customer sends payment, clicks "I've paid..." on their copy, you check the bank and click "Mark as paid..." to confirm. Merchant-led: the customer just pays and you click "Mark as paid..." yourself. Either way, marking as paid is the final state - the invoice and the orders it covers are closed. **Q: Can I edit an invoice after sending?** A: Mostly no - sent invoices are frozen so the customer's copy stays in sync with yours. The only exception is the payment reference, which you can change without unsending or re-issuing. If a sent invoice was genuinely wrong, the right move is a credit note rather than an edit, so the audit trail stays intact. **Q: How is an invoice different from a packing slip?** A: An invoice is the priced document - it answers "how much does this customer owe me?", goes out by email when you finalise and send, and tracks payment until it's marked paid. A packing slip is the unpriced document that goes out with the physical delivery to confirm what's in the crate. The invoice settles the account; the packing slip confirms the goods. --- --- title: How data export works on Wholesale Handler Metadescription: How data export works on Wholesale Handler - exporting invoice data as a CSV, choosing date ranges and columns, draft exclusions and row limits. Display description: Data export gets your invoice line items out of Wholesale Handler and into your accounting software as a CSV. Pick a date range, choose your columns, click Download CSV - your browser saves a file that's already in the shape Xero, QuickBooks and FreeAgent expect. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-21 --- Token estimate: ~1,800 # How data export works on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. Data export is how you get your invoice data out of Wholesale Handler and into your accounting software. Pick a date range, choose your columns, click Download CSV and you've got a clean spreadsheet ready to import. Wholesale Handler builds the file from your invoices directly, so the numbers always match what's in the app. No copying, no re-keying, no maintaining a separate spreadsheet. ## What can I export? Right now, invoice line items as a CSV from the [Export data](/export-data) page. That's the export your accountant cares about. Other outputs in Wholesale Handler are produced from the page they belong to rather than from a central export screen: - Invoice PDFs - see [how invoices work](/articles/how-invoices-work-on-wholesale-handler) - Packing slip PDFs - see [how packing slips work](/articles/how-packing-slips-work-on-wholesale-handler) - Production schedule PDFs - see [how production schedules work](/articles/how-production-schedules-work-on-wholesale-handler) ## How do I export my invoices? Open [Export data](/export-data) and: 1. Pick a date range (see below). 2. Check the 20-row preview underneath - it shows you what's about to be exported. 3. Optionally open Customise columns... to choose which columns appear. 4. Click Download CSV. Your browser downloads the file straight to your default downloads folder. From there it's up to your accounting workflow - drag it into Xero, attach it to an email, open it in a spreadsheet, whatever fits. ## Which date ranges can I pick? Six presets covering the periods most accountants ask for: - This month - Last month - This quarter - Last quarter - Last 6 months - Custom Custom lets you set any From and To dates - useful for one-off ranges that don't line up with a calendar month or quarter. ## What's in the CSV? One row per invoice line item. Invoice-level fields (the invoice reference, customer name, status) repeat on every row for that invoice - this is the format most accounting software expects. The available columns are: ### Invoice-level - Invoice reference (INV-2026-003) - Invoice date (2026-03-15) - Date paid (blank if the invoice is unpaid) - Payment reference (a reference from your bank statement, if recorded) - Customer business name - Customer contact name - Customer email - Status ("Sent" | "Paid" | "Declared paid") - Currency (ISO 4217 code, e.g. "GBP" or "USD") - Notes (free-text notes from the invoice) ### Line-item-level - Line item type ("Product" | "Adjustment") - Description (product name, or your free-text adjustment description) - Quantity (12) - Unit price (decimal in the invoice currency, e.g. 3.50 means £3.50, not 350 pence) - VAT rate (%) - VAT method ("Exclusive" | "Inclusive") - Net amount (42.00) - VAT amount (8.40) - Gross amount (50.40) - Weight unit ("kg" | "lb") - Typical weight (estimated weight of one, in the weight unit column; blank unless priced by weight) - Measured weight (actual weight billed, in the weight unit column; blank until weighed or if priced by piece) A few format choices worth knowing: - Dates use ISO format - year-month-day, e.g. **2026-03-15** for 15 March 2026 - so they import the same way regardless of region and sort chronologically when you order the column alphabetically in your spreadsheet. - Amounts are plain numbers with no currency symbol - the currency lives in its own column so your accounting software can read it cleanly. - The file is encoded as UTF-8 with a byte-order mark so Excel on Windows opens it without mangling accented characters. ## Can I change the columns? Yes. Click Customise columns... and you'll see a checkbox per column with an optional text input to rename the header. Tick what you want, type the headings your accounting software expects, save. Your choice is stored against your account, so the next time you come back to export the same columns are already selected. Open the customise screen again any time to change them. ## Why are some invoices missing? Drafts are excluded from the export - only sent and paid invoices are included. That way the figures you hand to your accountant never contain numbers you hadn't finalised. If an invoice you expected is missing, check [Invoices](/invoices) to see whether it's still a draft and finalise it if so. ## Why is there a row limit? Each export is capped at 5,000 line items so the file stays quick to build and reliable to download. If your chosen period is over the cap, narrow the date range and run the export in two or three smaller chunks - your accounting software will import them just fine in sequence. ## How Wholesale Handler handles data export Pick a period, eyeball the preview, customise the columns once and never again, click Download CSV. The file matches your invoices because it's built from them directly - no separate spreadsheet to keep in sync, no manual copying, and no chance of the totals drifting between Wholesale Handler and your accounts. ## Q&A **Q: How do I export my invoice data?** A: Open the Export data page, pick a date range, optionally tweak the columns and click Download CSV. Wholesale Handler builds the file and your browser downloads it ready to import into your accounting software. **Q: What format is the export?** A: A standard CSV file with one row per invoice line item. Dates use ISO format (2026-03-15), amounts are plain numbers with no currency symbol, and the currency lives in its own column - chosen for clean imports into Xero, QuickBooks, FreeAgent and anything else that takes a CSV. **Q: Can I choose which columns are exported?** A: Yes. Open Customise columns and tick the ones you want, optionally renaming them to match the headings your accounting software expects. Your choice is saved against your account and reused for the next export. **Q: Why aren't draft invoices in my export?** A: Only sent and paid invoices are included. Drafts are excluded so the export never contains figures you haven't finalised. Finalise any drafts you want on the export first. **Q: Why is there a row limit?** A: Exports are capped at a few thousand line items at a time to keep the file fast to build and the download reliable. If your chosen period is over the cap, narrow the date range and run the export in smaller chunks. --- --- title: How order notification emails work on Wholesale Handler Metadescription: How order emails work on Wholesale Handler - customer order receipts, merchant activity emails, what each one sends and how to switch them on or off. Display description: Wholesale Handler can email both sides of an order. Customers switch on order receipts to get a copy of every order they place, update or cancel. Merchants switch on order activity emails to hear when a customer does the same. Both are off by default and work independently. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-05-27 --- Token estimate: ~2,100 # How order notification emails work on Wholesale Handler By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. Wholesale Handler can email both sides of an order. A customer can switch on order receipts to get a copy of every order they place, update or cancel. A merchant can switch on order activity emails to hear whenever one of their customers does the same. Both are off by default, work independently, and are just a copy for your records - the order saved on the site is always the source of truth. ## What emails does Wholesale Handler send about orders? There are two separate streams, one for each side of the order. Each is controlled by its own toggle, so you only ever receive the emails you've opted into. - **Order receipts** go to the customer. When the customer has these on, they get a copy of their order each time it's placed, updated or cancelled. The placed and updated copies itemise the order with today's prices and totals; the updated copy also shows what changed. The cancelled copy is a short confirmation, because the order no longer exists to itemise. - **Order activity emails** go to the merchant. When the merchant has these on, they're emailed whenever one of their customers places, updates or cancels an order, so they hear about changes without watching the orders list. Standing orders add a few more emails on top of these - covered in [How standing orders work on Wholesale Handler](/articles/how-standing-orders-work-on-wholesale-handler) and summarised below. ## What's the difference between order receipts and order activity emails? They sound similar but they point in opposite directions. Order receipts are the customer's copy of their own order. Order activity emails are the merchant's heads-up that a customer did something. Each side owns its own toggle and only controls its own emails - a merchant turning activity emails on has no effect on whether the customer gets receipts, and the reverse is also true. The wording reflects that. The customer's email is a "receipt" - a copy for their records, not a confirmation, because the order is confirmed simply by being saved on the site. The merchant's email is an "activity" notification - it tells them what happened, with a link straight to the order. ## How do I turn order emails on or off? Open [Settings](/settings). Customers find a card called **Order receipts**; merchants find one called **Order activity emails**. Flip the switch to On or Off and save. The change takes effect from the next order - it doesn't resend emails for orders already placed. Merchants need a confirmed email address before they can switch activity emails on, since that's where the notifications go. If you're still on a free trial that hasn't confirmed its email yet, confirm it first and the toggle becomes available. ## Will the other person know I've been emailed? Yes, and that's deliberate. When a merchant has order activity emails on, the customer sees a short note on the order form before they place, change or cancel - "\[supplier\] will be notified by email when you place this order", with the wording matched to the action. It means nobody is quietly copied in without the other side knowing. The disclosure is symmetric. When a customer has receipts on, the merchant sees the equivalent note while editing or cancelling that customer's order. The note only appears when the relevant toggle is on, so an empty inbox and a missing note always agree. ## Why didn't I receive an order email? A few things have to line up before an email goes out, even with the toggle on: - The toggle is off. This is the common one - both default to off, so check Settings first. - The email address isn't confirmed yet. Unconfirmed accounts don't receive order emails. - It was a guest order placed without an account. There's no confirmed customer address to send a receipt to, so only the merchant's activity email goes out. - The account is a demo or has been closed. Neither receives real order emails. If none of those apply, the order itself is still safe on the site - the email is only ever a copy. Open the order to confirm it saved as expected. ## Do standing orders send their own emails? Yes. A standing order is governed by the same two toggles but sends a few extra emails on its own schedule: - A set-up confirmation to both sides when the standing order is created. - A preview to the customer a few days before each delivery, with a one-click "Skip this order" link. This one only ever goes to the customer. - An alert to both sides if a schedule is paused because it needs attention - for example, a delivery that fell under the merchant's minimum spend. See [How standing orders work on Wholesale Handler](/articles/how-standing-orders-work-on-wholesale-handler) for the full picture, including how to skip a single delivery from the preview email. ## How Wholesale Handler handles order emails Order emails are opt-in on both sides and granular by intent, not by volume. There's no digest setting and no per-order choice - each order event sends its own email the instant it happens, or nothing at all. That keeps the behaviour predictable: an email always corresponds to a real change, and the absence of one always means the toggle is off or the order didn't change. Both toggles live in [Settings](/settings), and the cross-notification disclosure on the order form means each side can see when the other is being kept in the loop. Whatever the toggles say, the order on the site is the record that counts - the email is a convenience, never the source of truth. ## Q&A **Q: Are order emails on by default?** A: No. Both order receipts (for customers) and order activity emails (for merchants) start off. Each person turns their own on in Settings, and the two are independent - one being on says nothing about the other. **Q: What's the difference between order receipts and order activity emails?** A: Order receipts go to a customer as a copy of their own order. Order activity emails go to a merchant when one of their customers places, updates or cancels an order. They're separate toggles, each owned by the person who receives the email. **Q: Does the merchant get an email when an order is cancelled?** A: Yes, if they have order activity emails switched on. The merchant is emailed when a customer places, updates or cancels an order - all three, not just new orders. **Q: Will my customer know I'm emailed about their orders?** A: Yes. While your order activity emails are on, the customer sees a note on the order form telling them you'll be emailed when they place, change or cancel the order. The same disclosure works in reverse - a merchant sees a note when the customer has receipts on. **Q: Why didn't I receive an order email?** A: The toggle has to be on and your email address confirmed. Demo and closed accounts never receive them. And an order placed by a guest without an account can't send a customer copy, because there's no confirmed address to send it to - the merchant is still emailed. **Q: Can I get a daily summary instead of one email per order?** A: Not currently. Each order event sends its own email the moment it happens - there's no digest or batching option, just on or off. **Q: Do standing orders send their own emails?** A: Yes. A standing order sends a set-up confirmation, a preview a few days before each delivery with a one-click skip link, and an alert if a schedule needs attention. The preview email only ever goes to the customer. **Q: Is the email the official record of my order?** A: No. The order saved on the site is the source of truth. The email is a copy for your records - if you do nothing with it, the order still stands exactly as saved. --- --- title: How your subscription, free trial and billing work Metadescription: How Wholesale Handler billing works - a 30-day free trial, no card to start, a flat monthly subscription, what happens after the trial and how to cancel. Display description: Wholesale Handler is a flat monthly subscription. You sign up, get a 30-day free trial with full access, then subscribe to carry on. No transaction fees, no contract, and your customers never pay anything. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2026-06-13 --- Token estimate: ~1,300 # How your subscription, free trial and billing work By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. Wholesale Handler is a flat monthly subscription. You sign up, get a 30-day free trial with full access, then subscribe to carry on. There are no per-user fees, no transaction fees and no setup costs - one price covers everything. Your customers never pay anything. ## How does a merchant create an account? 1. Click "Start free trial" on the homepage. 2. Enter your email and choose a password. 3. Click the link in the confirmation email to verify your address. 4. Set your business name, time zone and currency in Settings. Verifying your email matters for more than security - it's the point at which real email sending switches on (order receipts, invitations, invoices). The 30-day trial clock also starts from the moment you confirm. ## Can I try the app before signing up? Yes. You can explore the whole app as a demo merchant first - add products, set price lists, create customer records, place orders and see how everything fits together. It's the full app, not a cut-down tour. Real email sending only starts once you've created an account and confirmed your email address, so you can build a realistic test setup with sample customers without anyone actually receiving an email. When you start your free trial, the demo converts into a real account and keeps the data you've added - nothing is thrown away. ## How does the free trial work? The trial runs for 30 days with full access to every feature. No card is required to start - you only enter payment details if and when you decide to subscribe. The monthly price after the trial is on the [pricing page](/pricing). ## How do I subscribe? Subscribe at any point during the trial from your [settings](/settings). Stripe takes your card details but doesn't charge you straight away - the first payment is taken at the end of day 30. Subscribe on day 2 or day 30 and you still get the full trial before any money changes hands. ## What happens after the trial? If you haven't subscribed by day 30, your account pauses - it doesn't get deleted. All your products, customers, orders and invoices are kept exactly as they were. Subscribe whenever you're ready and you pick up right where you left off. This is deliberate - a lot of wholesalers are seasonal. A Christmas tree farm or a summer-only grower can let the subscription lapse out of season and resubscribe when trade picks up, without losing a thing. ## Are there any transaction fees? No. The monthly subscription is the whole cost. Wholesale Handler never takes a cut of your orders or invoices - you collect payment from your customers directly, however you already do, and your revenue is yours. ## Can I cancel? Yes, any time - there's no contract. Cancel from your settings and your account stays active until the end of the current billing period, so you don't lose the time you've already paid for. You can resubscribe later and your data is still there. ## Do my customers pay anything? No. The merchant pays the subscription; customers use Wholesale Handler for free, forever. There's no payment step on an invitation and no card details collected from them. For how customers join and how managed customers work, see [how customers and invitations work](/articles/how-customers-and-invitations-work-on-wholesale-handler). ## Q&A **Q: Is there a free trial?** A: Yes. 30 days, full access, no card required to start. You can build a complete, realistic setup before deciding whether to subscribe. **Q: When am I charged?** A: Never during the trial. You can subscribe at any point in the 30 days - Stripe takes your card details but doesn't charge you until the trial ends. The first payment is taken at the end of day 30. **Q: What happens after the trial?** A: If you haven't subscribed by day 30, your account pauses and your data is kept. Subscribe at any time to pick up where you left off - seasonal businesses welcome. **Q: Are there any transaction fees?** A: No. Wholesale Handler is a flat monthly subscription with no per-user fees, no transaction fees and no setup costs. You handle payment with your customers directly, so your revenue is unaffected. **Q: Can I cancel at any time?** A: Yes. There's no contract. If you cancel, your account stays active until the end of your current billing period. ## Articles --- --- title: Wholesale Handler Features Metadescription: Self-service ordering portal for wholesalers. Manage orders, inventory, invoices, and customers with automated delivery rules. Display description: Self-service ordering portal for wholesalers. Orders, inventory, invoices, and customer management. author: Dan Edwards author_role: Founder author_url: https://danedwardsdeveloper.com author_linkedin: https://www.linkedin.com/in/dan-edwards-developer published: 2025-12-24 updated: 2026-06-19 --- Token estimate: ~3,700 # Wholesale Handler Features By **[Dan Edwards](https://wholesalehandler.com/about)**, Founder. ### The problem Taking phone and email orders is time-consuming. Your customers can only order during your working hours, and you spend valuable time writing down orders that could be automated. - Orders come through phone calls, emails, WhatsApp messages, and Post-It notes - Phone calls lead to confusion and errors - The person taking orders is tied to their phone during ordering windows - Hard to keep track of everything in one place ### What Wholesale Handler does Wholesale Handler is a self-service ordering portal for wholesalers. Your customers can place orders 24/7, and the system enforces your rules automatically - delivery days, holidays, cutoff times, and minimum orders. ### For merchants #### Orders - View all orders in one place with order numbers, delivery dates, and totals - Search by order number, customer name, or business name - Filter orders by customer - Sort by date or status - Mark orders as processed - Print professional PDF packing slips for each order #### Inventory - Create and update products with names, descriptions, and pack sizes - Set VAT rates - Give each product an optional SKU code that shows on your packing slips, invoices, and CSV export - paste your own code from an existing system, or let Wholesale Handler suggest a memorable three-word code like "oak-hawk-fox" that's easy to read over the phone to a customer. Shuffle for a different one, or leave it blank if you don't use codes - Store an optional manufacturer barcode on each product - a GTIN, UPC, EAN, or produce PLU - the universal code printed on the carton, kept separate from your own SKU. A product can carry one, both, or neither - Mark a product unavailable for one or more date ranges, each with a reason (weather delay, limited stock, discontinued, or other) and an optional note customers see - "back in April", "frost damage" - or leave the end open for "until further notice" - Set a recurring season on a product - "available 1 March to 30 April" repeats every year on its own. Out of season the product can't be ordered, but it still shows on the order form with the date it returns. A single product can carry more than one season, and a season can span the new year - Set quantities and prices per product - Optional stock quantity tracking per product - leave off for unlimited stock, or enable to track finite quantities - Restock products with "add to stock" or "set exact quantity" modes - Customers can subscribe to email notifications when out-of-stock products are restocked #### Pricing Price each product the way it actually sells. Most take a flat price per unit, but produce often isn't that simple - so you can price by weight too. - **Per unit** A flat price for each selling unit - a piece, a box of 12, a case of 6. - **Catch weight** For goods counted by the piece but billed by weight, where every piece weighs a little differently - a whole salmon, a leg of lamb, a wheel of cheese, a box of grapes. Customers order a count at your price per kg or lb and see a typical price based on a typical weight; at pick you record the real weight for each line and the order settles to the actual amount, which is what flows through to the invoice - "5.1 kg at $4.00/kg". - **By weight** For goods ordered as an exact weight directly, at a per-kg or per-lb rate settled at order time. #### Customers - Invite your customers via email - Customers create their own passwords when they accept the invitation #### Price lists - Create up to 20 named price lists (e.g. Default, Trusted, Friends & Family) - Assign each customer to a price list - they see one price, never the list name - Set prices per product per list, or use percentage discounts from your default list - Move customers between lists at any time - Pre-assign new customers to a specific list when you invite them - Rounding controls - GBP: round to the nearest penny, 5p, or 10p, with optional charm pricing (e.g. £4.99 instead of £5.00) / USD: round to the nearest cent, 5 cents, or 10 cents, with optional charm pricing (e.g. $4.99 instead of $5.00) / EUR: round to the nearest cent, 5 cents, or 10 cents, with optional charm pricing (e.g. €4.99 instead of €5.00) / CAD: round to the nearest cent, 5 cents, or 10 cents, with optional charm pricing (e.g. $4.99 instead of $5.00) / AUD: round to the nearest cent, 5 cents, or 10 cents, with optional charm pricing (e.g. $4.99 instead of $5.00) / NZD: round to the nearest cent, 5 cents, or 10 cents, with optional charm pricing (e.g. $4.99 instead of $5.00) #### Order profiles Group customers who share the same delivery schedule and terms into a reusable order profile - delivery days, ordering cutoff, maximum lead time, delivery charge, and minimum spend all in one named bundle. A customer two hours away who can only be served on a Wednesday or Thursday goes on a "Far North" profile; update the profile once when the run changes and every customer on it follows. - Create up to 20 named order profiles (e.g. Default, Far North, City centre) - Each profile carries its own delivery days, cutoff, maximum lead time, delivery charge, and minimum spend - Set one ordering cutoff for the whole profile, or a different one per delivery day - close Saturday's orders Friday lunchtime while Monday stays open until Sunday evening, because each day's run starts at a different time - Assign each customer to a profile - their order page only offers the delivery days that profile allows - Move customers between profiles at any time, or pre-assign a profile when you invite them - Optional - merchants who deliver to everyone on the same days just keep the single default profile #### Standing orders For customers who order the same things on the same schedule - weekly, fortnightly, three-weekly, or four-weekly. The system generates each upcoming order at your cutoff time and emails the customer three days ahead with a preview at today's prices and a one-click skip link. If they do nothing, the order fires normally. - Set up by the customer themselves, or by you on their behalf - Weekly, fortnightly, three-weekly, or four-weekly cadence on a chosen delivery day - Three-day advance email with the line items, today's prices, a one-click "Skip this order" link that doesn't need a login, and a link to edit the schedule - Default-yes - if the customer does nothing, the order fires at the cutoff as planned - Pause to a specific resume date or pause indefinitely; skip a single occurrence in one click - Edit products, quantities, or the schedule itself anytime - changes apply to all future occurrences - Optional minimum-spend override per schedule for customers who reliably order below your threshold - Up to 10 active standing orders per customer #### Invoices - Create invoices from individual orders or batches - Generate invoices automatically from all un-invoiced orders for a customer - Send invoices directly to customers via email - Mark invoices as draft, sent, or paid - See total unpaid invoices - Sort and filter invoice history - Print professional PDF invoices #### Payment tracking Track who has paid and who hasn't without cross-referencing your bank against a spreadsheet. Check your bank once a week, mark off what's cleared, and move on. The system remembers everything so you don't have to. - Customers can declare payments from the same portal where they place orders - Merchants confirm or dispute declarations after checking their bank - Dispute a declaration with one click - Wholesale Handler writes and sends a professional email so you don't have to - Add payment references to invoices for easy bank matching - Full payment history timeline on every invoice - Entirely optional - customers don't have to participate, and merchants can just mark invoices as paid directly #### Data export Export invoice line items to CSV for your accounting software. Select a date range, preview the data, and download. - Preset periods (this month, last month, this quarter) or custom date ranges up to 6 months - Preview the first 20 rows before downloading - Choose which columns to include and rename them to match your accounting software - Column settings are saved so you only configure once #### Dashboard The home page shows what needs your attention and how business is going. Action items first, analytics second. - Pending orders, uninvoiced orders, and unconfirmed payments surfaced as action items - This month vs last month: order count, revenue, and average order value - Top products by quantity and top customers by spend - Quiet customers who have stopped ordering Your customers get their own dashboard too. They see pending orders, spending summaries, and their most-ordered products. Re-ordering takes a few clicks, which means more repeat business for you. #### Public storefront Opt-in public product page for your business. Nothing is published unless you choose to set it up. If you do, potential customers can find you on Google and see what you sell. - Completely optional - disabled by default, your product catalogue stays private until you decide otherwise - Choose exactly which products to display publicly - Control pricing with a dedicated storefront price list - show your public rates, not your negotiated customer prices - Show or hide prices entirely - Custom URL with your business name - SEO optimised with structured data so search engines understand your business #### Settings - **Delivery days** Choose which days of the week you typically accept deliveries - **Holidays** Block out dates when you're closed (single days or date ranges) - **Cut-off time** Set the deadline for last orders within your lead time - **Cut-off message** Write your own short message that's shown to customers once a delivery date has locked - tell them how to reach you if they really need a last-minute change, in your voice - **Lead time** Set how far in advance customers need to order (e.g., "orders must be placed 2 days in advance") - **Delivery charge and minimum spend** Choose to either charge a delivery fee on all orders, OR offer free delivery for orders above a certain amount - **Packing slip and invoice details** Add your business information, bank details, returns policy, or opening hours to include on invoices and packing slips ### For customers - Place orders any time, day or night - View complete order history with status updates (pending or processed) - Repeat previous orders and adjust quantities - Set up your own standing orders for recurring deliveries (weekly through four-weekly). Three days before each order, get a preview email with today's prices and a one-click skip link - if you do nothing, the order goes through normally. Pause to a chosen resume date or indefinitely, skip a single occurrence, or edit anytime - Receive invoices by email - Opt in to email receipts when you place, update, or cancel an order - Subscribe to weekly seasonal updates - one email rounding up which of your supplier's products are coming into season and which are about to go out, with a heads-up before a seasonal item's last week. Separate from the per-product "Notify me" button, which emails you the moment one specific out-of-season or out-of-stock item is orderable again - View invoices online and download PDFs - Place orders during your wholesaler's holidays for delivery when they return ### On your phone Wholesale Handler works on iPhone and Android. Merchants can check on orders from anywhere, customers can place them on the move, all from a phone browser - no App Store download needed. For one-tap access, you can install Wholesale Handler to your phone's home screen. It opens in its own window with no browser chrome - the experience is the same as a native app you'd download from an app store. #### iPhone Open Wholesale Handler in Safari, tap Share, then "Add to Home Screen", then "Add". #### Android Open Wholesale Handler in Chrome, tap the three-dot menu, then "Install app", then "Install". ### What's not included - **No warehouse management** Simple stock tracking is included for products you sell from inventory. But there is no multi-location warehouse management, bin locations, or supply chain tracking. - **No payment processing** You handle payments directly with your customers (bank transfer, direct debit, etc.). No transaction fees and full flexibility with payment terms. Built-in payment tracking lets both sides record and confirm payments without Wholesale Handler touching the money. - **No delivery tracking** Most wholesalers already know their customers and delivery routes. No need for software to manage what's already handled well. ## Q&A **Q: What features does Wholesale Handler include?** A: Order management, product catalogue with stock tracking, reason-tagged availability windows and recurring seasonal availability, flexible pricing modes (per unit, catch weight, or by weight), customer invitations, invoice generation with payment tracking and reconciliation, per-customer order profiles (delivery days, per-day ordering cutoffs, charges and minimum spend) with holiday management, production schedule views, packing slips, data export to CSV, a dashboard with action items and analytics, price lists, and an optional public storefront. Customers get a portal to place orders, view history, declare payments, and repeat previous orders. **Q: How much does Wholesale Handler cost?** A: Wholesale Handler costs £79 | US$109 | €89 | CA$149 | A$149 | NZ$179 per month. There are no per-user fees, no transaction fees, and no setup costs. The price is published on the website with no sales call required. **Q: Is there a free trial?** A: Yes. 30 days, full access, no credit card required. You can try everything before deciding. - How much does wholesale bakery software cost?: https://wholesalehandler.com/articles/how-much-does-wholesale-bakery-software-cost (Markdown: https://wholesalehandler.com/articles/how-much-does-wholesale-bakery-software-cost.md) - What type of bakery software do you need?: https://wholesalehandler.com/articles/what-type-of-bakery-software-do-you-need (Markdown: https://wholesalehandler.com/articles/what-type-of-bakery-software-do-you-need.md) - Affordable software for Christmas tree farm orders: https://wholesalehandler.com/articles/affordable-software-for-christmas-tree-farm-orders (Markdown: https://wholesalehandler.com/articles/affordable-software-for-christmas-tree-farm-orders.md) - A cheaper alternative to BakeSmart for wholesale bakeries: https://wholesalehandler.com/articles/cheaper-alternative-to-bakesmart (Markdown: https://wholesalehandler.com/articles/cheaper-alternative-to-bakesmart.md) - A cheaper alternative to CyBake for wholesale bakeries: https://wholesalehandler.com/articles/cheaper-alternative-to-cybake (Markdown: https://wholesalehandler.com/articles/cheaper-alternative-to-cybake.md) - A cheaper alternative to FlexiBake for wholesale bakeries: https://wholesalehandler.com/articles/cheaper-alternative-to-flexibake (Markdown: https://wholesalehandler.com/articles/cheaper-alternative-to-flexibake.md) - Orderlion pricing - what does it actually cost?: https://wholesalehandler.com/articles/orderlion-pricing (Markdown: https://wholesalehandler.com/articles/orderlion-pricing.md) - Orderlion alternative for wholesalers: https://wholesalehandler.com/articles/orderlion-alternative-for-wholesalers (Markdown: https://wholesalehandler.com/articles/orderlion-alternative-for-wholesalers.md) - BlueCart pricing - what does it actually cost?: https://wholesalehandler.com/articles/bluecart-pricing (Markdown: https://wholesalehandler.com/articles/bluecart-pricing.md) - Why is wholesale software so expensive?: https://wholesalehandler.com/articles/why-is-wholesale-software-so-expensive (Markdown: https://wholesalehandler.com/articles/why-is-wholesale-software-so-expensive.md) - Do you need AI to take wholesale orders?: https://wholesalehandler.com/articles/do-you-need-ai-to-take-wholesale-orders (Markdown: https://wholesalehandler.com/articles/do-you-need-ai-to-take-wholesale-orders.md) - Simple wholesale ordering software that doesn't need a wiki: https://wholesalehandler.com/articles/simple-wholesale-ordering-software (Markdown: https://wholesalehandler.com/articles/simple-wholesale-ordering-software.md) - Shopify vs Wholesale Handler for wholesale bakery orders: https://wholesalehandler.com/articles/shopify-alternative-for-wholesale-bakeries (Markdown: https://wholesalehandler.com/articles/shopify-alternative-for-wholesale-bakeries.md) - How to handle wholesale customers who change their orders at the last minute: https://wholesalehandler.com/articles/how-to-handle-wholesale-customers-who-change-their-orders (Markdown: https://wholesalehandler.com/articles/how-to-handle-wholesale-customers-who-change-their-orders.md) - How to stop taking bakery orders on WhatsApp: https://wholesalehandler.com/articles/how-to-stop-taking-bakery-orders-on-whatsapp (Markdown: https://wholesalehandler.com/articles/how-to-stop-taking-bakery-orders-on-whatsapp.md) - How to automatically invoice your wholesale bakery customers: https://wholesalehandler.com/articles/how-to-automatically-invoice-wholesale-bakery-customers (Markdown: https://wholesalehandler.com/articles/how-to-automatically-invoice-wholesale-bakery-customers.md) - How to turn wholesale orders into a production list before you start baking: https://wholesalehandler.com/articles/how-to-turn-wholesale-orders-into-a-production-list (Markdown: https://wholesalehandler.com/articles/how-to-turn-wholesale-orders-into-a-production-list.md) - How to set a wholesale bakery order cutoff and actually stick to it: https://wholesalehandler.com/articles/how-to-set-a-wholesale-bakery-order-cutoff (Markdown: https://wholesalehandler.com/articles/how-to-set-a-wholesale-bakery-order-cutoff.md) - How to make packing slips for wholesale bakery deliveries: https://wholesalehandler.com/articles/how-to-make-packing-slips-for-wholesale-bakery-deliveries (Markdown: https://wholesalehandler.com/articles/how-to-make-packing-slips-for-wholesale-bakery-deliveries.md) - How to stop being the one who takes every wholesale bakery order: https://wholesalehandler.com/articles/how-to-stop-being-the-one-who-takes-every-wholesale-bakery-order (Markdown: https://wholesalehandler.com/articles/how-to-stop-being-the-one-who-takes-every-wholesale-bakery-order.md) - How to know which of your wholesale customers haven't paid you: https://wholesalehandler.com/articles/how-to-know-which-wholesale-customers-havent-paid-you (Markdown: https://wholesalehandler.com/articles/how-to-know-which-wholesale-customers-havent-paid-you.md) - Five signs your wholesale bakery has outgrown its spreadsheet: https://wholesalehandler.com/articles/five-signs-your-wholesale-bakery-has-outgrown-its-spreadsheet (Markdown: https://wholesalehandler.com/articles/five-signs-your-wholesale-bakery-has-outgrown-its-spreadsheet.md) - How to take Christmas orders from your wholesale customers without losing your mind: https://wholesalehandler.com/articles/how-to-take-christmas-orders-from-wholesale-customers (Markdown: https://wholesalehandler.com/articles/how-to-take-christmas-orders-from-wholesale-customers.md) - How to stop taking egg orders on WhatsApp: https://wholesalehandler.com/articles/how-to-stop-taking-egg-orders-on-whatsapp (Markdown: https://wholesalehandler.com/articles/how-to-stop-taking-egg-orders-on-whatsapp.md) - How to plan egg orders around seasonal production: https://wholesalehandler.com/articles/how-to-plan-egg-orders-around-seasonal-production (Markdown: https://wholesalehandler.com/articles/how-to-plan-egg-orders-around-seasonal-production.md) - How to make a packing list for wholesale egg deliveries: https://wholesalehandler.com/articles/how-to-make-a-packing-list-for-wholesale-egg-deliveries (Markdown: https://wholesalehandler.com/articles/how-to-make-a-packing-list-for-wholesale-egg-deliveries.md) - How to invoice wholesale egg customers: https://wholesalehandler.com/articles/how-to-invoice-wholesale-egg-customers (Markdown: https://wholesalehandler.com/articles/how-to-invoice-wholesale-egg-customers.md) - How to set up your first wholesale egg customer: https://wholesalehandler.com/articles/how-to-set-up-your-first-wholesale-egg-customer (Markdown: https://wholesalehandler.com/articles/how-to-set-up-your-first-wholesale-egg-customer.md) - Shopify alternative for egg wholesalers: https://wholesalehandler.com/articles/shopify-alternative-for-egg-wholesalers (Markdown: https://wholesalehandler.com/articles/shopify-alternative-for-egg-wholesalers.md) - Affordable software for fresh produce wholesalers: https://wholesalehandler.com/articles/affordable-software-for-fresh-produce-wholesalers (Markdown: https://wholesalehandler.com/articles/affordable-software-for-fresh-produce-wholesalers.md) - Order management software for fresh produce wholesalers: https://wholesalehandler.com/articles/order-management-software-for-fresh-produce-wholesalers (Markdown: https://wholesalehandler.com/articles/order-management-software-for-fresh-produce-wholesalers.md) - Shopify vs Wholesale Handler for fresh produce wholesalers: https://wholesalehandler.com/articles/shopify-alternative-for-fresh-produce-wholesalers (Markdown: https://wholesalehandler.com/articles/shopify-alternative-for-fresh-produce-wholesalers.md) - Orderlion vs Wholesale Handler for fresh produce wholesalers: https://wholesalehandler.com/articles/orderlion-alternative-for-fresh-produce-wholesalers (Markdown: https://wholesalehandler.com/articles/orderlion-alternative-for-fresh-produce-wholesalers.md) - How to update fresh produce prices without calling every customer: https://wholesalehandler.com/articles/update-fresh-produce-prices-without-calling-customers (Markdown: https://wholesalehandler.com/articles/update-fresh-produce-prices-without-calling-customers.md) - How to stop copying WhatsApp orders into a spreadsheet at 4am: https://wholesalehandler.com/articles/stop-copying-whatsapp-orders-into-spreadsheet-at-4am (Markdown: https://wholesalehandler.com/articles/stop-copying-whatsapp-orders-into-spreadsheet-at-4am.md) - How to charge different prices to different wholesale customers: https://wholesalehandler.com/articles/how-to-charge-different-prices-to-different-wholesale-customers (Markdown: https://wholesalehandler.com/articles/how-to-charge-different-prices-to-different-wholesale-customers.md) - How to get restaurant customers to order produce online instead of phoning: https://wholesalehandler.com/articles/get-restaurant-customers-to-order-fresh-produce-online (Markdown: https://wholesalehandler.com/articles/get-restaurant-customers-to-order-fresh-produce-online.md) - A simpler Local Line alternative for wholesale-only farms: https://wholesalehandler.com/articles/local-line-alternative-for-wholesale-farms (Markdown: https://wholesalehandler.com/articles/local-line-alternative-for-wholesale-farms.md) - BakeSmart pricing - what does it actually cost?: https://wholesalehandler.com/articles/bakesmart-pricing (Markdown: https://wholesalehandler.com/articles/bakesmart-pricing.md) - Software for wholesale pumpkin orders: https://wholesalehandler.com/articles/software-for-wholesale-pumpkin-orders (Markdown: https://wholesalehandler.com/articles/software-for-wholesale-pumpkin-orders.md) - Using Google Forms for wholesale orders: https://wholesalehandler.com/articles/google-forms-for-wholesale-orders (Markdown: https://wholesalehandler.com/articles/google-forms-for-wholesale-orders.md) - How to organise wholesale orders in a spreadsheet (and when to stop): https://wholesalehandler.com/articles/how-to-organise-wholesale-orders-in-a-spreadsheet (Markdown: https://wholesalehandler.com/articles/how-to-organise-wholesale-orders-in-a-spreadsheet.md) - Order management software for microgreens growers: https://wholesalehandler.com/articles/software-for-microgreens-growers (Markdown: https://wholesalehandler.com/articles/software-for-microgreens-growers.md) - How small breweries take orders from pubs without a distributor: https://wholesalehandler.com/articles/how-small-breweries-take-orders-from-pubs-without-a-distributor (Markdown: https://wholesalehandler.com/articles/how-small-breweries-take-orders-from-pubs-without-a-distributor.md) - How to take wholesale coffee orders from cafes: https://wholesalehandler.com/articles/how-to-take-wholesale-coffee-orders-from-cafes (Markdown: https://wholesalehandler.com/articles/how-to-take-wholesale-coffee-orders-from-cafes.md) - What is a standing order in wholesale?: https://wholesalehandler.com/articles/what-is-a-standing-order-in-wholesale (Markdown: https://wholesalehandler.com/articles/what-is-a-standing-order-in-wholesale.md) - Wholesale order management for small pet-treat producers: https://wholesalehandler.com/articles/wholesale-order-management-for-pet-treat-producers (Markdown: https://wholesalehandler.com/articles/wholesale-order-management-for-pet-treat-producers.md) - How to set and enforce a minimum order value for wholesale: https://wholesalehandler.com/articles/set-and-enforce-minimum-order-value-wholesale (Markdown: https://wholesalehandler.com/articles/set-and-enforce-minimum-order-value-wholesale.md) - Wholesale customer portal - what it is and how it cuts your workload: https://wholesalehandler.com/articles/wholesale-customer-portal (Markdown: https://wholesalehandler.com/articles/wholesale-customer-portal.md) - Can I use Airtable to manage wholesale orders?: https://wholesalehandler.com/articles/can-i-use-airtable-to-manage-wholesale-orders (Markdown: https://wholesalehandler.com/articles/can-i-use-airtable-to-manage-wholesale-orders.md)