Recurring payments

Recurring payments

Klarna Payments is compatible with the WooCommerce Subscriptions extension for handling of recurring payments.

Please note that Klarna supports subscriptions only for some regions. Please check with Klarna merchant support for supported regions.


Requirements


To get started with recurring payments via Klarna in your WooCommerce store, you will need the following:

  • Your Klarna Payments MID needs to be configured to enable recurring payments. Get in touch with Klarna to activate this feature, your Klarna account/MID does not support recurring payments by default.
  • The extension WooCommerce Subscriptions installed and configured.

Get started with subscriptions


  1. Create a simple subscription product. Set it to a daily renewal so that we can test the renewal process as well.
  2. Make a test purchase (either with a real account or a test account).
  3. Make sure that:
    1. The subscription order is created in both Klarna and WooCommerce.
    2. A Klarna reservation number is added to the order notes in WooCommerce.
    3. A Klarna recurring token is added to the Subscription.
    4. The subscription status is set to Active in WooCommerce.
  1. 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?


There are couple of options to avoid waiting 24 hours for a renewal to be triggered.

The fastest way is the Process renewal action

  1. Navigate to the subscription (→ WooCommerce → Subscriptions) you want to test.
  2. In the right column you should see a box named Subscription actions.
    Choose Process renewal and click Apply.

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.

  1. Navigate to the subscription (→ WooCommerce → Subscriptions) you want to test.
  2. In the right column you should see a box named Billing Schedule.
  1. 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.
  2. 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.

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. Information about possible error codes can be found in this Common error codes from Klarna article.

Failed payment flow

If a renewal payment fails, the customer will receive an email with the following subject line  Invoice for renewal order #… The content of this email looks like this:

By clicking the Pay now link, the customer is redirected to the checkout page to pay for the order and re-activate their subscription.

After the customer have finalized the purchase, the subscription is set to Active again and the Subscription notes will look similar to this:

In general failed renewal payments with a 4xx error code should be treated as a failed payment where the customer need to take action and click the Pay now link in the email to re-activate their subscription.


Change the recurring token


In some cases you might need to change or add the Klarna recurring token. This can be done by navigating to the specific subscription and clicking on the pen icon next to the Billing address data.

When you have changed the data in the input field, remember to click on the Update button in the top right meta box.


Update payment method from My account page


If the customer wants to change the payment method selected in KP for the subscription, they can login to My account and then navigate to the subscription. From this view they can click the Change payment button.

  • This will send the customer to the checkout page where Klarna Payments is selected again as the payment method.
  • By clicking on the Change payment method button the customer is redirected to a Pay for order page. However, the amount of this order is set to 0.
  • Finally the customer is redirected back to the subscription page and can se a notice about the subscription payment method being updated.

Automatic Payments


WooCommerce Subscriptions offers two methods for accepting recurring payments:

  • Automatic payments
  • Manual payments

To understand the difference between the two methods, read Subscription Renewal Process before continuing.

Klarna Payments is part of the official WooCommerce marketplace and support automatic recurring payments.

Basic Features

Subscription Suspension
Subscription Cancellation
Subscription Reactivation

Advanced Features

Multiple Subscriptions
Recurring total changes
Payment date changes
Customer payment method changes
Store manager payment method changes


“404: Customer token not found”


Unlike what it implies, it doesn’t necessarily mean that the token is missing, but rather that it might be invalid or incorrect.


FAQ


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.

When is a pending subscription created?

A pending subscription is created at the same time as when a pending order is created.

Why does the customer get redirected back to the checkout with an error when I offer a free trial?

If you offer Free trial with subscriptions the customer will keep getting redirected back to the checkout with the error Something went wrong with completing the order. Please try again or contact the store.

You will also find the following in the log REDIRECT ERROR [order_id]: Could not get an order_id from the merchant reference "your-reference.

The reason for this is that you have enabled $0 Initial Checkout in the Subscription settings.

When this setting is enabled, the payment gateway’s process_payment will not be called, which is what we use to store the merchant reference to the Woo order.

Solution: Go to: WooCommerce → Settings → Subscriptions and uncheck $0 Initial Checkout to disable it.