-
Notifications
You must be signed in to change notification settings - Fork 69
Release testing instructions for WC Payments 3.4.0
Below the checkout payment fields, there should be some green text that reads: "Thank you for your purchase".
- From the admin perspective (
wp-admin
), click on theWCPay Dev
menu item. - Make sure
Enable UPE checkout
is not checked. - Go to
Snippets
(requiresCode Snippets
plugin) and clickAdd New
. - Enter any title and paste the following code snippet in the
Code
section:
add_action('wcpay_payment_fields_wcpay', function ($id) {
echo "<div style='color: green;'>Thank you for your purchase</div>";
});
- Click
Save Changes
. - From the customer perspective, go to the
Shop
, add some product to your cart, and go toCheckout
. - Observe the Expected outcome.
Below the checkout payment fields, there should be some purple text that reads: "Thank you for your purchase".
- From the admin perspective (
wp-admin
), click on theWCPay Dev
menu item. - Make sure
Enable UPE checkout
is checked. - Go to
Snippets
(requiresCode Snippets
plugin) and clickAdd New
. - Enter any title and paste the following code snippet in the
Code
section:
add_action('wcpay_payment_fields_upe', function ($id) {
echo "<div style='color: purple;'>Thank you for your purchase</div>";
});
- Click
Save Changes
. - From the customer perspective, go to the
Shop
, add some product to your cart, and go toCheckout
. - Observe the Expected outcome.
Price shown on the payment request button for zero decimal currencies like Japanese Yen should match the actual amount of the product
- Add Japanese yen to the list of currencies in WooCommerce -> Settings -> Multi-currency
- Enable express checkout from Payments -> Settings -> Enable express checkouts
- As a customer, under My Account > Account Details, switch the currency to JPY and save. (Or use currency switcher widget)
- Go to a product page
- Click the payment request button
- Ensure that the prices shown matches the correct amount for the product
The currency of the products in the All Products block should be the same as the store's currency.
- Have the default settings for
WooCommerce -> MultiCurrency
(Automatically switch customers to their local currency) - Set your WooCommerce currency to a different currency than your country's (for example, if you're in Germany, set it to
$
) - Add your country's currency to the MultiCurrency list (for example, if you're in Germany, add
€
) - Create a new page. Add the "All Products" block to that page, and publish it.
- Visit the page (on an Incognito window).
- Note that the currency selected in the currency switcher dropdown matches the price amounts in the products grid. For example, if visiting from Germany, everything should be displayed in €.
Order metadata should be added to an intent while capturing a terminal payment.
-
Create a new order in WooCommerce with "Cash on delivery" as the payment method.
-
Create a payment intent in Stripe Dashboard at
https://dashboard.stripe.com/test/connect/accounts/<account_id>/payments/new
. Make sure to have the "Capture funds later" option selected under "Manually enter card information." -
On the intent details page
https://dashboard.stripe.com/test/connect/accounts/<account_id>/payments/<intent_id>
, scroll down to the "Metadata" section. Add a couple of key-value pairs, eg. customer_name = John Doe, data_from_mobile = Dummy Text. We'll need this to verify backward compatibility later.

- Make a POST request to
/payments/orders/<order_id>/capture_terminal_payment
. Refer the docs to set up authorization correctly.

- Refresh the intent details page and verify whether new metadata key-value pairs have been added:
- The original value of
customer_name
should be preserved, i.e. "John Doe." It should not be the one specified in the customer name field while creating the order in step 1. (backward compatibility check) -
data_from_mobile
should still be present. (backward compatibility check) - More pairs should have been added by the
capture_terminal_payment
API, such as order_id, order_key, etc.
- The original value of