Skip to content

Release testing instructions for WC Payments 4.5.0

Ahmed edited this page Jul 26, 2022 · 22 revisions

Validate Pricing display on Payment Request pop-ups

  • In WooCommerce > Settings > Tax, set up tax rate with and without shipping tax
  • Set up different combinations of the Tax options
    • Prices entered with tax (Exclusive / Inclusive)
    • Display prices in the shop (Excluding Tax / Including Tax)
    • Display prices during cart and checkout (Excluding Tax / Including Tax)
  • Validate the pricing displayed in Apple Pay and Google Pay Payment Request pop-ups in Product, Cart and Checkout Page
  • The prices displayed should be consistent and accurate, avoid confusion.

Validate explicit currency format in admin

  • Go to WooCommerce > Settings, scroll to Currency Options and configure it like this:
    • Currency: United States (US) dollar ($)
    • Currency position: Left
    • Thousand separator: ,
    • Decimal separator: .
    • Number of decimals: 2
  • Add MOP and EUR in WooCommerce > Settings > MultiCurrency.
  • Place an order over 1,000.00 with each currency.
  • Price formats should match the following table:
Price USD  MOP EUR
WooCommerce > Orders Total $1,234.56 USD 1,234.56 P MOP 1,234.56 € EUR
Payments > Transactions Amount (tooltip for not USD) $1,234.56 USD P1,234.56 MOP €1,234.56 EUR
  • Remove all currencies from WooCommerce > Settings > MultiCurrency.
  • Price formats should match the following table now:
Price USD  MOP EUR
WooCommerce > Orders Total $1,234.56 P1,234.56 €1,234.56
Payments > Transactions Amount (tooltip for not USD) $1,234.56 P1,234.56 €1,234.56

Validate Customer Currency Filters work as expected.

  • Add at least one extra currency in WooCommerce > Settings > Multi Currency. For example, if USD is the store currency, add EUR and GPB as well and save the change.
  • Place an order in the store using each currency that is supported.
  • Go to Payments > Transactions.
  • Verify that all of the orders you made have a corresponding entry in the transactions table.
  • On the Show dropdown, select Advanced Filters. Add the Customer Currency filter, use the Is filter, and filter by currency. When filtered, only orders which were placed in the selected currency should display in the transactions list.
  • Also test with the Is Not filter. When this is selected, only orders NOT placed in the selected currency should appear in the transactions list.

Make adding fee details to order notes async

  • Follow the normal checkout flow and look at the order details screen in the WooCommerce tab.
  • Go to Tools > Scheduled actions > search for this job with wcpay_add_fee_breakdown_to_order_notes and select Run for running the action.
  • Ensure there is a separate order note added to the order with Fee details.

Make updating saved payment methods async

  • Follow the normal checkout flow using a saved payment method.
  • Ensure there is a scheduled action created as wcpay_update_saved_payment_method in Scheduled Actions (Tools > Scheduled Actions)
  • Run the action and ensure there are no errors. Additionally check logs to ensure a POST wcpay/payment_methods/{{payment_method}} call was made (check WP-Admin > WooCommerce > Status > Logs and there should be a log for WooCommerce Payments with today's date)

Validate multicurrency shipping tax conversion

WooCommerce > Settings

  • General
    • Enable tax rates and calculations
    • Currency: United States (US) dollar $
  • Shipping > Everywhere > Flat Rate
    • Tax status: Taxable
    • Cost: 5
  • Multi-currency > Euro
    • Exchange rate: Manual
    • Manual rate: 0.91
    • Price rounding: 1.00 (recommended)
    • Charm pricing: none
  • Tax
    • Tax options
      • Prices entered with tax: No, I will enter prices exclusive of tax
      • Display prices during cart and checkout: Excluding tax
    • Standard rates
Country Code State code Postcode / ZIP City Rate % Tax name Priority Compound  Shipping
* * * * 10.0 Tax 1
  • Update a product and set Tax Status to Shipping only.
  • Add it to the cart and go there.
  • Switch currency to EUR.
  • Flat rate shipping should be 5,00 €.
  • Tax should be 0,50 €.
  • Check that shipping and shipping taxes also work as expected with:
    • Subscriptions
    • Advanced shipping rates cost, using formulas like 10 + [fee percent="10" min_fee="5"].

Use the PaymentIntent ID in the Transaction Details URL instead of the Charge ID

  • Perform an order on your test shop
  • Transactions List
    • Open Payments > Transactions
    • Click on the transaction that you have just made
    • It should have a pi_ identifier on the URL and load the transaction details without a redirect
  • Order details
    • Open WooCommerce > Orders
    • Open on the order that you have just made
    • Order details box (1)
      • Click on the Payment Intent id link
      • It should have a pi_ identifier on the URL and load the transaction details without a redirect
    • Order notes box (2)
      • Click on the Payment Intent id link
      • It should have a pi_ identifier on the URL and load the transaction details without a redirect

image

Test support for filtering customer currency in analytics

  • With Multi-Currency enabled, make a few orders on your store in various currencies.
  • Wait 5 minutes for the cache to update after making the final order.
  • Go to Analytics > Orders. Verify the page loads. Select the Advanced filters option on the Show dropdown. Add a single Customer currency filter and verify that the orders are filtered correctly to only display those made in that currency, and the totals add up and look sensible.
  • Now add another Customer currency filter and verify that it now displays orders made in either currency.
  • Repeat the same tests, this time using the Is not filter to ensure only orders NOT placed in a certain currency appear.

Ensure the Payments → Overview task list is visible when a disputed transaction is awaiting response

Note: There may be some data lagginess caused by server delays when testing the following flows, we'll attempt to improve this in a future release.

  1. Purchase a product through the frontend checkout flow using a disputed payment method. eg (card: 4000000000000259)
  2. Complete a second purchase using a different disputed payment method (card: 4000000000001976)
  3. Go to Payments → Overview.
  4. Confirm that the Things to do task list is visible and includes a task with the description: "2 disputed payment need your response".
  5. Go to WooCommerce → Home.
  6. Confirm that the task list is visible and includes a task with the description: "2 disputed payment need your response" is shown here too.
  7. Clicking the task item should send you to the Payments → Disputes screen filtered by disputes needing a response.
Screen Shot 2022-07-22 at 3 15 04 pm Screen Shot 2022-07-22 at 3 24 34 pm
  1. Click on one of the disputes.
  2. Accept the dispute by clicking Accept dispute. When prompted click Ok.
  3. Navigate back to the Payments → Overview screen and confirm the task has updated to indicate only 1 dispute needs a response.
Screen Shot 2022-07-22 at 3 28 19 pm

Validate Multi-Currency compatibility with Points & Rewards plugin

You'll need WooCommerce Points and Rewards plugin.

WooCommerce

  • Settings
    • General
      • Currency: United States (US) dollar $
      • Number of decimals: 2
    • Multi-currency
      • Euro (€ EUR)
        • Exchange rate: Manual
        • Manual rate: 0.91
        • Price rounding: 1.00 (recommended)
        • Charm pricing: none
      • Icelandic króna (kr. ISK)
        • Exchange rate: Manual
        • Manual rate: `133.16
        • Price rounding: 1.00 (recommended)
        • Charm pricing: none
    • Points & Rewards
      • Earn Points Conversion Rate: 1 Points  =  $: 1
      • Earn Points Rounding Mode: Round to nearest integer
      • Redemption Conversion Rate: 10 Points  =  $: 1

Store

  • Add a $99 USD product to cart and go there.
  • The Complete your order and earn X Points... message should match:
    • USD: 99
    • EUR:  100
    • ISK99
  • Place an order to obtain 99 points.
  • Add any product to cart and go there.
  • The Use X Points for a Y discount... message should match:
    • USD: 99 Points for a $9.90
    • EUR: 100 Points for a 9,01 € Yes, it shows more points, but It's something from the plugin rounding behavior. Not related with the compatibility.
    • ISK: 99 Points for a 1.318 kr.
  • Set upPoints earned in a product
    • For a value of 20 it should reward with 20 points no matter which currency is selected.
    • For a value of 100% or 50% the reward should match the converted numbers mentioned previously.
  • Being in the cart press Apply Discount
  • Points redemption in cart totals should match the previously shown discount.
  • Remove it, and apply again but in the checkout page.
  • Should be applied correctly too.

Screenshots

USD EUR ISK
Screenshot 2022-07-21 at 12 52 33 Screenshot 2022-07-21 at 12 52 53 Screenshot 2022-07-21 at 12 53 04
Clone this wiki locally