Klarna – recurring payments (v2)
In the beginning of 2021 Klarna will retire their old Klarna Checkout v2 (KCOv2) and Klarna Payment Gateways (KPM). The plugins we here at Krokedil have developed replaces those old plugins.
You can read more about this in the post Klarna retires the v2 platform.
Klarna Checkout is compatible (in Sweden, Norway and Finland) with the WooCommerce Subscriptions extension for handling of recurring payments.
To get started with recurring payments via Klarna in your WooCommerce store, you will need the following:
- An agreement with Klarna to handle recurring payments (via Klarna Checkout).
- The extension WooCommerce Subscriptions installed and configured.
- The Klarna Checkout setting Create customer account needs to be checked/activated. This is because all subscriptions need to be connected to a customer account.
- In the WooCommerce Account settings (–> WooCommerce –> Settings –> Accounts) the checkboxes Automatically generate username from customer email and Automatically generate customer password needs to be checked so new customer accounts can be created.
Get started with subscriptions
- Create a simple subscription product. Set it to a daily renewal so that we can test the renewal process as well.
- Make a test purchase (either with a real account or a test account).
- Make sure that:
– The subscription order is created in both Klarna and WooCommerce.
– A Klarna reservation number is added to the order notes in WooCommerce.
– The subscription status is set to Active in WooCommerce.
- Wait 24 hours and check that the renewal order is created, a new reservation number from Klarna is added to the order notes in the renewal order and the subscription is set to Active again.
Don’t have time to wait for the renewal to be triggered?
You can also change the date and time for Next payment in the subscription and set it to an earlier time than 24 hours if you don’t want to wait that long.
- Navigate to the subscription (→ WooCommerce → Subscriptions) you want to test.
- In the right column you should see a box named Billing Schedule.
- Click the date field of the Next Payment section. A calendar is now displayed where you can select todays date. The nearest time you can set the renewal to be triggered is 1 hour in the future.
- Wait 1 hour for the renewal to be triggered and then make sure the renewal and subscription behaves as explained in the Get started with subscriptions section.
In the Klarna Checkout settings there is a checkbox called Automatically activate recurring orders. When this setting is activated, renewal orders in WooCommerce will automatically activate the reservation/invoice in Klarnas system.
If this setting isn’t activated, the reservation/invoice is activated when the order status of the renewal order is set to Completed (assuming you have activated Klarna order management in the KCO settings).
Failed renewal orders
If a renewal order is denied in Klarnas system the subscription will be set to On hold. Information about the reason why the renewal failed will be added as an order note in the renewal order.
- The most common reason is error code 402, where the payment has been denied by Klarna because of expired/missing funds on card or the customer has been denied for invoice payment.
- Detailed info about what’s been sent to Klarna and the respons from Klarna on a failed renewal payment is also added as post meta filelds klarna_subscription_error_info_1 (the basic Klarna recurring order object), klarna_subscription_error_info_2 (the customer & order data sent to Klarna) and klarna_subscription_error_info_3 (the respons from Klarna) in the order.
No subscription is being created. When a customer signs up there is only a regular order created.
This is usually happening because a new customer account wasn’t created. The most common reason for this is that the account settings described in the Requirement section isn’t configured correctly.
No renewals are triggered at all
This is usually because you are working in a staging/test environment. WooCommerce Subscriptions have a built-in feature that determine if your installation is a production site or a staging site. From the staging site no renewals are being triggered. Read more about how WooCommerce Subscriptions handle staging sites and migrations here.