Managing Your Store
This guide covers how administrators set up and manage the MakerVera store. You’ll need the manage_store permission to access these features.
Your makerspace is the seller and the merchant of record for its own sales: you set the prices, and payments go to your makerspace’s own payment-provider account.
Product Types
Section titled “Product Types”Your store supports four types of products:
| Type | Description | Example |
|---|---|---|
| Physical | Tangible items, optionally with inventory tracking | T-shirts, stickers, safety glasses |
| Digital | Downloadable or virtual products (also used for gift cards) | Design templates, gift cards |
| Service | Services offered by the makerspace | Tool sharpening, custom engraving |
| Consumable | Items consumed during use, with inventory tracking | Filament spools, resin, wood blanks |
Creating a Product
Section titled “Creating a Product”Navigate to Admin > Store > Products and click Create Product.
Basic Information
Section titled “Basic Information”| Field | Required | Description |
|---|---|---|
| Name | Yes | Product name (up to 100 characters) |
| Description | No | Rich text description (up to 5,000 characters) |
| Category | No | Assign to a product category for filtering |
| Product Type | Yes | Physical, Digital, Service, or Consumable |
| Image | No | Product image URL |
Pricing
Section titled “Pricing”| Field | Description |
|---|---|
| Price | The standard price for this product |
| Member Price | Optional discounted price for members. Leave blank to charge the standard price for everyone |
| Taxable | Whether tax applies to this product. Gift cards are always non-taxable |
Inventory
Section titled “Inventory”| Field | Description |
|---|---|
| Track Inventory | Enable to monitor stock levels |
| Current Stock | Required when tracking is enabled. The system prevents purchases when stock reaches zero |
Product Statuses
Section titled “Product Statuses”Products follow a simple lifecycle:
| Status | Visible to Public | Can Be Purchased |
|---|---|---|
| Draft | No | No |
| Active | Yes | Yes |
| Archived | No | No |
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.
Lifecycle: Delete, Archive, Restore
Section titled “Lifecycle: Delete, Archive, Restore”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.
Choosing the right action
Section titled “Choosing the right action”| Goal | Action | Where to click | Reversible? |
|---|---|---|---|
| Get rid of a product that has never been used (a test draft, a configuration mistake) | Delete Permanently | Danger Zone (only shown when there are zero references) | No — gone forever |
| Retire a product but leave existing subscribers / order history intact | Archive Without Cleanup | Danger Zone | Yes — Restore brings status back to Active |
| Retire a product and clean up every plan / event link and cancel active subscriptions at the end of the current billing period | Remove from All & Archive | Danger Zone (only shown when the product has dependencies) | Partial — Restore reverses the status but does NOT re-link plans/events or reactivate cancelled subscribers |
| Bring an archived product back to Active | Restore to Active | Danger Zone (only shown when status is Archived) | n/a |
What “Remove from All & Archive” does
Section titled “What “Remove from All & Archive” does”When you confirm the Remove from All & Archive dialog, the system runs four steps in order:
- Unlinks the product from every membership plan that lists it as an add-on (required, optional, included, or welcome gift).
- Unlinks the product from every event series that lists it as an add-on.
- Cancels every active subscription to the product at end of the current billing period through your payment provider.
- 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 your payment provider fails to cancel one of the subscriptions (rare — usually an outage at the provider), 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.
What “Restore to Active” does not do
Section titled “What “Restore to Active” does not do”Restore is intentionally a one-step status flip. It does NOT:
- Re-attach the product to plans or events the cleanup pass unlinked. You’ll need to re-create those attachments from the plan / 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.
Permission and scope
Section titled “Permission and scope”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.
Suspending and Resuming a Product
Section titled “Suspending and Resuming a Product”For active products attached as add-ons to membership plans or event series, you can suspend the product to temporarily block new sign-ups without losing the product’s configuration or its plan 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.
| Action | Result |
|---|---|
| Suspend | The 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 plan and event series that includes this product as an add-on. |
| Resume | The 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 badge | Meaning |
|---|---|
| Available | Active and offerable as an add-on |
| Suspended | Active but temporarily paused — admin must resume to allow new add-on enrollments |
| Archived | Soft-deleted; hidden from the storefront |
| Depleted | Inventory has run out (when inventory tracking is enabled) |
When a product is suspended, any new attempt to enroll in a membership plan 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 plan and event series the product is attached to, split into two groups by whether the attachment blocks enrollment:
| Group | What it means |
|---|---|
| Blocking add-ons | New signups for these plans 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-ons | New 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:
- Restock or raise capacity — open the product edit page and adjust the inventory or capacity number.
- Suspend the product — flip the Available for purchase toggle to acknowledge the situation and unblock signups temporarily. Suspension keeps every configuration intact (plan and event attachments, pricing, descriptions) so resuming later is one click.
- Make a required add-on optional — on the affected plan or event edit screen, flip an individual attachment from required to optional. Signups for that plan or event resume immediately while you deal with the supply issue separately.
What if you don’t act?
Section titled “What if you don’t act?”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
Section titled “Categories”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
Managing Categories
Section titled “Managing Categories”Navigate to Admin > Store > Categories to view all your product categories.
| Action | How |
|---|---|
| Create | Click Add Category, fill in the name and optional fields, then click Save Category |
| Edit | Click a category row in the table to open the edit modal |
| Delete | Click Delete on a category row, then confirm. Products in the deleted category become uncategorized |
| Search | Use the search bar to filter categories by name |
Category Fields
Section titled “Category Fields”| Field | Required | Description |
|---|---|---|
| Name | Yes | Category name (up to 100 characters) |
| Description | No | Brief description of what the category contains (up to 1,000 characters) |
| Parent Category | No | Select an existing category to create a nested hierarchy |
| Sort Order | No | Controls display order — lower numbers appear first (default: 0) |
Example Category Structure
Section titled “Example Category Structure”- Materials — Filament, Resin, Wood
- Safety Equipment — Glasses, Gloves, Ear Protection
- Merchandise — T-shirts, Stickers
Member Pricing
Section titled “Member Pricing”Member pricing lets you offer discounts to logged-in members:
- Set a Member Price on a product to give members a lower price
- On the store and product pages, members see their discounted price with the regular price struck through and a Member Price badge
- The cart and checkout use the member price, so the price a member sees is the price they are charged, and tax is calculated on it
- Non-members and guests see only the regular price
- Member pricing applies to one-time products only. Recurring products always bill the regular price, even for members
Example: Filament Spool
Section titled “Example: Filament Spool”- 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.
Billing Model
Section titled “Billing Model”Every product has an explicit billing model that determines how it is sold:
| Billing model | What it means | Member-facing control |
|---|---|---|
| One-time | Billed once at purchase. Cart-eligible | Add to Cart button |
| Recurring | Billed 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 your payment provider’s subscription checkout directly. See Add-On Products for the full guide to plan and event attachment, including the three attachment modes (Optional, Included, Welcome gift).
Items That Can’t Be Sold in Your Currency
Section titled “Items That Can’t Be Sold in Your Currency”Your makerspace sells in one currency: the currency of your connected payment account (US dollars if you haven’t connected one yet). A product, add-on, gift card or fixed-amount discount code priced in a different currency can’t be sold. MakerVera pauses it instead of letting the purchase fail at checkout.
What admins see. A banner on the item explains that it’s priced in another currency than your makerspace sells in, so it can’t be sold. List pages show a banner counting the affected items, and the add-on catalog marks each one with a Can’t be sold badge. The banner appears on:
- Store products (list and detail page)
- Membership add-ons (catalog and add-on form)
- Gift card settings
- Discount codes (fixed-amount codes only)
What members and guests see.
| Where | What happens |
|---|---|
| Store | The product stays listed, but there’s no Add to cart or Subscribe button, and its page says it isn’t available to buy right now. If nothing in your store can be sold, the Store link is hidden. |
| Cart | A paused product is removed from the cart, with a message naming it. |
| Gift cards | The purchase form is replaced by a notice that gift cards aren’t available to buy right now. |
| Event registration | Paused add-ons aren’t offered. If a required add-on is paused, registration isn’t open yet. |
| Membership signup | Paused add-ons aren’t offered. If a paid required add-on is paused, the plan can’t be joined yet. |
| My membership | Paused add-ons can’t be added. Add-ons a member already has keep working. |
If a purchase is attempted anyway, it’s refused before any payment is taken, with a message naming the item. Memberships, passes and event tickets always charge in your makerspace’s currency, so they’re never paused. Percentage and free discount codes have no currency of their own and keep working.
Add-on Products
Section titled “Add-on Products”Any active product can be attached to a membership plan or event as an add-on. There is no separate “add-on toggle” on the product itself — the attachment lives on the plan or event. See the dedicated Add-On Products guide for plan and event configuration, including the recurring-inclusion and welcome-gift attachment modes introduced in May 2026.
Viewing Orders
Section titled “Viewing Orders”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 buyer receives an order confirmation email as soon as the order is paid, with the total shown in the order’s currency and in the buyer’s language.
Not Yet Available
Section titled “Not Yet Available”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.
Next Steps
Section titled “Next Steps”- Add-On Products — Attach products to plans 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