slug: spree-commerce provider: Spree Commerce generated_by: planning/capability-mapping/scripts/classify_capabilities.py model: claude-opus-5 frame: - Software & Technology min_confidence: 0.7 capability_model: source: https://github.com/vincentmakes/turbo-ea-capabilities license: CC-BY-4.0 attribution: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0 notice: NOTICE edge_count: 17 edges: - tag: Promotions spec_file: spree-commerce-promotions-api-openapi.yml capability_id: BC-440.30 capability_id_l1: BC-440 capability_name: Discount & Promotion Management confidence: 0.9 evidence: GET /api/v3/admin/promotions/{promotion_id}/coupon_codes List coupon codes for a promotion; POST /api/v3/admin/promotions Create a promotion reason: Direct lifecycle management of promotions with coupon codes, rules, actions and calculators (create_promotion_params, update_promotion_action_calculator_params) — unambiguously discount and promotion management. - tag: Promotion Actions spec_file: spree-commerce-promotion-actions-api-openapi.yml capability_id: BC-440.30 capability_id_l1: BC-440 capability_name: Discount & Promotion Management confidence: 0.85 evidence: POST /api/v2/platform/promotion_actions create-promotion-action Create a Promotion Action reason: Promotion actions define the discount/benefit applied when a promotion fires (create/update/delete promotion action params). This is configuration of discounts and promotional offers. - tag: Promotion Rules spec_file: spree-commerce-promotion-rules-api-openapi.yml capability_id: BC-440.30 capability_id_l1: BC-440 capability_name: Discount & Promotion Management confidence: 0.85 evidence: POST /api/v2/platform/promotion_rules create-promotion-rule Create a Promotion Rule reason: Promotion rules are the eligibility conditions governing when a promotional discount applies; CRUD over them is discount/promotion policy configuration. - tag: Orders spec_file: spree-commerce-orders-api-openapi.yml capability_id: BC-520.40 capability_id_l1: BC-520 capability_name: Order Fulfilment Management confidence: 0.8 evidence: '"PATCH /api/v3/admin/orders/{order_id}/fulfillments/{id}/fulfill Fulfill a fulfillment", "POST /api/v3/admin/orders/{order_id}/items Add an item"' reason: Operations create and manage customer orders and orchestrate fulfilments (fulfill, cancel, resume, split), which is order fulfilment management. - tag: Promotion Categories spec_file: spree-commerce-promotion-categories-api-openapi.yml capability_id: BC-440.30 capability_id_l1: BC-440 capability_name: Discount & Promotion Management confidence: 0.8 evidence: POST /api/v2/platform/promotion_categories create-promotion-category Create a Promotion Category reason: Categorisation of promotional offers for administration of the promotion portfolio — part of discount and promotion management. Slightly thinner evidence than the promotion/action tags. - tag: Variants spec_file: spree-commerce-variants-api-openapi.yml capability_id: BC-820.40 capability_id_l1: BC-820 capability_name: Product Configuration & Variant Management confidence: 0.8 evidence: '"List all Product Variants"; schemas Variant, OptionValue, Product' reason: Operations manage product variants and their option values under a parent product — product configuration and variant management. Slight ambiguity only over whether catalogue/master-data framing would be preferred. - tag: Webhook Subscribers spec_file: spree-commerce-webhook-subscribers-api-openapi.yml capability_id: BC-4270.80 capability_id_l1: BC-4270 capability_name: Webhook & Event Subscription Management confidence: 0.8 evidence: '"Create a Webhook Subscriber", "update-webhook-subscriber", "delete-webhook-subscriber"' reason: Full lifecycle CRUD over outbound webhook subscribers is exactly webhook and event subscription management for the platform's developer/integration ecosystem. - tag: Customers spec_file: spree-commerce-customers-api-openapi.yml capability_id: BC-420.10 capability_id_l1: BC-420 capability_name: Customer Data Management confidence: 0.78 evidence: GET /api/v3/admin/customer_groups List customer groups; POST /api/v3/admin/customers/{customer_id}/addresses Create a customer address; GET /api/v3/admin/customers/{customer_id}/credit_cards List customer credit cards reason: Operations maintain customer records, their addresses and stored payment instruments — customer master data upkeep. Customer groups also touch segmentation (BC-420.20), hence some sub-capability ambiguity, but the dominant surface is customer data management. - tag: Account spec_file: spree-commerce-account-api-openapi.yml capability_id: BC-420.10 capability_id_l1: BC-420 capability_name: Customer Data Management confidence: 0.75 evidence: POST /api/v2/storefront/account account-creation Create an Account; PATCH ... Update an Account; schemas User, Address reason: Storefront shopper account creation, retrieval and update with a User/Address schema — this is customer master record management for the eCommerce platform, not authentication. - tag: Shipments spec_file: spree-commerce-shipments-api-openapi.yml capability_id: BC-520.40 capability_id_l1: BC-520 capability_name: Order Fulfilment Management confidence: 0.75 evidence: PATCH /api/v2/platform/shipments/{id}/ready Mark Shipment as ready to be shipped; PATCH /api/v2/platform/shipments/{id}/ship Mark Shipment as shipped reason: Shipment state transitions (ready, ship, cancel, resume, pend) and adding/removing variants to a shipment are the execution of order fulfilment for customer orders. Could arguably lean logistics operations, hence 0.75. - tag: Stock Items spec_file: spree-commerce-stock-items-api-openapi.yml capability_id: BC-530.10 capability_id_l1: BC-530 capability_name: Stock Level Management confidence: 0.75 evidence: GET /api/v2/platform/stock_items stock-items-list Return a list of Stock Items; create_stock_item_params reason: Stock items in Spree represent on-hand inventory quantities per variant per stock location; creating and updating them is direct stock level management. - tag: Tax Rates spec_file: spree-commerce-tax-rates-api-openapi.yml capability_id: BC-220.20 capability_id_l1: BC-220 capability_name: Indirect Tax Management confidence: 0.75 evidence: POST /api/v2/platform/tax_rates create-tax-rate Create a Tax Rate reason: Managing tax rates applied to storefront orders is indirect tax (VAT/GST/sales tax) determination and calculation configuration. - tag: Cart / Coupons spec_file: spree-commerce-cart-coupons-api-openapi.yml capability_id: BC-440.30 capability_id_l1: BC-440 capability_name: Discount & Promotion Management confidence: 0.72 evidence: PATCH /api/v2/storefront/cart/apply_coupon_code 'Apply a Coupon Code / Gift Card'; 'Remove all Coupons' reason: Operations apply and remove coupon codes and gift cards against a cart, which is execution of discount and promotional offers at the point of sale. - tag: Account / Address spec_file: spree-commerce-account-address-api-openapi.yml capability_id: BC-420.10 capability_id_l1: BC-420 capability_name: Customer Data Management confidence: 0.7 evidence: GET /api/v2/storefront/account/addresses addresses-list List all Addresses; POST ... create-address reason: CRUD over the shopper's own address book under their account — customer profile/master data maintenance. Shipping execution is not in scope of these operations. - tag: Option Types spec_file: spree-commerce-option-types-api-openapi.yml capability_id: BC-820.40 capability_id_l1: BC-820 capability_name: Product Configuration & Variant Management confidence: 0.7 evidence: '"POST /api/v2/platform/option_types create-option-type Create an Option Type"' reason: Option types define the product variant/option dimensions (e.g. size, colour) used to build product variants, matching Product Configuration & Variant Management. - tag: Option Values spec_file: spree-commerce-option-values-api-openapi.yml capability_id: BC-820.40 capability_id_l1: BC-820 capability_name: Product Configuration & Variant Management confidence: 0.7 evidence: '"POST /api/v2/platform/option_values create-option-value Create an Option Value"' reason: Option values are the concrete variant option data (e.g. 'Large', 'Red') underpinning product variants — product configuration and variant management. - tag: Vendors spec_file: spree-commerce-vendors-api-openapi.yml capability_id: BC-510.10 capability_id_l1: BC-510 capability_name: Supplier Onboarding Management confidence: 0.7 evidence: '"Invites Vendor to the platform", "Start onboarding process", "Completes onboarding process", "Approves Vendor", "Rejects Vendor", "Suspends Vendor"' reason: Marketplace vendor invitation, onboarding, approval/rejection and suspension is qualification and registration of third-party sellers, closely matching supplier onboarding. Some ambiguity as marketplace sellers are not classic procurement suppliers.