v1.8.0
Bug fix: Card Expiry warnings never sent.
The plugin looked for stripe_card_expiry* order meta, which the WooCommerce Stripe gateway does not write — so every subscription was silently skipped. Verified on a live site: that meta returned zero rows while the payment tokens table held valid card expiry data.
- Card expiry is now read from WC_Payment_Tokens (the subscription own token where identifiable, else the customer default card, else most recent), ignoring non-card tokens.
- Original order-meta lookups kept as a fallback.
After updating, run: wp action-scheduler run --hooks=bdsm_daily_card_expiry_check