Introduce filter to prevent automatic activation upon payment.
Closed this issue · 0 comments
Description
This comes out of adding subscription support to the Pre-orders extension, see https://github.com/woocommerce/woocommerce-pre-orders/issues/393 and the associated PR https://github.com/woocommerce/woocommerce-pre-orders/pull/497
Subscriptions automatically activates a subscription and set the start date to the current time upon payment. For standard orders this is expected. This occurs within WC_Subscriptions_Order::maybe_record_subscription_payment()
.
In the case of Pre-orders that are paid upfront, it activates a subscription prior to the product being available. As a result the recurring payments begin after the selected time frame, this too may be before the product is available.
In order to prevent a subscription from activating prior to the products availability, it would be helpful to introduce a filter allowing plugins to override it.
Pull request incoming
Testing instructions
- Check out the Subscriptions compat branch from https://github.com/woocommerce/woocommerce-pre-orders/pull/497
- Build JavaScript
npm i; npm run build:dev
- Create a pre-ordered subscription product with upfront payments
- Order the product
- In the dashboard, observe the start and renewal date are based on the time of order rather than the pre-order start date
Product impact
- Does this feature affect WooCommerce Subscriptions?
- Does this feature affect WooCommerce Payments?