Skip to content

Release testing instructions for WC Payments 3.2.0 Subscriptions

Chris edited this page Oct 26, 2021 · 11 revisions

Context

WooCommerce Payments version 3.2.0 will ship with a new subscriptions feature. In short, this allows merchants to create products that will charge customers on a recurring basis (i.e. subscription products).

This is powered by Stripe Billing on the backend and differs from our existing subscription offering in the paid WooCommerce Subscriptions extension.

Setup

Please ensure the WooCommerce Subscriptions extension is not activated as this will supersede the WCPay Subscriptions functionality.

Enable subscriptions

  • Navigate to WCPay Dev in the WordPress admin.
  • Check the following checkboxes:
    • Enable grouped settings
    • Enable UPE checkout
    • Add UPE additional payment methods
    • Enable WCPay subscriptions
  • Ensure the "Enable API request redirection" checkbox is not checked.
  • Click the "Submit" button.

Subscription Products

Create a subscription product - Simple/Variable

  • Navigate to Products → Add new.
  • Change the product type to “Simple subscription”.
  • Add a product name and description.
  • Add a subscription price.
  • Publish the product.

Update a subscription product - Name/Description/Price/Period/Interval

  • Navigate to Products → All Products.
  • Click Edit on a subscription product.
  • Update the subscription product name, description and price.
  • Click Update.

Create a free subscription product

  • Navigate to Products → Add new.
  • Change the product type to “Simple subscription”.
  • Add a product name and description.
  • Add a subscription price of $0.
  • Publish the product.

Create a subscription product with a free trial

  • Navigate to Products → Add new.
  • Change the product type to “Simple subscription”.
  • Add a product name, description and price.
  • Add a free trial period of 7 days.
  • Publish the product.

Create a subscription product with a sign-up fee

  • Navigate to Products → Add new.
  • Change the product type to “Simple subscription”.
  • Add a product name, description and price.
  • Add a sign-up fee of $10
  • Publish the product.

Create a subscription product with one-time shipping

  • Navigate to Products → Add new.
  • Change the product type to “Simple subscription”.
  • Add a product name, description and price.
  • Click “Shipping” and check the “One time shipping” checkbox.
  • Publish the product.

Create a synchronized subscription product

  • Navigate to WooCommerce → Settings → Subscriptions
  • Check the "Synchronise renewals" checkbox and save the changes.
  • Navigate to Products → Add new.
  • Change the product type to “Simple subscription”.
  • Add a product name, description and price.
  • Set “Synchronize renewals” to “1st day of the month” (Or any day that is not the current one).
  • Publish the product.

Create a subscription product with multiple settings

  • Navigate to Products → Add new.
  • Change the product type to “Simple subscription”.
  • Add a product name, description and price.
  • Add a free trial period of 7 days.
  • Add a sign-up fee of $20.
  • Publish the product.

Create subscription products with varying tax classes

  • Create a Standard, Reduced, and Zero tax rate
  • Navigate to Products → Add new.
  • Change the product type to “Simple subscription”.
  • Add a product name, description and price.
  • Select a tax class that corresponds to one of the rates created above.
  • Publish the product.

Purchase a subscription product

  • As a shopper, navigate to the subscription product on the front end.
  • Click the “Sign up now” button.
  • Navigate to the cart.
  • Ensure the cart totals are correct.
  • Proceed to checkout.
  • Complete checkout with any testing card (e.g. 4242424242424242)
  • Navigate to My account → Subscriptions
  • Ensure the newly purchased subscription appears on this page and the details are correct.
  • Return to the WordPress admin and navigate to WooCommerce → Subscriptions.
  • Ensure a subscription appears for the recent order.
  • Click the subscription ID to navigate to the “Edit Subscription” page, ensure the subscription details here are correct.
  • Navigate to Payments → Transactions.
  • Ensure a transaction exists for the most recent purchase.
  • Click the transaction row to navigate to the transaction details page.
  • Ensure there is 1% recurring transaction fee.
  • Ensure the transaction details look correct and the fees add up. e.g. a 3.9% + $0.30 fee on a $20 should equal $1.08.

Purchase a free subscription product

  • As a shopper, navigate to the subscription product on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Ensure the cart totals are correct.

  • Proceed to checkout.

  • Ensure you are not prompted to enter payment details.

  • Complete checkout.

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

Purchase a subscription product with a free trial

  • As a shopper, navigate to the subscription product on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Ensure the cart totals are correct and the first renewal is +7 days from the current date (if purchasing a 7-day free trial subscription product)

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

  • Ensure the “Next payment” column takes the free trial period into account.

Purchase a subscription product with a sign-up fee

  • As a shopper, navigate to a subscription product with a sign-up fee on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Ensure the cart totals are correct and include the sign-up fee.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

Purchase a subscription product with one-time shipping

  • As a shopper, navigate to a subscription product with one-time shipping on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Ensure the cart totals are correct and include the one-time shipping fee.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

Purchase a subscription product with multiple settings

  • As a shopper, navigate to the subscription product with multiple settings created above on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Ensure the cart totals are correct and include the sign-up fee, but not the first payment.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • In WP-Admin, navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

Purchase a synchronized subscription product

  • As a shopper, navigate to the synchronized subscription product created above on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Ensure the cart totals are correct, and there is no upfront cost.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • In WP-Admin, navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

  • From WP-Admin navigate to WooCommerce > Subscriptions and select the synchronized product.

  • Change the “Synchronize renewals” setting to be the same as the current day.

  • Repeat the steps above to purchase the subscription

  • This time cart totals should reflect an upfront cost.

Purchase a subscription product with a non-subscription product (Mixed Checkout)

  • As a shopper, navigate to the subscription product on the front end.

  • Click the “Sign up now” button.

  • Navigate to the shop and add a non-subscription product to the cart.

  • Navigate to the cart.

  • Ensure the cart totals are correct.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

Purchase multiple subscriptions with differing intervals/periods

  • As a shopper, navigate to a subscription product on the front end.

  • Click the “Sign up now” button.

  • Navigate to the shop and add another subscription product to the cart. This subscription product should use a different billing interval to the last one

  • Navigate to the cart.

  • Ensure the cart totals are correct.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure two new subscriptions appear on this page and their details are correct.

Purchase subscription products with varying tax classes

  • As a shopper, navigate to the subscription with a standard tax rate on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Ensure the cart totals are correct.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

  • Repeat the above steps for each of the other tax rate subscription products created above.

Subscriptions

Suspend a subscription

  • Navigate to WooCommerce → Subscriptions.
  • Hover an active subscription and click the “Suspend” button.
  • Ensure the subscription status has transitioned to “On hold”.

Resume a paused subscription

  • Navigate to WooCommerce → Subscriptions.
  • Hover over a suspended subscription and click the “Reactivate” button.

  • Ensure the subscription status has transitioned to “Active”.

Cancel a subscription via My Account

  • Navigate to My account → Subscriptions
  • Click a subscription ID to navigate to its details pages.
  • Click the “Cancel” button to cancel the subscription.
  • Confirm the subscription “Status” now reads “Pending Cancellation” and the end date is correct.

Resubscribe to a subscription via My Account

  • Navigate to My account → Subscriptions
  • Click a subscription ID to navigate to its details pages.
  • Click the “Resubscribe” button to resume the subscription.
  • Confirm you are redirected to the checkout.
  • Complete checkout with any testing card (e.g. 4242424242424242)
  • Navigate to My account → Subscriptions
  • Confirm the prior subscription was cancelled and a new subscription was created and is active.

Trash a subscription product

  • Navigate to Products
  • Hover over the desired subscription product and click the “Trash” button.
  • Confirm the subscription was successfully trashed.

Untrash a subscription product

  • Navigate to Products
  • Click the “Trash” button to display trashed subscription products.
  • Hover over the desired trashed subscription product and click the “Restore” button.
  • Confirm the subscription was successfully restored.

Renew a subscription - Success

*Testing this requires WCPay Dev Tool Plugin. See To test renewals. Otherwise the following instructions require you to wait for a subscription to renew naturally.

  • In WP-Admin navigate to WooCommerce > Subscriptions and choose any existing subscription.
  • Take note of the subscriptions' Next Payment date.
  • After the Next Payment date has passed, check the subscription again. Confirm the subscription has renewed and a renewal order exists and has been paid for.

Change payment method to new card

  • Follow steps from “Purchase a subscription product”.
  • As a Shopper, navigate to My account → Subscriptions and open the newly created subscription entry.
  • Observe 3 buttons for “Actions”. Click “Change payment” button.
  • In the second block, select “Use a new payment method” option.
  • Provide 4242424242424242 as the test card number, future expiration date, and a CVC code.
  • Click “Change payment method” button.
  • Observe the “Payment method updated.” success message.
  • Ensure the “Payment” line in the very first block is reflecting the card data you have provided.

Change payment method to saved card

  • Follow steps from “Purchase a subscription product”.
  • As a Shopper navigate to My account → Payment methods and click “Add payment method” button.
  • Observe the following form:
  • Fill the form in with card number 4242424242424242, expiration date in future, and any CVC code.
  • Click “Add payment method” button.
  • Observe “Payment method successfully added.” success message.
  • Navigate to My account → Subscriptions and open the newly created subscription entry.
  • Observe 3 buttons for “Actions”. Click “Change payment” button.
  • In the second block, select the method created prior.
  • Click “Change payment method” button.
  • Observe the “Payment method updated.” success message.
  • Ensure the “Payment” line in the very first block is reflecting the card data you have provided.

Set default payment method

Follow steps from “Change payment method to saved card”, except:

  • Make 2 purchases of subscription products, so you get 2 entries in the subscription listing.
  • Make sure to mark “Update the payment method used for all of my current subscriptions (optional)” checkbox when changing the payment method.
  • Ensure both subscription entries are using the selected payment method.

Change default payment method

TBD

Refund a subscription

  • Navigate to Payments → Transactions and open an existing subscription transaction.
  • Click the order ID to navigate to the order details page.
  • Scroll down the page and click the "Refund" button.
  • Change the "Qty" field to "1" and click the "Refund $X via WooCommerce Payments" button.
  • Click "OK" in the prompt to confirm the refund.
  • Confirm the refund was successful and the order status is "Refunded".
  • Navigate to Payments → Transactions and confirm there is a new row for the refund, click it to view the details.
  • Confirm the refund was successful and the details look correct.

Coupons

Add a recurring coupon

  • Navigate to Marketing → Coupons → Add coupon.
  • Add the coupon code and description.
  • Change the discount type “Recurring Product % Discount”.
  • Add the coupon amount.
  • Publish the coupon.

Add a sign-up fee coupon

  • Navigate to Marketing → Coupons → Add coupon.
  • Add the coupon code and description.
  • Change the discount type “Sign Up Fee % Discount”.
  • Add the coupon amount.
  • Publish the coupon.

Add a fixed coupon

See Adding a coupon.

Purchase a subscription product using the recurring coupon

  • As a shopper, navigate to a subscription product on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Add a recurring coupon code to the coupon code field and click the “Apply coupon” button.

  • Ensure the cart totals are correct and take the recurring coupon into account.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

Purchase a subscription product with sign-up fee using the sign-up fee coupon

  • As a shopper, navigate to a subscription product with a sign-up fee on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Add a sign-up fee coupon code to the coupon code field and click the “Apply coupon” button.

  • Ensure the cart totals are correct and take the sign-up fee coupon into account.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

Purchase a subscription product with sign-up fee using both the sign-up fee and recurring coupons

  • As a shopper, navigate to a subscription product with a sign-up fee on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Add a sign-up fee coupon code to the coupon code field and click the “Apply coupon” button.

  • Add a recurring coupon code to the coupon code field and click the “Apply coupon” button.

  • Ensure the cart totals are correct and take the sign-up fee and recurring coupons into account.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

Purchase a subscription with a combination of fixed and recurring coupons

  • As a shopper, navigate to a subscription product on the front end.

  • Click the “Sign up now” button.

  • Navigate to the cart.

  • Add a recurring coupon code to the coupon code field and click the “Apply coupon” button.

  • Add a fixed coupon code to the coupon code field and click the “Apply coupon” button.

  • Ensure the cart totals are correct and take the recurring and fixed coupons into account.

  • Proceed to checkout.

  • Complete checkout with any testing card (e.g. 4242424242424242)

  • Navigate to My account → Subscriptions

  • Ensure the newly purchased subscription appears on this page and the details are correct.

Other

Enable/disable subscriptions from the settings

Disable flow

  • Navigate to Payments → Settings.
  • Scroll to the bottom of the page and expand the "Advanced settings" panel.
  • Uncheck the "Enable Subscriptions with WooCommerce Payments" checkbox.
  • Click the "Save changes" button.
  • Manually refresh the page.
  • Confirm that the "Subscriptions" item is not available under the "WooCommerce" menu.

Enable flow

  • Navigate to Payments → Settings.
  • Scroll to the bottom of the page and expand the "Advanced settings" panel.
  • Check the "Enable Subscriptions with WooCommerce Payments" checkbox.
  • Click the "Save changes" button.
  • Manually refresh the page.
  • Confirm that the "Subscriptions" item is available under the "WooCommerce" menu.
  • Navigate to WooCommerce → Subscriptions and observe the page loads as expected.

Admin notice to warn about deactivating WC Subscriptions

  1. Install and activate the WooCommerce Subscriptions plugin.
  2. Make sure the WCPay Subscriptions feature is switched on via WCPay Dev tools. https://d.pr/HjtrhT
  3. Go to the Plugins admin screen.
  4. Click the link to Deactivate WooCommerce Subscriptions.
  5. You should be prompted with a popup notice.
  6. Clicking Yes, deactivate WooCommerce Subscriptions will deactivate the plugin, cancel will close the modal and subscriptions will remain active.

Compatibility with Multi-Currency

  • Navigate to WooCommerce > Settings > Multi-Currency.
  • Click Add currencies, and then select Canadian dollar and Japanese yen.
  • Click Update selected to add the currencies as Enabled currencies.
  • Navigate to the product with "multiple settings" that was created in the previous steps.
  • Confirm the prices are displayed correctly on the product page.
    • Prices are able to be verified in the Preview section under WooCommerce > Settings > Multi-Currency > "Currency": https://d.pr/i/TrpjYj
  • Add the product to your cart, and verify the prices are correct in the cart.
  • Proceed to the checkout page, and verify the prices are correct on the checkout page.

Store eligibility

Make sure to test this on a store where the 'Enable Subscriptions with WooCommerce Payments' (Payments > Settings > expand 'Advanced settings') checkbox has not been disabled.

If store's country (can be changed at WooCommerce > Settings) is US, Payments > Settings > expand 'Advanced settings' > 'Enable Subscriptions with WooCommerce Payments' checkbox should show up. Otherwise, that option should not show up.

Clone this wiki locally