Skip to content

Place the order after v6 express Pay Now on block checkout (7032) - #4790

Merged
Dinamiko merged 2 commits into
dev/release/4.2.0from
dev/PCP-7032-fix-pay-now-in-v6
Oct 15, 2026
Merged

Dinamiko merged 2 commits into
dev/release/4.2.0from
dev/PCP-7032-fix-pay-now-in-v6

Conversation

@stracker-phil

@stracker-phil stracker-phil commented Oct 14, 2026 •

Copy link
Copy Markdown
Collaborator

Changelog: Fix - PayPal express payments on block checkout now complete the order directly when Pay Now is enabled #4790

Description

🐛 The problem

With the v6 SDK and Pay Now enabled, a buyer who pays with the PayPal express button on an empty block checkout form lands on the review page instead of the Order Received page. They must click "Place order" a second time. With the v5 SDK, the order is placed directly.

💡 Why it happens

After approval, the v6 express component sent the PayPal addresses to the server but never put them into the Blocks checkout form. The Store API response strips billing and shipping, so the form stayed empty. The automatic submit then failed validation, and the validation fallback redirected the buyer to the review page.

✅ The fix

V6ExpressComponent now also writes the PayPal addresses into the Blocks form state (reflectInUi: true) before it submits. v5 already did this, and the v6 review page does the same.

🧪 How to verify

  1. Enable Pay Now and SDK v6, and use block checkout.
  2. Add a simple product to the cart and open the checkout page. Leave the form empty.
  3. Pay with the PayPal express button. The Order Received page opens.
  4. Disable Pay Now and repeat. The review page opens, with the PayPal address filled in.

@stracker-phil stracker-phil added bug Something isn't working v6 SDK labels Oct 14, 2026
@stracker-phil
stracker-phil marked this pull request as ready for review October 14, 2026 09:52
@github-actions

Copy link
Copy Markdown

Test using WordPress Playground

The changes in this pull request can be previewed and tested using a WordPress Playground instance.
WordPress Playground is an experimental project that creates a full WordPress instance entirely within the browser.

🔗 Test this pull request with WordPress Playground

What's included:

  • ✅ WordPress (latest)
  • ✅ WooCommerce (latest)
  • ✅ PayPal Payments plugin v4.2.0-pr4790-38545357275-g52982ac (built from this PR)

Login credentials:

  • Username: admin
  • Password: password

Plugin Details:

  • Version: 4.2.0-pr4790-38545357275-g52982ac
  • Commit: ff16d73
  • Artifact: woocommerce-paypal-payments-4.2.0-pr4790-38545357275-g52982ac

💡 The demo environment resets each time you refresh. Perfect for testing!

🔄 This link updates automatically with each new commit to the PR.

⚠️ This URL is valid for 30 days from when this comment was last updated.


🤖 Auto-generated for commit ff16d73 • Last updated: 2026-10-14T09:54:18.971Z

@Dinamiko
Dinamiko merged commit 02f6467 into dev/release/4.2.0 Oct 15, 2026
13 checks passed
@Dinamiko
Dinamiko deleted the dev/PCP-7032-fix-pay-now-in-v6 branch October 15, 2026 14:37
@InpsydeNiklas InpsydeNiklas added this to the 4.2.0 milestone Oct 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working v6 SDK

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants