Manage promotions, discounts, and coupons. Use when running `stateset-promotions`, creating campaigns, validating coupons, or applying cart discounts.
Manage promotions, coupons, and cart discounts.
stateset-promotions ... or stateset "apply coupon SAVE10 to cart CART-123"--apply.create_promotion, activate_promotion, deactivate_promotion, create_coupon, validate_coupon, apply_cart_promotions.validate_coupon — no --apply needed.create_promotion, activate_promotion, deactivate_promotion, create_coupon, apply_cart_promotions — requires --apply.stateset promotions create --name "Spring Sale" --discount-pct 15 --start 2026-04-01 --end 2026-04-30 --apply
stateset promotions create-coupon promo_123 --code SPRING15 --max-uses 500 --apply
stateset promotions validate --coupon SPRING15 --cart-id cart_456
stateset promotions deactivate promo_123 --apply
Promotion: Draft -> Active -> Expired (or Paused/Cancelled)
Coupon: Active -> Redeemed/Exhausted (or Expired/Revoked)
{"status":"applied","promotion_id":"promo_123","coupon":"SAVE10","discount_amount":25.00,"cart_total_after":225.00}
redemption_count vs max_redemptions on the coupon.COUPON_EXPIRED: Coupon is past its end date or has been revoked.USAGE_LIMIT_REACHED: Coupon has hit its maximum redemption count.CART_BELOW_MINIMUM: Cart total does not meet the promotion's minimum amount.