Call sellingPlanGroupCreate mutation with name, merchantCode, options array (e.g., delivery frequency), and sellingPlans array defining each plan's billingPolicy, deliveryPolicy, and pricingPolicies
In pricingPolicies, use a fixed or percentage adjustmentValue on the recurring phase to define the subscribe-and-save discount relative to one-time price
After group creation, call sellingPlanGroupAddProducts mutation with the sellingPlanGroup GID and the product GIDs to associate them
Similarly, call sellingPlanGroupAddProductVariants to associate specific variants if not all variants should offer subscriptions
Verify the selling plan is visible in the Storefront API by querying the product's sellingPlanGroups field
Known gotchas
A product with an associated selling plan group must be sold through a checkout that supports subscriptions; standard Shopify Checkout supports this but some third-party headless checkouts do not
Selling plan options must match the options array defined on the group exactly; a mismatch causes the plan to not render in the storefront product selector
Removing a selling plan from a group does not cancel active SubscriptionContracts referencing that plan; you must migrate or cancel those contracts separately
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp