Skip to content

Release testing instructions for the WooCommerce Stripe payment gateway 7.3.0

Kristófer Reykjalín edited this page Apr 6, 2023 · 8 revisions

Release testing instructions for the WooCommerce Stripe payment gateway 7.3.0

The payment request is updated when product add-ons are changed

  1. Install the official product add-ons plugin: https://woocommerce.com/products/product-add-ons/

  2. Go to Products > Add-ons and click Create New to create a new product add-on.

  3. In the add-on fields section, create a new Short Text field. Make sure it is applied to all products and has adjust price enabled with a flat fee of 2.

image

  1. Visit any product, and add some text in the add-on field so the extra price is added. Notice how the product price is correctly set to 2 (90 base price + add-on price of 2).

image

  1. Press the Buy with Google Pay button on that same page. The Google payment modal appears and the price should be the total product price, including the add-on price ($92).

The amount will be different depending on the product you are using for test. The value should be the product price + add-on price ($2). If your product is priced at $10 and the add-on is priced at $2. you should expect the value in the payment request to be $12.

Testing support for eMandates for recurring payments using INR as the currency.

Note You must set the currency of your store to Indian Rupees (INR) before testing the changes in this PR.

Note This PR relies on webhooks. You must configure your test site such that it can receive webhooks for these tests to work as intended.

Test all critical flows

Warning Please test these flows with your store currency set to INR and then go through the flows again with a different currency.

Make sure all critical flows work as intended with both the Classic and UPE checkouts. Make sure to test both Shortcode and Block-based flows. It's essential that we check all Alternative Payment Methods, such as SEPA, as well.

Try to go through the critical flows with a normal card, 3DS card, and the "success" test Indian regulatory card 4000003560000123.

Successful subscription purchase and renewal

Warning The mandate is initially created in a pending state and cannot be used for a renewal payment until it's transitioned to an active state. This can take anywhere from 30-90 seconds. You can watch for the mandate.updated webhook that's sent once the mandate is transitioned to an active state.

Example timeline:

2023-03-15 01:49:58   --> payment_intent.created [evt_3MlnDlKFePZ3MR451OeVHcza]
...
2023-03-15 01:50:05   --> payment_intent.succeeded [evt_3MlnDlKFePZ3MR451V756bvq]
...
2023-03-15 01:51:09   --> mandate.updated [evt_1MlnEvKFePZ3MR45creZ0fyu]
  1. Buy a subscription with 4000003560000123
  2. Wait until the mandate.updated webhook is delivered to ensure the mandate is in an active state.
  3. Go to Tools > Scheduled Actions > Pending
  4. Locate the renewal task for the subscription you just bought
  5. Click Run to run the renewal payment
  6. Go to WooCommerce > Orders
  7. Open the new renewal order
  8. Make sure there's an order note saying something along the lines of "The customer must authorize this payment off-session. An attempt will be made to charge the customer’s card on 2021-10-10 at 04:09 pm."
  9. Wait ~5 minutes (or until the time indicated by the order notes)
  10. Reload the order details page
  11. Make sure the payment has been successfully processed, i.e. status is set to processing, subscription is active.

Successful subscription purchase and renewal with multiple subscriptions on a different schedule

  1. Create 2 subscription products: one with a daily renewal schedule, the other with a weekly renewal schedule.
  2. Buy both subscriptions in a single order with 4000003560000123.
  3. Follow steps 2-11 in the Successful subscription purchase and renewal for the daily renewal subscription.
  4. Follow steps 2-11 in the Successful subscription purchase and renewal for the weekly renewal subscription.

Successful subscription purchase and renewal with multiple subscriptions on the same schedule

  1. Create 2 subscription products, both with the same renewal schedule.
  2. Buy both subscriptions in a single order with 4000003560000123.
  3. Follow steps 2-11 in the Successful subscription purchase and renewal for the daily renewal subscription.
  4. Follow steps 2-11 in the Successful subscription purchase and renewal for the weekly renewal subscription.

Successful subscription purchase with non-subscription product in the cart

  1. Buy a subscription and any amount of non-subscription items with 4000003560000123.
  2. Follow steps 2-11 in the Successful subscription purchase and renewal for the renewal subscription.

Successful subscription purchase, but failed renewal

Note The order note explaining the failure is a generic "payment failed" note. Adding a better note should be handled in a different PR.

  1. Buy a subscription with 4000003560000297
  2. Wait until the mandate.updated webhook is delivered to ensure the mandate is in an active state.
  3. Go to Tools > Scheduled Actions > Pending
  4. Locate the renewal task for the subscription you just bought
  5. Click Run to run the renewal payment
  6. Go to WooCommerce > Orders
  7. Open the new renewal order
  8. Make sure there's an order note explaining the order failed
  9. Make sure the order status is set to Failed.

Now repeat those steps, but buy a subscription with 4000003560000248 in step 1.

Clone this wiki locally