Klarna is a sweedish based e-commerce company that provides payment services for online stores. When a purchase is completed, Klarna will pay the merchant instantly, but will bill the acquirer upon receiving the goods.
Klarna allows the user to pay only with an email address and a delivery address - no password. They operate in Sweden, Norway, Denmark, Germany, Netherlands, Finland, United Kingdom, Austria and United States.
Klarna is available for Professional accounts.
How does it work for the user?
After checkout, the customer must only insert email, zip code and a billing address. For returning customers it’s a one tap payment experience: the system will recognize you and will avoid to reintroduce sensitive data. This has prooved to be effective especially with mobile payments.
How do I activate it on Gestpay?
Contact Gestpay support to add Klarna to your payment options.
Klarna requires you to accept their terms and conditions, and they will also perform some tests to verify that the User Experience is ok.
If you satisfy these requirements, you will finally be able to use Klarna with Gestpay.
Klarna permits to authorize a payment and settle it in max 14 days. This is different from the default Gestpay behaviour of 25 days.
How do I use it on Gestpay?
If you want to use the
paymentType tag for this method, the value to use is
S2PKLA. See the section How to redirect the customer to a payment method to learn how to use the
Please refer to the API section on how to use Klarna on Gestpay.
Some clarifications on mandatory fields
To work with Klarna, there are some mandatory parameters, children of
- The list of bought
BillingAddressfields, as specified in the next section.
1. Billing Details specification
Based on the buyer’s country, you might need to set fields differently.
- DE: you have to send
- NL: you have to send
- All other countries (
AT | DK | FI | NO | SE) require
Some exception apply to DE and NL Countries:
- If the shipping address is different than the billing address, then
Shippingneeds to be sent in the request too, with full details, otherwise the transaction will be rejected.
- Only some details from shipping/billing can be added on Klarna’s page:
Billing Addressis not complete: only
House Numberare editable for Billing address
Billing Addressis not complete &
Shippingis different and incomplete: only
House Numberare editable for both Billing and Shipping.
2. Optional details
The remaining data, besides product & billing details, should be sent in full (ie: customer FirstName; customer LastName; phone, email address, social security number). However, these details can be added on Klarna’s page if not sent by Merchant.
3. Handling Failure on Klarna page
If the phone is not sent in the request and if on Klarna the customer enters incorrect details for this parameter, the customer will be redirected to the Failed page, without the possibility to re-enter the phone details. This does not apply for sandbox environment.
Credentials for test environment
Ask Gestpay customer support to enable Klarna in test environments.
You can use the following parameters value in order to test Klarna in test (testecomm.sella.it) environment. Use low amount like 10.00 EUR. Remember to set the mandatory fields:
BillingAddress.CountryCode = 'SE'
When landing of Klarna payment page use the following parameter to fill the field or send it directly in the parameters like as described above in order to have a successful test payment:
Here are the same values in a better copy-and-paste format:
- Personal Number:
- First Name:
- Last Name:
- Zip Code:
- Phone Number:
This Partial reversal operation is available if merchants using Klarna Alternatives Payment with the Payment Page.
Klarna payment is only available using
Encrypt and the Payment Page; it is not available with Server-to-Server calls. However, the Klarna Partial Refund operation is exposed via Server-to-Server API.
From the Merchant Back-Office it’s possible to do a Klarna total refund, but not a partial refund. Partial refunds are available via
CallRefundS2S; This function allows the merchant to partially reverse an unsettled Klarna transaction.
Klarna needs the product details of the refund, and to do this Merchants must add some additional fields of order details.
For the partial Refund Klarna need mandatory fields like
Quantity present in the
For example, if you do a call to
Encrypt) with this
<Encrypt> <!-- total, shop login, currency, etc removed for clarity... --> ... <!-- in this example, the buyer is buying two products --> <paymentTypes> <paymentType>S2PKLA</paymentType> </paymentTypes> <OrderDetails> <ecom:ProductDetails> <!-- product 1 --> <ecom:ProductDetail> <ecom:ProductCode>1</ecom:ProductCode> <ecom:SKU></ecom:SKU> <ecom:Name>aaa</ecom:Name> <ecom:Description></ecom:Description> <ecom:Quantity>1</ecom:Quantity> <ecom:Price>5</ecom:Price> <ecom:UnitPrice></ecom:UnitPrice> <ecom:Type>1</ecom:Type> <ecom:Vat>10</ecom:Vat> <ecom:Discount>0</ecom:Discount> </ecom:ProductDetail> <!-- product 2 --> <ecom:ProductDetail> <ecom:ProductCode>2</ecom:ProductCode> <ecom:SKU></ecom:SKU> <ecom:Name>bbb</ecom:Name> <ecom:Description></ecom:Description> <ecom:Quantity>1</ecom:Quantity> <ecom:Price>5</ecom:Price> <ecom:UnitPrice></ecom:UnitPrice> <ecom:Type>1</ecom:Type> <ecom:Vat>10</ecom:Vat> <ecom:Discount>0</ecom:Discount> </ecom:ProductDetail> </ecom:ProductDetails> </OrderDetails> </Encrypt>
You can refund partially the transaction with sending
CallRefundS2S, like this:
<eco:callRefundS2S> <!-- shopLogin, amount, and other data as usual... --> ... <eco:OrderDetail> <ecom:ProductDetails> <!-- we are refunding product n.2 --> <ecom:ProductDetail> <ecom:ProductCode>2</ecom:ProductCode> <ecom:SKU></ecom:SKU> <ecom:Name>bbb</ecom:Name> <ecom:Description></ecom:Description> <ecom:Quantity>1</ecom:Quantity> <ecom:Price>5</ecom:Price> <ecom:UnitPrice></ecom:UnitPrice> <ecom:Type>1</ecom:Type> <ecom:Vat>10</ecom:Vat> <ecom:Discount>0</ecom:Discount> </ecom:ProductDetail> </ecom:ProductDetails> </eco:OrderDetail> </eco:callRefundS2S>