DashCommerce Lite

Sell products from your EmDash content: a cart, Stripe Checkout, stock tracking, refunds, tax and shipping, and an orders admin.

View source
Public name@dashcommerce.bsky.social/dashcommerce-lite

Or open Registry in your EmDash admin and search for this name.

Overview

DashCommerce Lite turns the entries in your products collection into a shop. Shoppers add items to a cart and pay on Stripe's hosted Checkout page. You manage orders, stock and settings in the EmDash admin. It runs as a sandboxed plugin, so there is nothing to install from npm.

What it does

  • Prices, SKU and stock settings come from each product entry.
  • A cart that needs no shopper account.
  • Stripe hosted Checkout, including methods that confirm later, such as SEPA Direct Debit.
  • A signed Stripe webhook: an order is marked paid only when Stripe says so, and repeated events are ignored.
  • Stock is taken when payment is confirmed and put back when a paid order is cancelled or fully refunded.
  • Refunds made in the Stripe Dashboard show up on the order.
  • Flat tax and shipping, or Stripe Tax.
  • Admin pages for orders (search, cancel, CSV export), stock and settings, plus a Recent orders widget.

Access it asks for

Read content (product prices and stock), network requests to api.stripe.com only, and its own storage for orders, carts, stock and Stripe events.

Before you install

  • Cloudflare Workers Paid is required. EmDash runs sandboxed plugins in Worker Loaders, which are only on the paid plan.
  • Requires EmDash 1.3 or later.
  • Do not install it alongside @dashcommerce/core, the full DashCommerce plugin on npm. Each runs its own cart, checkout, orders and Stripe webhook. Pick one.
  • Simple products only. Variable products, subscriptions and order emails are in @dashcommerce/core.
  • Your theme needs the small storefront kit. See Installation.

Links

Screenshots

Permissions

Plugins get only the capabilities they declare and you approve. Your EmDash admin lists these again before anything installs.

  • Read content

    Read entries from your site’s content collections.

  • Make network requests

    Connect to the publisher-declared external hosts.

    Allowed hosts

    • api.stripe.com

Installation

  1. Check the site runs on Cloudflare Workers Paid with a worker_loaders binding ("worker_loaders": [{ "binding": "LOADER" }] in wrangler.jsonc) and a cron trigger (every minute works well).
  2. Set EMDASH_ENCRYPTION_KEY on the site so the Stripe keys are stored encrypted.
  3. Install DashCommerce Lite and approve its access.
  4. Open DashCommerce > Settings and add your Stripe secret key. Create a Stripe webhook endpoint for the URL and events shown on that page, then paste its signing secret into Settings.
  5. Add the storefront kit to your theme: copy storefront/dashcommerce.js and storefront/dashcommerce.d.ts to src/lib/, and the components in storefront/astro/ to src/components/. Use <AddToCart /> on product pages, <Cart /> on the cart page, <CartCount /> in the header and <CheckoutSuccess /> on /checkout/success.

The kit is in the repository: https://github.com/emdashCommerce/dashcommerce/tree/main/packages/lite/storefront. The DashCommerce starter theme has it wired in already.

Keep exploring

More plugins like DashCommerce Lite

Browse by keyword, or see everything @dashcommerce.bsky.social publishes.

Install on your site

Open in EmDash

DashCommerce Lite

@dashcommerce.bsky.social/dashcommerce-lite

Choose the EmDash site where you want to review this plugin. Nothing is installed until you confirm its permissions in that site's admin.

This browser will remember the site. You can change it next time.