{"id":305276,"date":"2026-06-01T10:57:49","date_gmt":"2026-06-01T10:57:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/boxcart\/"},"modified":"2026-06-09T15:00:15","modified_gmt":"2026-06-09T15:00:15","slug":"boxcart","status":"publish","type":"plugin","link":"https:\/\/es-mx.wordpress.org\/plugins\/boxcart\/","author":23488678,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.1","stable_tag":"1.0.1","tested":"7.0","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"BoxCart","header_author":"BoxCart","header_description":"Click & collect ordering for WordPress with time slots and a modern admin. For farm shops, bakeries, butchers, and delis.","assets_banners_color":"749d82","last_updated":"2026-06-09 15:00:15","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/boxcart.dev","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":20,"downloads":498,"num_ratings":0,"support_threads":1,"support_threads_resolved":1,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"norwichwebsitedesign","date":"2026-06-01 10:57:25"},"1.0.1":{"tag":"1.0.1","author":"norwichwebsitedesign","date":"2026-06-09 15:00:15"}},"upgrade_notice":{"1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3556611,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3556611,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3556611,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3556611,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3556611,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"boxcart\/products":{"name":"boxcart\/products","title":"BoxCart Products"},"boxcart\/basket":{"name":"boxcart\/basket","title":"BoxCart Basket"},"boxcart\/checkout":{"name":"boxcart\/checkout","title":"BoxCart Checkout"},"boxcart\/account":{"name":"boxcart\/account","title":"BoxCart Account"},"boxcart\/mini-basket":{"name":"boxcart\/mini-basket","title":"BoxCart Mini Basket"}},"tagged_versions":["1.0.0","1.0.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3556611,"resolution":"1","location":"assets","locale":"","width":2880,"height":1800},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3556611,"resolution":"2","location":"assets","locale":"","width":2880,"height":1800},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3556611,"resolution":"3","location":"assets","locale":"","width":2880,"height":1800},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3556611,"resolution":"4","location":"assets","locale":"","width":2880,"height":1800},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3556611,"resolution":"5","location":"assets","locale":"","width":2880,"height":1800},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3556611,"resolution":"6","location":"assets","locale":"","width":2880,"height":1800},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3556611,"resolution":"7","location":"assets","locale":"","width":2880,"height":1800},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3556611,"resolution":"8","location":"assets","locale":"","width":2880,"height":1800},"screenshot-9.png":{"filename":"screenshot-9.png","revision":3556611,"resolution":"9","location":"assets","locale":"","width":2880,"height":1800}},"screenshots":{"1":"Card-view storefront with category filters, search, and a push mini basket.","2":"Sidecart with basket items, collection-slot prompt, and clear total.","3":"Time-slot picker showing live availability on the customer's chosen day.","4":"Customer account with order history.","5":"Admin dashboard with today's orders, pending queue, and ready-for-collection.","6":"Orders list with status tabs, date filter, and quick search.","7":"Product editor - name, price, image, category, SKU, stock, and quantity type.","8":"Pickup-location editor with opening hours, slot length, and capacity.","9":"Gutenberg block inserter showing the five BoxCart blocks."}},"plugin_section":[61],"plugin_tags":[258864,197992,265316,10561,54863],"plugin_category":[],"plugin_contributors":[265317],"plugin_business_model":[],"class_list":["post-305276","plugin","type-plugin","status-publish","hentry","plugin_section-featured","plugin_tags-bakery","plugin_tags-click-and-collect","plugin_tags-farm-shop","plugin_tags-ordering","plugin_tags-time-slots","plugin_contributors-norwichwebsitedesign","plugin_committers-norwichwebsitedesign"],"banners":{"banner":"https:\/\/ps.w.org\/boxcart\/assets\/banner-772x250.png?rev=3556611","banner_2x":"https:\/\/ps.w.org\/boxcart\/assets\/banner-1544x500.png?rev=3556611","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/boxcart\/assets\/icon.svg?rev=3556611","icon":"https:\/\/ps.w.org\/boxcart\/assets\/icon.svg?rev=3556611","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/boxcart\/assets\/screenshot-1.png?rev=3556611","caption":"Card-view storefront with category filters, search, and a push mini basket."},{"src":"https:\/\/ps.w.org\/boxcart\/assets\/screenshot-2.png?rev=3556611","caption":"Sidecart with basket items, collection-slot prompt, and clear total."},{"src":"https:\/\/ps.w.org\/boxcart\/assets\/screenshot-3.png?rev=3556611","caption":"Time-slot picker showing live availability on the customer's chosen day."},{"src":"https:\/\/ps.w.org\/boxcart\/assets\/screenshot-4.png?rev=3556611","caption":"Customer account with order history."},{"src":"https:\/\/ps.w.org\/boxcart\/assets\/screenshot-5.png?rev=3556611","caption":"Admin dashboard with today's orders, pending queue, and ready-for-collection."},{"src":"https:\/\/ps.w.org\/boxcart\/assets\/screenshot-6.png?rev=3556611","caption":"Orders list with status tabs, date filter, and quick search."},{"src":"https:\/\/ps.w.org\/boxcart\/assets\/screenshot-7.png?rev=3556611","caption":"Product editor - name, price, image, category, SKU, stock, and quantity type."},{"src":"https:\/\/ps.w.org\/boxcart\/assets\/screenshot-8.png?rev=3556611","caption":"Pickup-location editor with opening hours, slot length, and capacity."},{"src":"https:\/\/ps.w.org\/boxcart\/assets\/screenshot-9.png?rev=3556611","caption":"Gutenberg block inserter showing the five BoxCart blocks."}],"raw_content":"<!--section=description-->\n<p>BoxCart is a standalone click &amp; 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.<\/p>\n\n<p><strong>Built for:<\/strong> farm shops, bakeries, butchers, delis, greengrocers, fishmongers, florists, coffee roasters, pizza shops, meal-prep kitchens, and any business where customers order ahead and collect.<\/p>\n\n<h4>What you get in the free build<\/h4>\n\n<ul>\n<li><strong>Click &amp; collect ordering<\/strong> with configurable time slots on your pickup schedule.<\/li>\n<li><strong>One pickup location<\/strong> with its own address, collection instructions, opening hours, and per-slot capacity.<\/li>\n<li><strong>Card-view storefront<\/strong> with category filters, search, and mini-basket.<\/li>\n<li><strong>Customer accounts<\/strong> with order history.<\/li>\n<li><strong>Admin order management<\/strong> with a status lifecycle (pending, confirmed, ready, collected, cancelled).<\/li>\n<li><strong>Seven transactional email templates<\/strong> (order confirmation, status updates, cancellations, modifications, customer messaging) with branding controls and a live preview editor. Plus three admin notifications.<\/li>\n<li><strong>Cash on collection<\/strong> and <strong>bank transfer<\/strong> payment methods.<\/li>\n<li><strong>5 Gutenberg blocks and 5 shortcodes<\/strong> for embedding BoxCart anywhere - products, basket, checkout, account, mini basket.<\/li>\n<li><strong>Developer-friendly<\/strong> - 20 action hooks, 11 filter hooks, CSS custom properties throughout, zero external PHP dependencies.<\/li>\n<li><strong>Cache-resilient<\/strong> - pages render as empty shells that hydrate via AJAX, with a bypass cookie for customer sessions. Compatible with Cloudflare, WP Rocket, LiteSpeed, and similar.<\/li>\n<li><strong>Translation-ready<\/strong> with a <code>.pot<\/code> file included.<\/li>\n<li><strong>GDPR-aware<\/strong> - self-hosted fonts, optional full data cleanup on uninstall.<\/li>\n<\/ul>\n\n<h4>Why BoxCart?<\/h4>\n\n<ul>\n<li><strong>Standalone - no WooCommerce required.<\/strong> A single, focused plugin with its own data model.<\/li>\n<li><strong>Time-slot ordering baked in.<\/strong> Configure your schedule, slot length, and capacity. Customers see live availability.<\/li>\n<li><strong>Developer extensible<\/strong> - documented hooks, filters, and CSS custom properties.<\/li>\n<li><strong>Not a stripped-down demo<\/strong> - the free build is a complete, working click &amp; collect store.<\/li>\n<\/ul>\n\n<h4>Paid Pro upgrade (optional)<\/h4>\n\n<p>A paid Pro build is available from <a href=\"https:\/\/boxcart.dev\">boxcart.dev<\/a> with additional features:<\/p>\n\n<ul>\n<li>Multiple pickup locations<\/li>\n<li>Stripe card payments (with Apple Pay, Google Pay, Link, Klarna, PayPal, Afterpay)<\/li>\n<li>Table-view storefront<\/li>\n<li>Customer favourites and one-click reorder<\/li>\n<li>Multi-quantity products (e.g. per-100g \/ per-kilo on one product)<\/li>\n<li>Two-way order messaging<\/li>\n<li>Customer-side order modification<\/li>\n<li>Holiday closures and per-date capacity overrides<\/li>\n<li>Printable pick lists &amp; packing slips<\/li>\n<li>Sales reports<\/li>\n<li>CSV product import\/export<\/li>\n<li>195+ customisation settings<\/li>\n<\/ul>\n\n<p>Pro is optional - the free build will continue to receive updates and is genuinely useful on its own.<\/p>\n\n<h4>Live demo<\/h4>\n\n<p>Three demo stores at <a href=\"https:\/\/demo.boxcart.dev\">demo.boxcart.dev<\/a> - a greengrocer, a bakery, and a butcher - each configured differently to show the range of what BoxCart can do.<\/p>\n\n<h4>Documentation<\/h4>\n\n<p>Full documentation at <a href=\"https:\/\/docs.boxcart.dev\">docs.boxcart.dev<\/a> covering every admin workflow and the developer API.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin uses the <strong>Freemius<\/strong> 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.<\/p>\n\n<p><strong>What data is sent, and when:<\/strong><\/p>\n\n<ul>\n<li>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.<\/li>\n<li>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 <strong>BoxCart &rarr; Account<\/strong>.<\/li>\n<li>If you purchase the Pro upgrade, Freemius also handles your licence key, renewal state, and update delivery for the Pro build.<\/li>\n<li>BoxCart never sends your customers' data, your orders, your products, or the contents of your store to Freemius or anywhere else.<\/li>\n<\/ul>\n\n<p><strong>Endpoints contacted:<\/strong> <code>api.freemius.com<\/code>, <code>wp.freemius.com<\/code>.<\/p>\n\n<p><strong>Freemius's own privacy policy and terms:<\/strong><\/p>\n\n<ul>\n<li>https:\/\/freemius.com\/privacy\/<\/li>\n<li>https:\/\/freemius.com\/terms\/<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>In your WordPress admin, go to <strong>Plugins &rarr; Add New<\/strong>.<\/li>\n<li>Search for <strong>BoxCart<\/strong>, then click <strong>Install Now<\/strong> and <strong>Activate<\/strong>.<\/li>\n<li>Open <strong>BoxCart &rarr; Settings<\/strong> and work through the General tab to set currency, tax, and page assignments.<\/li>\n<li>Create three pages - <strong>Products<\/strong>, <strong>Basket<\/strong>, and <strong>Checkout<\/strong> - and add the matching BoxCart shortcode or Gutenberg block to each. Optionally add a fourth <strong>Account<\/strong> page if you want customers to be able to sign in and view past orders (BoxCart works as guest-checkout-only without it). Assign them all in <strong>BoxCart &rarr; Settings &rarr; General &rarr; Page Setup<\/strong>.<\/li>\n<li>Go to <strong>BoxCart &rarr; Locations<\/strong> and add your pickup location, opening hours, and time slots.<\/li>\n<li>Add your products under <strong>BoxCart &rarr; Products<\/strong>.<\/li>\n<li>Place a test order end-to-end to verify everything is wired up.<\/li>\n<\/ol>\n\n<p>Full step-by-step walkthrough at <a href=\"https:\/\/docs.boxcart.dev\/getting-started.html\">docs.boxcart.dev\/getting-started<\/a>.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20woocommerce%3F\"><h3>Do I need WooCommerce?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"what%20payment%20methods%20are%20supported%20in%20the%20free%20build%3F\"><h3>What payment methods are supported in the free build?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"can%20i%20run%20multiple%20collection%20locations%3F\"><h3>Can I run multiple collection locations?<\/h3><\/dt>\n<dd><p>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 \u2014 useful if you run several sites or pop-ups.<\/p><\/dd>\n<dt id=\"does%20boxcart%20work%20with%20caching%20plugins%20and%20cloudflare%3F\"><h3>Does BoxCart work with caching plugins and Cloudflare?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"is%20it%20translation-ready%3F\"><h3>Is it translation-ready?<\/h3><\/dt>\n<dd><p>Yes. Text domain is <code>boxcart<\/code>. A <code>.pot<\/code> file is included at <code>languages\/boxcart.pot<\/code>.<\/p><\/dd>\n<dt id=\"where%20can%20i%20get%20support%3F\"><h3>Where can I get support?<\/h3><\/dt>\n<dd><p>For the free build, use the <a href=\"https:\/\/wordpress.org\/support\/plugin\/boxcart\/\">WordPress.org support forum<\/a>. For Pro customers, email us at hello@boxcart.dev.<\/p><\/dd>\n<dt id=\"does%20uninstalling%20remove%20all%20my%20data%3F\"><h3>Does uninstalling remove all my data?<\/h3><\/dt>\n<dd><p>Only if you opt in. <strong>BoxCart &rarr; Settings &rarr; Misc<\/strong> has a \"Delete all BoxCart data on uninstall\" checkbox. Off by default, so deactivating the plugin is safe and reversible.<\/p><\/dd>\n<dt id=\"can%20i%20customise%20the%20look%20and%20feel%3F\"><h3>Can I customise the look and feel?<\/h3><\/dt>\n<dd><p>Extensively. Settings cover colours, fonts, button styles, card layouts, sidecart behaviour, email branding, and more. Developers can also use CSS custom properties, 20 action hooks, and 11 filter hooks.<\/p><\/dd>\n<dt id=\"does%20boxcart%20send%20any%20data%20to%20external%20services%3F\"><h3>Does BoxCart send any data to external services?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fix: Fatal error when previewing email templates from the Settings \u2192 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.<\/li>\n<li>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.<\/li>\n<li>Fix: Currency symbol on the \"Add new product\" screen could fall back to \u00a3 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.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<p>Initial public release.<\/p>\n\n<ul>\n<li>Click &amp; collect ordering with configurable time slots.<\/li>\n<li>Pickup location with opening hours, slot capacity, and per-slot availability.<\/li>\n<li>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.<\/li>\n<li>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.<\/li>\n<li>Admin order management with a status lifecycle (pending, confirmed, ready, collected, cancelled).<\/li>\n<li>Cash on collection and bank transfer payment methods.<\/li>\n<li>Seven transactional email templates with branding controls and live preview.<\/li>\n<li>Card-view storefront with category filters, search, and mini basket.<\/li>\n<li>5 Gutenberg blocks and 5 shortcodes.<\/li>\n<li>Cache-resilient architecture with AJAX hydration and bypass cookie.<\/li>\n<li>Developer API - 20 action hooks, 11 filter hooks, CSS custom properties.<\/li>\n<li>WordPress 6.0+ \/ PHP 7.4+.<\/li>\n<\/ul>","raw_excerpt":"Click &amp; collect ordering for WordPress with time slots and a modern admin. For farm shops, bakeries, butchers, and delis.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/305276","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=305276"}],"author":[{"embeddable":true,"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/norwichwebsitedesign"}],"wp:attachment":[{"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=305276"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=305276"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=305276"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=305276"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=305276"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/es-mx.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=305276"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}