We are integrating Google Pay via Paypal Checkout. We want the following flow:
Payment Request Dialog -> user authorizes payment amount -> show order review page -> user places order -> capture payment amount
The problem
The label of the main button in the payment sheet dialog always says "Pay" (German: Bezahlen) instead of "Continue" (German: Weiter).
This is the code (we are using the web component, the cgf
is some basic config coming from Paypal that we just pass on to the paymentRequest
). We are handling more callbackIntents
than shown here, but this is just the MVP that should work:
btn.onPaymentAuthorized = (data) => { console.log("auth", data) }btn.onLoadPaymentData = (paymentData) => { console.log("load", paymentData) }btn.buttonType = "checkout"btn.buttonLocale = "de"btn.paymentRequest = { apiVersion: cfg.apiVersion, apiVersionMinor: cfg.apiVersionMinor, merchantInfo: cfg.merchantInfo, allowedPaymentMethods: cfg.allowedPaymentMethods, callbackIntents: ["PAYMENT_AUTHORIZATION"], transactionInfo: { countryCode: cfg.countryCode, currencyCode: "EUR", totalPrice: "19.99", totalPriceStatus: "ESTIMATED", // <-- should set button label to "Continue" }}
And this is what it renders:
The docs
According to the docs, we can set CheckoutOption to COMPLETE_IMMEDIATE_PURCHASE so that users view a Pay button instead of a Continue button within the Google Pay selector.
By default the CheckoutOption is set to DEFAULT and depends on the totalPriceStatus status.
Since our totalPriceStatus
is ESTIMATED
, I would expect to see a Continue
button as described above, but instead it always says Pay
no matter what.
The question
Could this be a translation / i18n issue? Or am I just missing something?
Further context
Since we are based in Germany, we are legally required to display specific information (such as a Terms of Service link) alongside the submit button that initiates a payment. Additionally, there are strict regulations on how that button can be labeled. Because we cannot control these aspects within the payment sheet, we are unable to complete the purchase directly from there. Instead, we must redirect to a review page to display all the necessary information.
Furthermore, UX guidelines suggest adding the Google Pay button to the product page. However, due to GDPR regulations, this is not feasible without the user's consent.