Aller au contenu

Managing Your Store

Ce contenu n’est pas encore disponible dans votre langue.

This guide covers how administrators set up and manage the MakerVera store. You’ll need the manage_store permission to access these features.

Your store supports four types of products:

TypeDescriptionExample
PhysicalTangible items, optionally with inventory trackingT-shirts, stickers, safety glasses
DigitalDownloadable or virtual products (also used for gift cards)Design templates, gift cards
ServiceServices offered by the makerspaceTool sharpening, custom engraving
ConsumableItems consumed during use, with inventory trackingFilament spools, resin, wood blanks

Navigate to Admin > Store > Products and click Create Product.

FieldRequiredDescription
NameYesProduct name (up to 100 characters)
DescriptionNoRich text description (up to 5,000 characters)
CategoryNoAssign to a product category for filtering
Product TypeYesPhysical, Digital, Service, or Consumable
ImageNoProduct image URL
FieldDescription
PriceThe standard price for this product
Member PriceOptional discounted price for members. Leave blank to charge the standard price for everyone
TaxableWhether tax applies to this product. Gift cards are always non-taxable
FieldDescription
Track InventoryEnable to monitor stock levels
Current StockRequired when tracking is enabled. The system prevents purchases when stock reaches zero

Products follow a simple lifecycle:

StatusVisible to PublicCan Be Purchased
DraftNoNo
ActiveYesYes
ArchivedNoNo

New products start as Draft. Set a product to Active when you’re ready for members to see and purchase it. Archive a product to remove it from the store while keeping it for order history records.

The Danger Zone section at the bottom of the product detail page is the single home for end-of-life actions. It shows exactly the actions that are safe for the product’s current state and dependency footprint — you won’t see a destructive button if the system can’t safely run it.

GoalActionWhere to clickReversible?
Get rid of a product that has never been used (a test draft, a configuration mistake)Delete PermanentlyDanger Zone (only shown when there are zero references)No — gone forever
Retire a product but leave existing subscribers / order history intactArchive Without CleanupDanger ZoneYes — Restore brings status back to Active
Retire a product and clean up every tier / event link and cancel active subscriptions at the end of the current billing periodRemove from All & ArchiveDanger Zone (only shown when the product has dependencies)Partial — Restore reverses the status but does NOT re-link tiers/events or reactivate cancelled subscribers
Bring an archived product back to ActiveRestore to ActiveDanger Zone (only shown when status is Archived)n/a

When you confirm the Remove from All & Archive dialog, the system runs four steps in order:

  1. Unlinks the product from every membership tier that lists it as an add-on (required, optional, included, or welcome gift).
  2. Unlinks the product from every event series that lists it as an add-on.
  3. Cancels every active subscription to the product at end of the current billing period via your billing provider (Stripe).
  4. Sets the product status to Archived.

For each cancelled subscription, the affected member receives an email letting them know access ends on a specific date (their current period end). Members can opt out of these emails through the Membership Lifecycle category in their notification preferences.

If the billing provider fails to cancel one of the subscriptions (rare — usually a Stripe outage), that subscription’s ID appears in a partial-failure toast and the email for that member is NOT sent. You can re-run the action once the billing issue clears — the cleanup is idempotent and only processes leftover work.

If EVERY active subscription cancellation fails on the same run, the product is NOT archived (so you don’t end up with an archived product whose active subscribers still expect to be charged). Fix the billing issue and re-run.

Restore is intentionally a one-step status flip. It does NOT:

  • Re-attach the product to tiers or events the cleanup pass unlinked. You’ll need to re-create those attachments from the tier / event pages.
  • Reactivate subscriptions the cleanup pass cancelled. Members who lost subscription access remain non-subscribed; they’d need to re-subscribe.
  • Send any notification to previously-cancelled members. There is no “restored” email.

The restore confirmation dialog calls these three points out before you confirm so there are no surprises.

Every Danger Zone action requires manage_store. The Danger Zone is hidden for users who don’t hold it. All actions are tenant-scoped — a cross-makerspace product is treated as not-found.

For active products attached as add-ons to membership tiers or event series, you can suspend the product to temporarily block new sign-ups without losing the product’s configuration or its tier and event attachments. Suspending is non-destructive — it is the right tool when an add-on is back-ordered, the supplier is temporarily out, or you need a brief pause while you update materials.

ActionResult
SuspendThe product stays Active but cannot be enrolled as a required add-on. Existing subscriptions and registrations are unaffected. You’ll see a confirmation dialog listing every tier and event series that includes this product as an add-on.
ResumeThe product becomes available again. No confirmation dialog — resuming is always safe.

Find the Available for purchase toggle on the product detail page (visible only when status is Active and you have store-management permission). Toggling it off opens the confirmation dialog; toggling it on resumes the product immediately.

Availability badgeMeaning
AvailableActive and offerable as an add-on
SuspendedActive but temporarily paused — admin must resume to allow new add-on enrollments
ArchivedSoft-deleted; hidden from the storefront
DepletedInventory has run out (when inventory tracking is enabled)

When a product is suspended, any new attempt to enroll in a membership tier or event that requires it as an add-on is rejected with a clear “add-on unavailable” message. Existing members already enrolled with that add-on continue uninterrupted. See Add-On Products for how required add-ons block enrollment.

Get Warned Before You Run Out — Low-Inventory Alerts

Section titled “Get Warned Before You Run Out — Low-Inventory Alerts”

The depletion alert below tells you when a product has already hit zero. A low-inventory alert is the earlier warning: it tells you when stock is getting low — while there’s still time to restock before anyone hits a sold-out screen.

Setting it up. On any product with inventory tracking turned on, the create and edit form shows a Low-inventory alert field. Enter the level at which you want to be warned:

  • For stock products, this is the number of units remaining (for example, alert me when only 3 are left).
  • For capacity products, this is the number of slots available (for example, alert me when only 2 slots remain).

Leave the field blank to turn the warning off — no threshold, no alert. The configured level also shows on the product’s detail page so you can see at a glance which products you’re watching.

When it fires. Once a deduction (a sale, a subscription, an add-on grant) brings the available count below your threshold — but not all the way to zero — every store admin gets an email and in-app notification. Like the depletion alert, it fires once per dip: it won’t keep re-notifying while stock stays low. It clears automatically the moment you restock back to or above your threshold (or lower/clear the threshold), so the next time stock dips, you get a fresh warning.

When a Product Runs Out — Depletion Alerts

Section titled “When a Product Runs Out — Depletion Alerts”

When inventory tracking is on, MakerVera watches the moment your product hits zero and tells you immediately — before a member walks into a confusing “out of stock” message at checkout.

The depletion alert is sent to every store admin in your makerspace by email and in-app, the first time the product reaches zero. It fires once per depletion event: subsequent attempts while still depleted don’t pile up duplicate notifications. The alert clears automatically once you restock or raise capacity.

The alert tells you which product depleted and lists every membership tier and event series the product is attached to, split into two groups by whether the attachment blocks enrollment:

GroupWhat it means
Blocking add-onsNew signups for these tiers and events are blocked until you fix it. Members trying to enroll see the “add-on unavailable” message. This covers required optional add-ons and Included per-cycle inclusions — both are part of what the member is paying for, so neither can be skipped.
Non-blocking add-onsNew signups still go through; the add-on simply doesn’t appear on the choice list (plain optional add-ons) or is quietly skipped at fulfillment (welcome gifts).

The alert closes with three off-ramps so you can act from one place:

  1. Restock or raise capacity — open the product edit page and adjust the inventory or capacity number.
  2. Suspend the product — flip the Available for purchase toggle to acknowledge the situation and unblock signups temporarily. Suspension keeps every configuration intact (tier and event attachments, pricing, descriptions) so resuming later is one click.
  3. Make a required add-on optional — on the affected tier or event edit screen, flip an individual attachment from required to optional. Signups for that tier or event resume immediately while you deal with the supply issue separately.

If three days go by and the product is still depleted and at least one blocking attachment (a required add-on or an Included inclusion) is still blocking enrollments, MakerVera sends a follow-up escalation notification. The escalation fires up to three times (every three days) before stopping — by that point a manual review is overdue.

The escalation stops automatically the moment any of these happen:

  • Inventory is restocked (or capacity raised) above zero
  • The product is suspended via the Available for purchase toggle
  • Every blocking attachment for the product has been cleared — required add-ons removed or flipped to optional, and any Included inclusion detached or its product made available again

Suspending the product is the explicit “I see this, I’ll handle it later” signal — escalations stop, but the initial alert stays in your inbox / in-app feed as the audit trail.

Categories help members browse your store. Navigate to Admin > Store > Categories to manage them.

  • Categories have a name, description, and sort order
  • Categories can be nested with a parent category
  • The public store shows category tabs for filtering products

Navigate to Admin > Store > Categories to view all your product categories.

ActionHow
CreateClick Add Category, fill in the name and optional fields, then click Save Category
EditClick a category row in the table to open the edit modal
DeleteClick Delete on a category row, then confirm. Products in the deleted category become uncategorized
SearchUse the search bar to filter categories by name
FieldRequiredDescription
NameYesCategory name (up to 100 characters)
DescriptionNoBrief description of what the category contains (up to 1,000 characters)
Parent CategoryNoSelect an existing category to create a nested hierarchy
Sort OrderNoControls display order — lower numbers appear first (default: 0)
  • Materials — Filament, Resin, Wood
  • Safety Equipment — Glasses, Gloves, Ear Protection
  • Merchandise — T-shirts, Stickers

Member pricing lets you offer discounts to logged-in members:

  • Set a Member Price on any product to give members a lower price
  • Members see both the regular price and their discounted price
  • Non-members and guests see only the regular price
  • Regular price: $25.00
  • Member price: $20.00

Members save $5.00 per spool. The member price is shown as the primary price when a member is logged in.

Every product has an explicit billing model that determines how it is sold:

Billing modelWhat it meansMember-facing control
One-timeBilled once at purchase. Cart-eligibleAdd to Cart button
RecurringBilled on a subscription cadence (daily, weekly, monthly, annual)Subscribe button on the product detail page

The billing model is required at creation time. Recurring products are not cartable — they are sold through a dedicated Subscribe flow that opens a Stripe subscription session directly. See Add-On Products for the full guide to tier and event attachment, including the three attachment modes (Optional, Included, Welcome gift).

Any active product can be attached to a membership tier or event as an add-on. There is no separate “add-on toggle” on the product itself — the attachment lives on the tier or event. See the dedicated Add-On Products guide for tier and event configuration, including the recurring-inclusion and welcome-gift attachment modes introduced in May 2026.

When a product is purchased, an order is created automatically. Orders appear in Admin > Store > Orders and include:

  • Order number
  • Customer name and email
  • Items purchased with quantities
  • Subtotal, tax, fees, and total
  • Payment status
  • Refund history (if applicable)

The following features are planned but not yet supported:

  • Guest checkout — Purchases currently require a logged-in account.
  • Bulk product import — Products must be created individually through the admin interface.
  • Add-On Products — Attach products to tiers and events, including recurring inclusions and welcome gifts
  • Gift Cards — Set up gift card products
  • Donations — Create donation campaigns
  • Overview — Return to the billing overview