01.software Docs

Commerce Operations

Prepare catalog, customer, order, fulfillment, shipping, and support ownership.

Commerce Operations

Use this page when the workspace will sell products, manage customers, or support orders after launch.

Commerce Setup

Prepare catalog

Create real products, options, categories, and images before inviting teams to operate the workspace.

Assign order ownership

Name who handles order review, fulfillment, returns, refunds, and customer support.

Confirm shipping and discounts

Review shipping policy ownership and decide who can create or retire discounts.

Connect support habits

Make sure customer account, order, and return questions have a clear support path.

Operating Ownership

WorkflowOwnerBefore launch
catalogmerchandising ownerproducts and sellable options exist
ordersoperations ownerorder review and fulfillment path is assigned
shippinglogistics ownerdefault shipping policy is confirmed
discountscommerce ownerpromotion approval is clear
customerssupport owneraccount recovery and service expectations are assigned

Launch Checklist

  • ecommerce is effective on the current plan
  • at least one product is ready for sale
  • shipping and discount ownership are clear
  • customer support owns account and order questions
  • payment and webhook responsibilities are assigned before customer launch

Keep commerce launch small. A complete first product and order support path is better than a broad catalog with unclear ownership.

Commerce helpers (SDK)

The @01.software/sdk exposes shaped commerce helpers as the recommended path for common consumer flows. Helpers fold the underlying Payload queries, access policy, and response shaping into a single call.

HelperUse case
commerce.product.detail({ slug | id })Product detail page: returns one product with variants, options, brand, categories, tags, images, videos, and listing rollup. Returns null on 404 (missing, unpublished, wrong tenant, or feature disabled).
commerce.product.listingGroups({ productIds })Listing/grid pages: paginated grouped data per product.
commerce.product.stockCheck({ items })Pre-cart validation: point-in-time stock availability for variants.
commerce.cart.*Cart lifecycle: get / addItem / updateItem / removeItem / applyDiscount / clear.
commerce.discounts.validate({ code, orderAmount })Pre-checkout discount validation.
commerce.shipping.calculate({ postalCode, orderAmount })Pre-checkout shipping calculation.
commerce.orders.checkoutConvert a cart to an order (Client: customer JWT; ServerClient: API key).

For React, createQueryHooks(client).useProductDetailBySlug(slug) and matching hooks expose the same helpers with React Query caching and automatic invalidation on mutations to related collections.

The raw client.collections.from() query builder remains available as the escape hatch for cases the helpers do not cover (bulk reads, custom filter combinations, fields not in the helper response shape). See the SDK README's "Advanced: direct Payload queries" section.

Next Actions

On this page