wcs-cart-checkout-coupons
Installation
SKILL.md
WooCommerce Subscriptions cart, checkout, and coupons
Treat the initial charge and every recurring schedule as separate totals calculations. Let WCS build those calculations; extend them through Woo/WCS hooks instead of copying product meta into custom price arithmetic.
Start with the correct layer
| Need | Correct layer |
|---|---|
| Change a product's subscription schedule or plan | Product/APFS APIs; use wcs-subscription-plans-apfs. |
| Discount recurring product amounts | Persisted recurring_fee or recurring_percent coupon. |
| Discount only the sign-up fee | sign_up_fee or sign_up_fee_percent coupon. |
| Preserve an existing renewal order's historical discount while paying it | WCS renewal-cart reconstruction and its internal pseudo coupon. |
| Add a recurring fee | Add a normal Woo fee, then classify the exact fee through woocommerce_subscriptions_is_recurring_fee. |
| Show headless recurring totals | Read WCS's Store API extension; do not calculate schedules in JavaScript. |
| Add an unrelated Woo coupon type or virtual entitlement | Use wc-coupon-types-rules or wc-coupon-dynamic. |
Respect the two-level cart model
The master WC_Cart calculates the amount due now. WCS groups subscription items by recurring schedule and stores cloned, calculated carts in WC()->cart->recurring_carts.