PhysicalProduct
A physical product (merchandise, equipment, etc.) offered by a business. Has finite inventory and must be fulfilled by staff handing the item to the purchaser after payment.
Implements
Fields
idID!businessBusiness!stripePublishableKeyString!stripeConnectedAccountIdIDThe business's connected account for its active Stripe mode; the client initialises Stripe.js with this for direct charges. Null until onboarding completes.
nameStringResolved for the given locale, falling back to English. Defaults to the viewer's locale.
Arguments (1)
localeLocaledescriptionStringResolved for the given locale, falling back to English. Defaults to the viewer's locale.
Arguments (1)
localeLocalefeaturedImageImagepriceInt!visibilityProductVisibility!saleProductSalePeriod!purchaseRulesProductPurchaseRules!effectivePriceInt!sortOrderInt!purchasePageBlocks[PurchasePageBlock!]!Ordered list of configurable blocks rendered on this product's purchase page (contract, signature, acknowledgement, recurring-summary, etc.). Empty for products that use the default purchase layout. config on each block is a JSON-encoded string.
inventoryIntCurrent stock on hand. Null means inventory is untracked (unlimited).
allowOversellingBoolean!When true, purchases succeed even at zero inventory (inventory can go negative). When false, purchases are refused once inventory is exhausted. Ignored when inventory is null.
fulfillmentInstructionsStringFree-form copy shown to buyers and staff describing how the product will be handed over (e.g. "Pick up at the front desk during class hours"). Resolved for the given locale, falling back to English.
Arguments (1)
localeLocalesoldOutBoolean!Whether the product is currently unavailable because inventory is exhausted and overselling is disabled.