Admin documentation

A guided tour of every section of the admin panel — what it does, who can use it, and how to get things done.

Looking for the public Storefront API reference? Open the API docs.

Overview

Getting started

Everyone

The admin panel is grouped into tiles on /admin. Each tile is one workflow. Your role decides which tiles you see: Super admins see everything, Managers see day-to-day operations, Support staff see only customer-facing queues, Vendors get their own portal at /vendor.

How to use

  1. Sign in and open /admin from the header menu.
  2. Click any tile to enter that section. Use the browser back button or the header to return.
  3. If a tile is missing, your role does not have access. Ask a super admin to update your role under Staff users.
  4. Use the search bar on this Documentation page to jump straight to any feature.
introstarttourhometilesrole

Roles cheat sheet

Everyone

Which role can do what.

How to use

  1. Super admin — everything, including Staff, Vendors, Approvals, Payouts, API keys.
  2. Admin / Manager — day-to-day catalog, orders, content, coupons, customers, tiers, analytics.
  3. Support staff — Tickets, Enquiries.
  4. Packing / Dispatch — only their queue in Fulfillment.
  5. Vendor — only the /vendor portal.
  6. Customer / B2B customer — storefront, account, B2B portal.
permissionsaccessrole matrix

Catalog

Upload catalog

Admin / Manager

Quickly add products by uploading a supplier PDF. AI extracts product names, prices, descriptions and creates draft products.

Open Upload catalog

How to use

  1. Open Upload catalog and drop a PDF file.
  2. Wait for AI extraction to finish — products appear as drafts.
  3. Review each draft, fix details, attach images, then publish from Products.
  4. Bulk-assign a category before publishing to keep the storefront tidy.

Tips

  • Best for catalog/price lists with clear structure. Scanned images may need manual cleanup.
  • For huge imports prefer Import products → CSV, which is faster and reversible.
pdfaiextractocrsupplierprice list

Product approvals

Super admin

Vendors and staff can submit products. They land here for review before going live on the storefront.

Open Product approvals

How to use

  1. Open the queue and click a product to inspect images, price, stock and category.
  2. Approve to publish, or Reject with an optional reason.
  3. Approved products immediately become visible on the storefront.
  4. Rejected products stay in the vendor's drafts so they can fix and resubmit.
queuereviewpublishvendor submissionmoderation

Products

Admin / Manager

The master list of every product. Edit details, manage variants, set stock, archive items and run bulk price/discount updates.

Open Products

How to use

  1. Use the search and filters to find a product.
  2. Click a row to edit name, description, price/MRP, images, category, SKU and variants.
  3. Use the bulk action bar to apply a discount % or archive multiple products at once.
  4. Add gallery images via drag-and-drop; the first image becomes the storefront thumbnail.
  5. Set vendor_cost per product (or per variant) so payouts are calculated automatically.
  6. Toggle Active off to hide a product without deleting its history.

Fields & options

Name / Slug
Public title and URL. Slug auto-generates from name; edit before publishing if needed.
MRP / Sale price
MRP shows the struck-through price; Sale price is what the customer pays.
SKU
External reference. Used by Bulk product API and Stock-sync API to match existing rows.
Stock quantity
Inventory available. Reaches 0 → product is shown as Sold out and may trigger Notify-me enquiries.
Vendor / vendor_cost
Drives payouts. If empty on product, the matching variant's vendor_cost is used.
Variants
Override price, MRP, stock and SKU per option (size, colour, pack-size, etc.).
Images
Primary image + gallery, stored in the product-images bucket and served via signed URLs.

Tips

  • SKU is the external reference used by the bulk import / stock API.
  • Variants override the parent price and stock when present.
  • Bulk discount only updates Sale price — MRP stays as the reference price.
catalogeditvariantsstockinventoryskupricemrpsalediscountarchiveimagesgallery

Import products

Super admin

Bulk import products from a URL, CSV file, or PDF. You can pin a vendor so all imported products are owned by that vendor.

Open Import products

How to use

  1. Pick the source: URL, CSV, or PDF.
  2. Optionally select a vendor — products will be tagged with that vendor_id.
  3. Review the parsed preview, then confirm import.
  4. After import, jump to Products to refine names, images and categories.

Tips

  • URL scraping respects the URL & Image blocklists configured in the database.
  • CSV columns: name, sku, mrp, sale_price, stock_quantity, category_slug, description, image_url.
csvurlscrapebulkmigration

Categories

Admin / Manager

Storefront browsing categories. Slugs are used in URLs and the public API.

Open Categories

How to use

  1. Add a category with name and slug (auto-generated from name).
  2. Drag to reorder. Order controls how they appear on the storefront.
  3. Delete only when no products are attached — reassign first if needed.
  4. Set an image to make the category card visually richer on the home page.
taxonomynavigationslugmenu

People

Vendors

Super admin

Manage suppliers, give a user the vendor role, and link products to them for payouts.

Open Vendors

How to use

  1. Create a vendor profile (name, contact, default vendor_cost).
  2. Link an existing user account to grant the vendor role — they get the Vendor portal at /vendor.
  3. Assign products to a vendor from Products or Import.
  4. Edit vendor cost rules per product or per variant in Products for accurate payouts.
suppliersmerchantsmarketplacevendor role

Staff users

Super admin

Invite team members and control their roles (super admin, admin/manager, support).

Open Staff users

How to use

  1. Invite by email — they sign up and are auto-linked to the role you chose.
  2. Change roles on existing users at any time.
  3. Remove a role to revoke access.
  4. Use Packing / Dispatch sub-roles to limit staff to a single fulfillment queue.

Tips

  • Roles live in a dedicated user_roles table — never on the profile.
teamrolespermissionsinvitemanagersupport

Customers

Admin / Manager

List of all customers. Switch between B2C and B2B account types and view order history.

Open Customers

How to use

  1. Search by email/name.
  2. Toggle a customer to B2B to unlock tier-based pricing for them.
  3. Open a customer to see orders, addresses, and lifetime value.
  4. Block a customer to stop future orders without deleting their history.
usersaccountsb2cb2bwholesaleaddresses

Storefront

Site content

Admin / Manager

Edit homepage sections (hero, testimonials, tiles), business info, social links, and toggle the WhatsApp ordering flow used at checkout.

Open Site content

How to use

  1. Edit hero headline, sub-text and image.
  2. Add or remove testimonials and feature tiles.
  3. Enable WhatsApp ordering and set the business number — the checkout button becomes ‘Send Order on WhatsApp’.
  4. Set the B2B WhatsApp number to receive bulk-enquiry order details.
  5. Update business address, GST/registration info and social links — these flow into the footer and packing slips.

Tips

  • WhatsApp numbers must include the country code, no spaces (e.g. 919999999999).
  • Changes are live the moment you Save — there is no separate publish step.
homepageherobannertestimonialstileswhatsappsend orderbusiness numberb2b whatsappfooteraboutcontact

Storefront (home, shop, search)

Customer

Customer-facing storefront. Home shows hero + curated tiles + categories. /shop lists everything with filters, /search runs full-text search, /category/{slug} drills into one category.

Open Storefront (home, shop, search)

How to use

  1. Edit what appears on the home page from Site content.
  2. Categories on /shop come from /admin/categories ordering.
  3. Search supports partial matches on name, SKU and description.
  4. Filter bar lets customers narrow by price, category, in-stock, and tags.
homelandingshopbrowsesearchfilterscategory page

Product page

Customer

Detail page for one product. Shows gallery, variants, B2B tier prices when applicable, and the Notify-me form when sold out.

Open Product page

How to use

  1. Variants render as selectable chips; price/stock update live.
  2. Sold-out products show a Notify-me form that creates a Product enquiry.
  3. B2B customers see their tier-discounted price inline.
pdpgalleryvariantsnotify meadd to cart

Cart & checkout

Customer

Standard cart with quantity controls, coupon entry, address selection, and a payment step. When WhatsApp ordering is enabled in Site content, the primary button becomes ‘Send Order on WhatsApp’ and pre-fills a message to the business number.

Open Cart & checkout

How to use

  1. Apply a coupon — invalid codes show inline errors.
  2. Pick / add a shipping address.
  3. Choose COD or online payment.
  4. On success the customer lands on /order/{id} with a printable invoice.
cartcheckoutcouponaddresspaymentcodwhatsapp ordersend order on whatsapp

Sign in / sign up

Customer

Single auth page supporting Email/password, Google, and Phone OTP. Signed-out users attempting to reach a protected page are redirected here.

Open Sign in / sign up

How to use

  1. Google sign-in uses the Lovable broker — no extra setup needed.
  2. Phone OTP uses the phone_otps table to throttle and verify.
  3. After sign-in the user lands back on the page they came from.
loginsignupregistergooglephoneotppassword

SEO & sitemap

Admin / Manager

Every public route sets its own title, meta description, og:image and twitter card. /sitemap.xml is generated dynamically from active products and categories.

How to use

  1. Product pages derive og:image from the primary image — no extra work.
  2. Edit hero / tiles in Site content to control the home page meta.
  3. Add or rename categories in Categories — they appear in /sitemap.xml automatically.
seometatitledescriptionogtwittersitemaprobots

Operations

Orders

Admin / Manager

All customer orders. Update status, print packing & shipping slips, record tracking, and trigger refunds.

Open Orders

How to use

  1. Open an order to see line items, customer, address, payment and timeline.
  2. Move it through statuses (Pending → Packed → Shipped → Delivered).
  3. Use Packing slip / Shipping slip links to print.
  4. Initiate a refund — staff requests go to Refund requests for admin approval.
  5. Attach a delivery photo when marking Delivered to add proof to the timeline.
  6. Cancel from the order page; stock is automatically restored.

Fields & options

Status
Pending, Confirmed, Packed, Shipped, Out for delivery, Delivered, Cancelled, Refunded.
Payment
COD or online; shows transaction reference where available.
Tracking
Courier + AWB number; appears on the customer's Order page.
Vendor split
Each item is tagged with its vendor for downstream payouts.
orderinvoicestatustrackingshippingdeliverypacking slipshipping slipcancelrefundtimeline

Fulfillment

Staff / Manager

Operational queues for packing and dispatch with quick-print slips.

Open Fulfillment

How to use

  1. Work the Packing queue: confirm items picked, print packing slip, mark Packed.
  2. Work the Dispatch queue: enter courier + tracking number, mark Shipped.
  3. Filter the queues by date or vendor when working a specific batch.
packingdispatchqueuewarehousecourierawb

Refund requests

Admin

Staff-raised refund requests awaiting admin approval.

Open Refund requests

How to use

  1. Review the original order and the reason.
  2. Approve to process the refund, or Reject with a note.
  3. Approving a refund updates the order status and notifies the customer.
refundreturnapprovereject

Marketing

Coupons

Admin / Manager

Discount codes for checkout. Supports % or flat amount, min order, expiry and usage caps.

Open Coupons

How to use

  1. Create a code, set type (percent / flat), value, and limits.
  2. Activate to make it usable at checkout.
  3. Deactivate or delete when a promo ends.
  4. Generate a shareable coupon image from the coupon row to post on socials / WhatsApp.

Fields & options

Code
Case-insensitive string customer enters at checkout.
Type / Value
Percent (%) or Flat (₹). Percent is capped by max_discount if set.
Min order
Coupon only applies when subtotal ≥ this amount.
Expires at / Max uses / Per-user limit
Validity and usage controls.
promodiscountcodevoucheroffer

Customer care

Support tickets

Staff

Customer messages tied to an order. Reply, change status, escalate.

Open Support tickets

How to use

  1. Open a ticket to see the order and full thread.
  2. Reply — the customer is notified by email.
  3. Resolve / close when done.
  4. Attach images from the support-attachments bucket when troubleshooting damaged items.
supporthelpcomplaintchatmessagesthread

Product enquiries

Staff

Notify-me requests on sold-out products. Use to gauge demand or contact the customer when restocked.

Open Product enquiries

How to use

  1. Browse pending enquiries by product.
  2. Mark fulfilled once stock is back and the customer has been notified.
  3. Use the count per product to decide what to restock first.
notify mesold outrestockwaitlist

Finance

Vendor payouts

Super admin

Record settlements paid to vendors. Each item earns a vendor_cost (product-level, falling back to variant-level).

Open Vendor payouts

How to use

  1. Pick a vendor and a date range to see unpaid items.
  2. Record a payout with reference / note — selected items are marked paid.
  3. View history per vendor.
  4. Export the unpaid items list before paying to keep an off-system ledger.

Tips

  • Payouts are based on delivered items only — pending/cancelled orders do not accrue.
  • Vendors see the same numbers under /vendor/payments and /vendor/payouts.
payoutsettlementvendor costcommissionledger

Pricing

B2B tier rules

Admin

Quantity-based discount tiers for B2B customers, set globally or per category.

Open B2B tier rules

How to use

  1. Add a tier: minimum quantity → discount %.
  2. Optionally scope to a category. Otherwise it applies globally.
  3. Order matters — the highest matching tier wins at checkout.
  4. Per-product tiers (in Products) override category and global tiers.
wholesalebulk discountquantity breakb2b pricing

Insights

Analytics

Admin / Manager

Filter usage and top-viewed products over a date range.

Open Analytics

How to use

  1. Pick a date range.
  2. Review top viewed products, most-used filters, and conversion signals.
  3. Cross-check with Orders to see which views convert.

Tips

  • Anonymous and signed-in views are both tracked, but de-duped per session.
reportsstatsviewsfilterscart addstrends

Integrations

API keys

Super admin

Issue Bearer tokens for the public Storefront / Sync API. See full endpoint reference on the API docs page.

Open API keys

How to use

  1. Generate a key, choose scopes (storefront:read, products:write, orders:read, orders:write).
  2. Copy the plaintext key once — it cannot be shown again.
  3. Revoke or delete keys that are no longer needed.
  4. From the list, the Copy button copies the prefix (the full key is shown only at creation).

Fields & options

storefront:read
Public catalog reads: products, categories, offers.
products:write
Bulk create/update products and stock/price sync.
orders:read
Fetch unsynced orders for downstream systems.
orders:write
Mark orders / items as synced once consumed.

Tips

  • Full endpoint reference & curl examples live at /api-docs.
apibearertokenintegrationscopeswebhook

Public API endpoints

Developers

REST endpoints under /api/public/v1/* secured by Bearer API keys. Covers storefront reads plus product & order sync for external systems.

Open Public API endpoints

How to use

  1. GET /products, /products/{slug}, /categories, /offers — storefront reads.
  2. POST /products/bulk — upsert by SKU; supports base64 images and gallery.
  3. POST /products/stock — batch update stock / sale_price / mrp by SKU (product or variant).
  4. GET /orders/unsynced — orders with items not yet synced.
  5. POST /orders/sync — mark specific order items, or all items in an order, as synced.

Tips

  • Open /api-docs for full request/response schemas and curl examples.
restendpointproductscategoriesoffersorderssyncbulkbase64

Portals

Vendor portal (for vendors)

Vendor

Vendors get their own portal at /vendor to see their products, orders containing their products, payments owed, and payout history.

Open Vendor portal (for vendors)

How to use

  1. Products — see which catalog items are linked to this vendor.
  2. Orders — see only line items belonging to this vendor; print packing slips per order.
  3. Payments — running balance of vendor_cost owed.
  4. Payouts — history of settlements received from the store.
suppliervendor loginpaymentsearningsmy products

B2B portal

B2B customer

Dedicated portal for B2B customers: tier-priced product list, bulk order builder, B2B order history at /b2b-orders, and a WhatsApp enquiry button using the B2B WhatsApp number.

Open B2B portal

How to use

  1. Add many items quickly via the bulk grid.
  2. Submit to convert into an order, or send as a WhatsApp enquiry to the business.
  3. Track previous B2B orders under /b2b-orders.
wholesalebulkquoteb2b enquirytier pricing

Customer account (profile, orders, tickets)

Customer

Signed-in customers get /dashboard (overview), /profile (name, phone, addresses), /orders (history), /order/{id} (detail + reorder), and /tickets (support threads with the store).

Open Customer account (profile, orders, tickets)

How to use

  1. Customers can raise a ticket from any order page.
  2. Addresses saved in /profile are reused at checkout.
  3. Order page exposes Reorder, Track, and Download invoice actions.
accountprofileaddressesmy ordersorder historysupportraise tickettickets