wcs-data-model-switching-gifting
Installation
SKILL.md
WooCommerce Subscriptions: data model, switching, gifting
Use this when exact storage names or switch/gift internals matter. Prefer WCS CRUD functions and WC_Subscription methods for writes; use raw keys only for audits, migrations, debugging, or compatibility glue.
Core names
| Entity | Name/key | Notes |
|---|---|---|
| Subscription order type | shop_subscription |
Registered with wc_register_order_type(), class WC_Subscription. In CPT storage it is a post type; in HPOS it is an order type. |
| Simple subscription product type | subscription |
WC_Product_Subscription::get_type(). |
| Variable subscription product type | variable-subscription |
WC_Product_Variable_Subscription::get_type(). |
| Subscription variation product type | subscription_variation |
WC_Product_Subscription_Variation::get_type(). |
| Action Scheduler group | wc_subscription_scheduled_event |
Used for subscription scheduled events. |
Subscription statuses are WooCommerce order statuses with wc- prefix in storage: wc-pending, wc-active, wc-on-hold, wc-cancelled, wc-switched, wc-expired, and wc-pending-cancel. Object APIs usually use unprefixed values.
Subscription meta keys
These keys map to WC_Subscription props in both CPT and HPOS subscription data stores.