Title: BoxCart – Local Pickup &amp; Click and Collect Ordering
Author: norwichwebsitedesign
Published: <strong>јуни 1, 2026</strong>
Last modified: октомври 15, 2026

---

Search plugins

![](https://ps.w.org/boxcart/assets/banner-772x250.png?rev=3616791)

![](https://ps.w.org/boxcart/assets/icon.svg?rev=3556611)

# BoxCart – Local Pickup & Click and Collect Ordering

 By [norwichwebsitedesign](https://profiles.wordpress.org/norwichwebsitedesign/)

[Download](https://downloads.wordpress.org/plugin/boxcart.1.5.1.zip)

 * [Details](https://mk.wordpress.org/plugins/boxcart/#description)
 * [Reviews](https://mk.wordpress.org/plugins/boxcart/#reviews)
 *  [Installation](https://mk.wordpress.org/plugins/boxcart/#installation)
 * [Development](https://mk.wordpress.org/plugins/boxcart/#developers)

 [Support](https://wordpress.org/support/plugin/boxcart/)

## Description

BoxCart is a standalone click and collect ordering plugin for WordPress. Give your
customers a polished pickup-ordering experience with configurable time slots, a 
modern card-view storefront, customer accounts, and a built-in admin dashboard –
all without WooCommerce.

Whether you call it local pickup, click and collect, store pickup, or order ahead,
it is the same idea: customers order online and collect in person, at a time that
suits them. BoxCart handles the whole flow, from storefront to time slots to order
management, without the weight of a full e-commerce platform.

**Built for:** farm shops, bakeries, butchers, delis, greengrocers, fishmongers,
florists, coffee roasters, pizza shops, meal-prep kitchens, and any business where
customers order ahead and collect.

#### What you get in the free build

 * **Guided Setup** – a five-minute wizard creates your shop pages, your collection
   point and time slots, your first product, how customers pay, and VAT.
 * **Click & collect ordering** with configurable time slots on your pickup schedule.
   Set up one day, then copy its slots to the others.
 * **Order cut-offs your way** – close orders a set number of hours before each 
   slot, or at a set time before the collection day, such as 1pm the day before.
 * **One pickup location** with its own address, collection instructions, opening
   hours, and per-slot capacity.
 * **Card-view storefront** with category filters, search, and mini-basket.
 * **Sell by unit, weight, or pack** – offer multiple quantity options per product,
   such as single units, 500g, 1kg, or a 6-pack.
 * **Customer accounts** with order history, plus optional up-front registration.
 * **Admin order management** with a status lifecycle (pending, processing, ready,
   completed, cancelled). Delete cancelled orders, such as test orders.
 * **Order export** to CSV from the orders screen, filtered by date, status, and
   location.
 * **Transactional email templates** (order confirmation and status updates) with
   branding controls and a live preview editor. Plus a new-order admin notification.
 * **Cash on collection** and **bank transfer** payment methods.
 * **5 Gutenberg blocks and 5 shortcodes** for embedding BoxCart anywhere – products,
   basket, checkout, account, mini basket.
 * **Developer-friendly** – 50+ action hooks and 35 filter hooks, CSS custom properties
   throughout, zero external PHP dependencies.
 * **Cache-resilient** – pages render as empty shells that hydrate via AJAX, with
   a bypass cookie for customer sessions. Compatible with Cloudflare, WP Rocket,
   LiteSpeed, and similar.
 * **Translation-ready** with a `.pot` file included.
 * **GDPR-aware** – self-hosted fonts, optional full data cleanup on uninstall.

#### Why BoxCart?

 * **Standalone – no WooCommerce required.** A single, focused plugin with its own
   data model.
 * **Time-slot ordering baked in.** Configure your schedule, slot length, and capacity.
   Customers see live availability.
 * **Developer extensible** – documented hooks, filters, and CSS custom properties.
 * **Not a stripped-down demo** – the free build is a complete, working click & 
   collect store.

#### Paid Pro upgrade (optional)

A paid Pro build is available from [boxcart.dev](https://boxcart.dev) with additional
features:

 * Multiple pickup locations
 * Stripe card payments (with Apple Pay, Google Pay, Link, Klarna, PayPal, Afterpay)
 * Table-view storefront
 * Members-only pricing (hide prices and the add-to-cart button from logged-out 
   visitors)
 * Customer favourites and one-click reorder
 * Two-way order messaging
 * Customer-side order changes, including orders paid by card: the difference is
   refunded automatically, or paid at collection
 * Card refunds from the order screen
 * Holiday closures and per-date capacity overrides
 * Printable pick lists & packing slips
 * Sales reports
 * CSV product & category import/export
 * 195+ customisation settings

Pro is optional – the free build will continue to receive updates and is genuinely
useful on its own.

#### Live demo

Three demo stores at [demo.boxcart.dev](https://demo.boxcart.dev) – a greengrocer,
a bakery, and a butcher – each configured differently to show the range of what 
BoxCart can do.

#### Documentation

Full documentation at [docs.boxcart.dev](https://docs.boxcart.dev) covering every
admin workflow and the developer API.

### External Services

This plugin uses the **Freemius** plugin framework (https://freemius.com/) for optional
anonymous usage tracking, licence handling for the paid Pro upgrade, and update 
delivery for Pro customers. Freemius is a well-known WordPress plugin distribution
platform and the integration is entirely standard.

**What data is sent, and when:**

 * When you activate BoxCart, you are shown an opt-in prompt asking whether to share
   anonymous usage diagnostics. You can skip the prompt – the plugin works either
   way.
 * If you opt in, Freemius receives: your site URL, admin email, WordPress version,
   PHP version, plugin version, activation/deactivation events, and non-personal
   environment data (e.g. active theme, locale). You can opt out at any time from**
   BoxCart  Account**.
 * If you purchase the Pro upgrade, Freemius also handles your licence key, renewal
   state, and update delivery for the Pro build.
 * BoxCart never sends your customers’ data, your orders, your products, or the 
   contents of your store to Freemius or anywhere else.

**Endpoints contacted:** `api.freemius.com`, `wp.freemius.com`.

**Freemius’s own privacy policy and terms:**

 * https://freemius.com/privacy/
 * https://freemius.com/terms/

## Screenshots

[⌊Card-view storefront with category filters, search, and a push mini basket.⌉⌊Card-
view storefront with category filters, search, and a push mini basket.⌉[

Card-view storefront with category filters, search, and a push mini basket.

[⌊Sidecart with basket items, collection-slot prompt, and clear total.⌉⌊Sidecart
with basket items, collection-slot prompt, and clear total.⌉[

Sidecart with basket items, collection-slot prompt, and clear total.

[⌊Time-slot picker showing live availability on the customer's chosen day.⌉⌊Time-
slot picker showing live availability on the customer's chosen day.⌉[

Time-slot picker showing live availability on the customer’s chosen day.

[⌊Customer account with order history.⌉⌊Customer account with order history.⌉[

Customer account with order history.

[⌊Admin dashboard with today's orders, pending queue, and ready-for-collection.⌉⌊
Admin dashboard with today's orders, pending queue, and ready-for-collection.⌉[

Admin dashboard with today’s orders, pending queue, and ready-for-collection.

[⌊Orders list with status tabs, date filter, and quick search.⌉⌊Orders list with
status tabs, date filter, and quick search.⌉[

Orders list with status tabs, date filter, and quick search.

[⌊Product editor - name, price, image, category, SKU, stock, and quantity type.⌉⌊
Product editor - name, price, image, category, SKU, stock, and quantity type.⌉[

Product editor – name, price, image, category, SKU, stock, and quantity type.

[⌊Pickup-location editor with opening hours, slot length, and capacity.⌉⌊Pickup-
location editor with opening hours, slot length, and capacity.⌉[

Pickup-location editor with opening hours, slot length, and capacity.

[⌊Gutenberg block inserter showing the five BoxCart blocks.⌉⌊Gutenberg block inserter
showing the five BoxCart blocks.⌉[

Gutenberg block inserter showing the five BoxCart blocks.

## Blocks

This plugin provides 5 blocks.

 *   BoxCart Products
 *   BoxCart Basket
 *   BoxCart Checkout
 *   BoxCart Account
 *   BoxCart Mini Basket

## Installation

 1. In your WordPress admin, go to **Plugins  Add New**.
 2. Search for **BoxCart**, then click **Install Now** and **Activate**.
 3. **Guided Setup** opens. In about five minutes it creates your Shop, Basket, Checkout
    and My Account pages, adds your collection point with its days and time slots, 
    adds your first product, and asks how customers pay, who your order emails come
    from, and whether you charge VAT. Any step can be skipped and done later from **
    BoxCart  Setup**.
 4. Add the rest of your products under **BoxCart  Products**, and fine-tune each day’s
    time slots under **BoxCart  Locations**.
 5. Place a test order end-to-end, then cancel and delete it from **BoxCart  Orders**.

Prefer to use your own pages? Add the matching BoxCart shortcode or Gutenberg block
to each page and choose them in **BoxCart  Settings  General  Page Setup**.

Full step-by-step walkthrough at [docs.boxcart.dev/getting-started](https://docs.boxcart.dev/getting-started.html).

## FAQ

### Do I need WooCommerce?

No. BoxCart is fully standalone with its own products, orders, payments, and customer
accounts. You can run it alongside WooCommerce if you want, but it does not depend
on it.

### What payment methods are supported in the free build?

Cash on collection and bank transfer. Stripe card payments (Cards, Apple Pay, Google
Pay, Link, Klarna, PayPal, Afterpay) are available in the optional Pro upgrade.

### Can I run multiple collection locations?

The free build is built around a single pickup location, which suits most farm shops,
bakeries, and delis. The Pro upgrade adds multi-location management with a list 
view, per-location schedules, holiday closures, and per-date capacity overrides,
useful if you run several sites or pop-ups.

### Does BoxCart work with caching plugins and Cloudflare?

Yes. BoxCart uses a cache-resilient architecture – pages render as empty shells 
that hydrate via AJAX, plus a bypass cookie that most caching layers honour to skip
full-page caching on customer sessions.

### Is it translation-ready?

Yes. Text domain is `boxcart`. A `.pot` file is included at `languages/boxcart.pot`.

### Where can I get support?

For the free build, use the [WordPress.org support forum](https://wordpress.org/support/plugin/boxcart/).
For Pro customers, email us at hello@boxcart.dev.

### Does uninstalling remove all my data?

Only if you opt in. **BoxCart  Settings  Misc** has a “Delete all BoxCart data on
uninstall” checkbox. Off by default, so deactivating the plugin is safe and reversible.

### Can I customise the look and feel?

Extensively. Settings cover colours, fonts, button styles, card layouts, sidecart
behaviour, email branding, and more. Developers can also use CSS custom properties,
50+ action hooks, and 35 filter hooks.

### Does BoxCart send any data to external services?

BoxCart itself does not send shopper data anywhere. It uses the Freemius plugin 
framework to handle optional opt-in diagnostics and to deliver the paid Pro upgrade.
See the “External Services” section below for full detail.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“BoxCart – Local Pickup & Click and Collect Ordering” is open source software. The
following people have contributed to this plugin.

Contributors

 *   [ norwichwebsitedesign ](https://profiles.wordpress.org/norwichwebsitedesign/)

[Translate “BoxCart – Local Pickup & Click and Collect Ordering” into your language.](https://translate.wordpress.org/projects/wp-plugins/boxcart)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/boxcart/), check out
the [SVN repository](https://plugins.svn.wordpress.org/boxcart/), or subscribe to
the [development log](https://plugins.trac.wordpress.org/log/boxcart/) by [RSS](https://plugins.trac.wordpress.org/log/boxcart/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.5.1

 * Fix: Accounts customers create through BoxCart now always get the Customer role,
   whatever your site’s default role for new users is set to. If any existing customer
   accounts have more access than a customer needs, BoxCart points them out so you
   can check them.
 * Fix: Returning customers can sign in right on the checkout page and come straight
   back to it, with the collection slot they picked still selected.
 * Fix: The basket panel and basket page show each item’s unit (such as kg or bunches)
   when prices are hidden, and plain-text shop emails list items in your category
   order, show “&” correctly, include a working order link and end with the number
   of items.

#### 1.5.0

 * New: Guided Setup gets your shop ready in about five minutes: pages, collection
   point and time slots, first product, payments and VAT.
 * New: Copy a day’s time slots to other days.
 * New: Customers can change orders they’ve paid for by card. If the order costs
   less, the difference goes back to their card; if it costs more, they pay the 
   rest when they collect (BoxCart Pro).
 * New: Refund card payments from the order screen, or when you cancel an order (
   BoxCart Pro). Refunds you make in your Stripe dashboard show on the order too.
   Delete cancelled orders, such as test orders.
 * Improvement: Much faster with hundreds of products, a simpler checkout with no
   billing address, and receipts that show VAT clearly whether your prices include
   it or add it on top, plus what’s been paid, refunded and is left to pay.
 * Fix: Weighed quantities (such as 1.5 kg) are no longer rounded to whole numbers
   when BoxCart is deactivated and reactivated. Orders already affected are repaired
   where they have prices.
 * Fix: A declined card no longer leaves customers stuck: their basket stays so 
   they can try again (BoxCart Pro).
 * Fix: Customers can’t change an order once its order cut-off has passed, and many
   smaller fixes to item counts, quantities, emails, settings and theme styling.

#### 1.4.0

 * New: Choose when orders close. As well as a set number of hours before each collection
   slot, you can now close orders at a set time before the collection day, such 
   as 1pm the day before. Customers see the rule above the collection dates.
 * Fix: The order lead time now uses your site’s timezone. During British Summer
   Time, slots could be booked up to an hour later than your lead time allowed.
 * Fix: Dates where every slot has passed its cut-off now show as closed, instead
   of looking bookable.
 * Removed: The “Slot Cutoff Time” setting, which had no effect. Use “When Orders
   Close” instead.

#### 1.3.2

 * Improvement: Updated Freemius SDK to the latest version.

#### 1.3.1

 * Security: Important for BoxCart Pro shops taking card payments. An order is now
   only marked as paid when Stripe confirms the full amount was paid for that particular
   order.
 * Security: When customers change an order (BoxCart Pro), prices, stock and any
   new collection slot are now checked on your site, exactly as at checkout. The
   items on an order already paid by card can no longer be changed online.
 * Security: A collection slot is now only held for a basket with something in it,
   so empty baskets can no longer make slots look fully booked.
 * Security: SVG image uploads are now limited to administrators, and are checked
   for scripts before they are accepted.
 * Fix: Changing an order (BoxCart Pro) now recalculates its VAT or sales tax.
 * Fix: Paid orders now stay at “Order Received” until you move them on, like every
   other order. Card payments, and payments you confirm yourself, used to jump straight
   to “Being Prepared” and email the customer that their order was being prepared.
 * Fix: The time customers have to change an order (BoxCart Pro) is now measured
   in your site’s timezone. Outside the UK it could run out early, or never open
   at all.
 * Fix: Activating a BoxCart Pro licence now works on sites that had already opted
   in to updates on the free version. The “Enter your licence key” button used to
   return to the dashboard instead of opening the licence box.
 * Improvement: Tested with WordPress 7.1 and PHP 8.5, plus a Freemius SDK update
   and smaller fixes and hardening throughout.

#### 1.3.0

 * New: Two options for shops that do not open every day (Settings  Collection  
   Slot Selection). Hide the dates you are closed instead of showing them greyed
   out, and choose whether customers see a “slots left” count against each time 
   slot.
 * Fix: Important. Stores set up using the Setup screen could end up with no payment
   methods on the checkout page and no collection slot bar on the products page,
   even though Settings showed both as switched on. Any settings you have saved 
   yourself are left exactly as they are; only genuinely missing values are filled
   in, automatically, on update. Please do check your checkout after updating.
 * Fix: The slot selector on the products page always showed “slots left” in English,
   ignoring the site’s language.

#### 1.2.1

 * Fix: the order link in admin notification emails now opens the correct order.
 * Tidy-up: corrected wording across the admin, help panels, and this listing.

#### 1.2.0

 * New: Up-front customer registration. A new option (Settings, Accounts) lets customers
   create an account before they order, not only after checkout. The branded registration
   form runs through WordPress’s native registration flow, so customers never type
   a password into BoxCart.
 * Fix: Checkout could log a database notice (“Unknown column ‘sort_order’”) when
   a basket contained products with more than one quantity option. The fallback 
   pricing lookup now queries the correct column.

#### 1.1.0

 * New: Guided setup. A new “Setup” screen (always available in the BoxCart menu)
   shows a live checklist of what is left to do, with one-click creation of the 
   Shop, Basket, Checkout, and My Account pages. It drops in the correct shortcode,
   assigns each page in Settings, and reuses any pages you already made instead 
   of duplicating them.
 * New: The dashboard Quick Start guide now stays available with live progress ticks
   until setup is complete, and can be dismissed early, rather than disappearing
   as soon as you add your first product. The welcome screen also links straight
   to Guided Setup.
 * New: “BoxCart Today” dashboard widget on the main WordPress dashboard, showing
   today’s collections, takings, and this week’s order counts at a glance.
 * Improvement: Storefront shortcodes can be copied with a single click from the
   new Setup screen.
 * Improvement: A “Hide Setup page” option (Settings, Misc, Advanced) removes the
   Setup screen from the menu once you have finished setting up, and can be switched
   back on at any time.

#### 1.0.1

 * Fix: Fatal error when previewing email templates from the Settings  Emails screen.
   The mock-order helper was missing several methods that the email templates expect,
   causing “Call to undefined method BoxCart_Mock_Order::get_view_url()” and similar
   errors. Thanks to @dansart for the report.
 * Fix: Mini Basket block did not enqueue its assets when placed in a global block-
   theme template part (e.g. the site header), so the badge appeared unstyled and
   the item count never hydrated on non-BoxCart pages. The page-detection now checks
   active header / footer template parts for BoxCart blocks.
 * Fix: Currency symbol on the “Add new product” screen could fall back to £ even
   when the shop’s configured currency was different. The admin product editor now
   reads the currency symbol from the localised settings array instead of querying
   the DOM, which fixed the case where no quantity-type row had yet been rendered.

#### 1.0.0

Initial public release.

 * Click & collect ordering with configurable time slots.
 * Pickup location with opening hours, slot capacity, and per-slot availability.
 * Guest checkout by default – customers can place an order without creating an 
   account, and view their order any time via a per-order magic link emailed to 
   them.
 * Optional customer accounts with order history. Sign-in, lost-password, and password-
   reset all use WordPress’s native authentication flow, styled to match the storefront.
 * Admin order management with a status lifecycle (pending, processing, ready, completed,
   cancelled).
 * Cash on collection and bank transfer payment methods.
 * Seven transactional email templates with branding controls and live preview.
 * Card-view storefront with category filters, search, and mini basket.
 * 5 Gutenberg blocks and 5 shortcodes.
 * Cache-resilient architecture with AJAX hydration and bypass cookie.
 * Developer API – 50+ action hooks, 35 filter hooks, CSS custom properties.
 * WordPress 6.0+ / PHP 7.4+.

## Meta

 *  Version **1.5.1**
 *  Last updated **3 дена ago**
 *  Active installations **60+**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.1.3**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/boxcart/)
 * Tags
 * [click and collect](https://mk.wordpress.org/plugins/tags/click-and-collect/)
   [local pickup](https://mk.wordpress.org/plugins/tags/local-pickup/)[store pickup](https://mk.wordpress.org/plugins/tags/store-pickup/)
   [time slots](https://mk.wordpress.org/plugins/tags/time-slots/)
 *  [Advanced View](https://mk.wordpress.org/plugins/boxcart/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/boxcart/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/boxcart/reviews/)

## Contributors

 *   [ norwichwebsitedesign ](https://profiles.wordpress.org/norwichwebsitedesign/)

## Support

Issues resolved in last two months:

     1 out of 1

 [View support forum](https://wordpress.org/support/plugin/boxcart/)