This plugin brings Shopify’s Shop Pay Wallet to your store. Shoppers get a fast, familiar “Buy with Shop Pay” button – both as an express button above the cart/checkout form, and as a normal entry in your payment method list – that opens Shop Pay’s own hosted payment sheet and completes the purchase without leaving your store’s checkout flow.
How it works
The plugin builds a live payment request from the WooCommerce cart (line items, discounts, shipping options, tax) and keeps it in sync with Shop Pay’s payment sheet in real time as the shopper changes their shipping address, delivery method, or discount code. As soon as the shopper submits payment, the plugin creates the matching WooCommerce order immediately – correctly reflecting the price, discount, shipping method, and customer account, exactly as shown in the payment sheet – the same way a normal WooCommerce checkout creates an order before payment is confirmed.
Reliability
Shop Pay’s own payment confirmation is asynchronous: submitting a payment successfully does not, by itself, guarantee the charge will actually be approved. Because of this, the plugin never marks an order as paid purely from that initial response – the order stays at Pending payment immediately after submission, and only Shopify’s own order-creation webhook – which reports the charge’s real, final status – moves it to Processing. If that webhook is delayed or misconfigured, the plugin also emails the store admin so nothing is missed silently. Setting up the webhook (see Installation) is strongly recommended – without it, successful orders will not automatically progress past “Pending payment”.
Note: because the order remains in WooCommerce’s standard “Pending payment” status rather than “On hold”, it is subject to your store’s own “Hold stock (minutes)” setting (WooCommerce > Settings > Products > Inventory), which can automatically cancel pending orders – and release their reserved stock – after that time period. If your webhook is ever significantly delayed, a genuinely-paid order could be auto-cancelled before confirmation arrives; consider setting a generous hold-stock window if this matters for your store.
Requirements
Shop Pay Wallet requires a Shop Pay/Shopify account with Shopify Payments active, separate from your WooCommerce store – this plugin connects to it via Shopify’s Storefront API. You’ll need:
- A dedicated Shop Pay account with Shopify Payments approved for your business
- Your Shop ID, Client ID, myshopify.com handle, and a Storefront API access token (all obtained from your Shop Pay admin – see Shopify’s Shop configuration guide)
- A webhook signing secret from Shopify admin – required for orders to automatically progress from “Pending payment” to “Processing” once payment is confirmed
- (Optional) a prefix for Shopify order names (e.g. “NZ”), so a WooCommerce order number and its corresponding Shopify order are easy to tell apart at a glance
Third-party service disclosure
This plugin loads Shop Pay’s JavaScript SDK directly from Shopify’s CDN (cdn.shopify.com) on the cart and checkout pages, so the “Buy with Shop Pay” button can render – this happens as soon as either page loads, not only after a click. No cart, checkout, or customer data is sent to Shopify until a shopper actively opens the Shop Pay checkout; from that point on, the plugin sends cart and checkout data (product details, pricing, shipping selection, and – once payment is confirmed – the buyer’s billing/shipping details) to Shopify’s Storefront API in order to process the payment. See Shopify’s Privacy Policy and Terms of Service for how Shopify handles this data. “Shop Pay” is a trademark of Shopify Inc.; this plugin is an independent, unofficial integration and is not produced, endorsed, or supported by Shopify.
Known limitations (v1)
- Supports a single shipping package per order (most WooCommerce stores). Orders that split into multiple shipping packages are not yet supported.
- Refunds and order capture are handled through your existing WooCommerce/Shop Pay admin workflows – this plugin does not yet automate refund sync between the two.
Screenshots

Express "Buy with Shop Pay" button on the cart page.

Shop Pay as an entry in the WooCommerce payment method list.

The Shop Pay payment sheet, synced live with the WooCommerce cart.

Plugin settings screen.