woocommerce / woocommerce-gateway-stripe

The official Stripe Payment Gateway for WooCommerce
https://wordpress.org/plugins/woocommerce-gateway-stripe/
228 stars 201 forks source link

[Klarna] Render the Klarna payments page in the store locale #3087

Open a-danae opened 4 months ago

a-danae commented 4 months ago

Is your feature request related to a problem? Please describe.

By default, the Klarna payments page will be rendered in the billing country’s default locale (for example, en_GB for the United Kingdom). This locale could be different from the store's locale.

As a shopper, I'd expect my whole payment processing flow to use the same locale along the way for a consistent experience.

Describe the solution you'd like

Render the Klarna payments page in the store's locale.

Describe alternatives you've considered

We could leave the current behavior as is.

Additional context API reference - Localizing the Klarna payment page

james-allan commented 4 months ago

I've had a brief look at this but have been unable to get the Klarna payment page to be displayed in my preferred locale.

eg passing these additional args I would expect the payment page to be in German. However it's still presented in English to me. I'm not sure what I'm missing, but I'm going to move on to other higher priority issues but wanted to make this comment in case further clarification is required.

[payment_method_options] => Array
(
[klarna] => Array
(
[preferred_locale] => de-DE
)

)
Screenshot 2024-05-01 at 2 25 12 PM
annemirasol commented 3 days ago

According to Stripe in https://docs.stripe.com/payments/klarna/migrate:

payment_method_options[klarna][preferred_locale] ... [is] validated against the billing details country (for example, fr-FR in the US isn’t a valid combination).

I tested this as well. es-US displays the Klarna page in Spanish, while fr-FR is ignored for the billing country United States.

Here is the table of supported locales per billing country: https://docs.stripe.com/payments/klarna/accept-a-payment?web-or-mobile=web&payments-ui-type=direct-api#supported-locales-and-currencies