Klarna is available as an alternative payment method using Shopify's new Payments Platform.
Here are steps to integrate to integrate.
Klarna Payments requires name, phone, and email to place most Klarna orders. If the consumer's email is not shared with Klarna upon redirect from Shopify to the Klarna payment page, the consumer will receive an error message from Klarna, and the customer will need to return to Shopify checkout to enter their email. To avoid this error, Klarna recommends that merchants choose Email for the “Customer contact method”, configurable within the store's Shopify admin → Settings → Checkout and accounts → Customer contact method
Klarna requires both first and last name, so verify this at the Customer information configuration setting.
With the new Shopify payments app integration, Shopify does not currently share the consumer's shipping phone number with payment integrations. Shopify will share either (but not both) the email or phone number, whichever the consumer enters in the first single field on the first page of Shopify checkout, (or both fields if the customer is logged into their Shopify account), as shown in the screen shot below. Since a Klarna session can not be started without email, per recommendation above, email should be configured as required in checkout. When email is required, the consumer's phone number may not be shared by Shopify, and Klarna will have to request, via a modal, for the consumer to enter their phone number.
The first Contact Information field for Shopify checkout can be configured either as 'email required' OR 'email or mobile phone number'
Klarna configures the translations for the Klarna payment method. There is one translation per supported language; the translation displayed is not determined by the customer's country or storefront language. The translation used in the store's checkout is determined by the store's single checkout language, which is configurable in the Shopify store admin under Settings->Checkout and accounts->Manage checkout language.
Payment method name | Language |
---|---|
Czech | Klarna - Zaplať ve 3 splátkách |
Danish | Klarna - Betal nu eller senere |
Dutch | Klarna - Betaal nu of betaal later |
English | Klarna - Flexible payments |
Finnish | Klarna - Maksa heti tai myöhemmin |
French | Klarna - Payer maintenant, ou plus tard |
German | Klarna - Sofort oder später bezahlen |
Greek | Klarna - 3 άτοκες δόσεις |
Greek | Klarna - Paga in 3 rate |
Italian | Klarna - Paga in 3 rate |
Norwegian | Klarna - Betal nå eller senere |
Polish | Klarna - Kup teraz, zapłać później |
Portugese | Klarna - 3 pagamentos sem juros |
Spanish | Klarna - Paga a plazos sin intereses |
Swedish | Klarna - Betala nu eller senare |
Note: related Known Constraint that currently payment methods cannot be renamed for Shopify Plus merchants via custom scripts.
(Previous to 2022-July, the payment method name was "Klarna".)
The locale for Klarna Payments hosted payment page will be set based on the store's language concatenated with the customer's billing address country, e.g. English language selected for a customer with a US billing address entered in Shopify checkout would result in a request locale of 'en-US' when Klarna Payments is loaded. If the requested locale is supported by Klarna Payments, per: Available purchase countries, currencies and locales, the locale will be honored. If the locale is not supported, English is used as a fallback.
Locale is not configurable in Klarna; merchants can configure their store's language in their Shopify admin under Settings -> Languages.
One way to check a store's Shopify language is via browser developer tools, e.g. console:
Shopify.locale
Klarna offers an app on the Shopify app store to enable you to easily promote Klarna on your store. The app can be installed from https://apps.shopify.com/klarna-on-site-messaging Additional details about the app available at: On-site messaging app for Shopify
This can now be mitigated using Klarna's On-site messaging app as a companion app with Extended Access.
When the order is placed in Shopify, a payment id is set in the Shopify order Timeline information under the "payment was processed on Klarna." section, within the "Information from the gateway" subsection. This payment id is set in the Klarna order's merchant reference 1 and 2. (Shopify does not share the Shopify order id for this payments app integration for Klarna to be able to associate the Shopify order id or order name in the Klarna order. Additionally, Shopify no longer allows new payments app integrations to set the 'authorization' field on the Shopify order.) Related query about API access for this data: https://help.shopify.com/en/manual/orders/search-view-print-orders#match-third-party-payment-information-with-shopify-orders
Shopify payment id is available in the Payment section Shopify store admin order's Timeline: Information from the gateway.
Shopify payment id is available in the merchant_reference_1 field in the order in the Klarna merchant portal
If your store is Shopify Plus, it may also be helpful to find Klarna orders to run a custom report for orders by payment type (under Analytics -> Reports -> Create custom report, per: https://help.shopify.com/en/manual/reports-and-analytics/shopify-reports/report-types
With "Test mode" active on the Klarna payment method, merchants can place test orders. No actual money is collected or settled by Klarna for test orders.
If you do activate "Test mode" for the payment method, as soon as testing is done, make sure to uncheck "Enable test mode" as Klarna does NOT pay out for test / playground orders ever, even if a live customer places a real order while "Test mode" was checked.
For very limited, very large enterprise Shopify Plus merchants needing to test with a Shopify development store using Klarna test / playground API credentials (not using Klarna live production API credentials), Klarna can support playground testing using a custom app, only with app payment extension approval by Shopify. Each Klarna Test custom app must be manually configured by Klarna, and is associated with only one single development store.
For other merchants, Klarna will continue to work on options to support testing using Klarna's playground environment. Until that is available though, Klarna can be tested using production Klarna API credentials, for one single store at a time, with test mode active.
Shopify restricts all alternative payment methods, such as Klarna Payments, to only process orders in the store’s base currency, as documented at:
“Only Shopify Payments can process payments in a customer's local (presentment) currency. If your customer chooses a payment option from a different payment provider, then their payment is made in the currency of your store.”
See also Known Issue: “Klarna Payments accepts orders only for customer billing addresses in the markets that match the store base currency”.
For Shopify Plus merchants, please also see: “Shopify Plus: custom scripts” section below if you would like to hide Klarna Payments in checkout based on certain cart data.
Shopify does not yet support alternative payment methods, like Klarna, to integrate into Shopify's POS sales channel. Customers in store can still easily pay with Klarna using Shopify draft orders. To do so: