• Resolved roycedigital

    (@roycedigital)


    Hi,

    we are currently experiencing a problem with the translation of the PayPal button in your plugin.

    We have set the button label to “PayPal Buy Now”. On our German checkout, it is displayed correctly on mobile as “PayPal Jetzt kaufen”. However, on desktop it still shows up as “PayPal Buy Now” instead of the German translation.

    Everything is up to date (plugin, theme, and WordPress). Since it is legally important for us that the button is displayed in German as “PayPal Jetzt kaufen”, we kindly ask for your support. Could you please let us know what the reason might be and how we can fix this issue?

    Thank you very much in advance!

    Regards

    Julia

    The page I need help with: [log in to see the link]

Viewing 7 replies - 1 through 7 (of 7 total)
  • Plugin Support Krystian Syde

    (@inpsydekrystian)

    Hello @roycedigital

    The plugin itself does not use different logic for mobile and desktop. The PayPal SDK initializes in the same way on both, which suggests the problem is related to caching or how the locale setting is passed to the SDK. Can you please confirm if the German button translation is selected in your settings? In the new UI, you can find this under Settings → Button language → German. On my test site, the translation switches instantly once this setting is applied.

    If the correct language is already set, I would recommend clearing all caches, any server-side caching plugin or service you may be using, like Cloudflare and etc.

    To investigate further, please share your system status report with us by following these steps:

    1. Navigate to WooCommerce → Status in your site’s admin panel.
    2. Click on Get system report and then Copy for support.
    3. Paste the report into our PrivateBin.
    4. Share the link here so we can review the details thoroughly.

    We are waiting for your system report to continue the analysis.

    Kind Regards,
    Krystian

    Thread Starter roycedigital

    (@roycedigital)

    thank you for your quick reply and the suggested solution. Setting the language to German solved the issue for the German checkout on desktop version – the button is now displayed as “PayPal Jetzt kaufen”.

    However, on the English checkout, the button is now also shown as “PayPal Jetzt kaufen” instead of “PayPal Buy Now”.

    Is there a way to make the button switch depending on the selected checkout language, so that it shows “PayPal Jetzt kaufen” on the German version and “PayPal Buy Now” on the English version?

    Thank you very much for your support!

    Plugin Support Krystian Syde

    (@inpsydekrystian)

    Hello @roycedigital

    What you are experiencing is expected, because the plugin currently applies one global language setting for the PayPal button. If you want the button text to automatically switch depending on the checkout language, you can use the following filter:

    add_filter( 'woocommerce_paypal_payments_smart_buttons_locale', 'dynamic_paypal_button_language' );
    
    function dynamic_paypal_button_language( $locale ) {
        // Get the current WordPress locale
        $current_locale = get_locale();
        
        // Map WordPress locales to PayPal locales
        switch ( $current_locale ) {
            case 'de_DE':
            case 'de_CH':
            case 'de_AT':
                return 'de_DE'; // German - shows "PayPal Jetzt kaufen"
            case 'en_US':
            case 'en_GB':
            default:
                return 'en_US'; // English - shows "PayPal Buy Now"
        }
    }
    

    This makes the PayPal button language follow the site’s current locale. If you are using a multilingual plugin like MultilingualPress, WPML, or Polylang, get_locale() will automatically reflect the active language, so the button will display “PayPal Jetzt kaufen” on German checkout and “PayPal Buy Now” on English checkout.

    Please add this code either to your theme’s functions.php file or to a custom plugin.

    Let us know if this resolves it for you.

    Kind Regards,
    Krystian

    Thread Starter roycedigital

    (@roycedigital)

    thank you so much for your fast help. It works perfect 🙂

    Regards

    Julia

    Plugin Support Krystian Syde

    (@inpsydekrystian)

    Hello @roycedigital

    Glad it’s solved. Happy to help!

    If this solution helped and you’re happy with the support, feel free to leave a quick review on WordPress — it means a lot to us and shows that we are needed.

    Kind regards,
    Krystian

    Thread Starter roycedigital

    (@roycedigital)

    Hi,

    The Pay Later option still shows up as “Später zahlen” on the English checkout as well.

    Could you please provide a solution or code snippet so that Pay Later is shown in English on the English checkout? And on german checkout “Später Bezahlen”.

    Thanks a lot.

    Plugin Support Krystian Syde

    (@inpsydekrystian)

    Hello @roycedigital

    It is not possible to change this. While the Smart Button language can be dynamically overridden with the snippet I shared earlier, the Pay Later messaging works differently. It is provided directly by PayPal through their SDK and rendered dynamically from their servers. This means the text cannot be overridden by the plugin or with custom code.

    PayPal determines the Pay Later language and offer based on its own logic, mainly relying on IP location. In simple terms, Pay Later adapts to the buyer’s region:

    • A user connecting from DE on a DE site will see “Jetzt kaufen” and “Später zahlen.”
    • A user connecting from the US on a US site will see “PayPal” and “Pay in 4.”
    • A user connecting from Spain on a DE site still sees the German Smart Button, but Pay Later will be shown as “Paga a plazos.”

    I know this can feel confusing, but there is a clear logic behind it, and unfortunately, it cannot be manipulated the same way as the Smart Buttons.

    Kind Regards,
    Krystian

Viewing 7 replies - 1 through 7 (of 7 total)

The topic ‘Button Buy Now Translation’ is closed to new replies.