Klarna Docs - Server-side only integration
Server-side only integration

Learn how to offer Klarna as a payment method through a fully server-side integration, giving you and your partners complete control over the checkout experience and user interface.

This guide is designed for Acquiring Partners who provide server-side-only integration options to their Partners, allowing them to build and host their own custom payment forms while retaining control over the checkout page's look and feel.

In this model, the Partner typically uses the Acquiring Partner's APIs to:

  • Retrieve a list of available payment methods.
  • Obtain a Klarna payment URL for redirecting the customer.

To support Klarna in this setup, Acquiring Partners are expected to:

  • Provide clear, high-quality technical documentation to ensure that Partners correctly follow Klarna’s presentation guidelines when building their payment forms.
  • Review the implemented customer experience thoroughly to verify compliance with Klarna’s requirements for displaying and promoting Klarna Payment Services.
  • Allow Partners to submit interoperability data points and ensure these are handled according to Klarna’s interoperability standards.
  • Support Klarna’s Step-Up flow, which may be triggered during payment authorization for additional customer verification.
  • A server-side API that Partners can use to request a Payment with Klarna.
  • A payment server to initiate requests to Klarna’s Payment Authorize API.
  • A webhook listener to receive and process Klarna’s asynchronous payment status updates.
  1. The customer navigates to the Partner’s checkout page.
  2. The Partner displays a payment selector to the customer, with Klarna listed as a payment method. This can be implemented using one of the following approaches:

    • Retrieve the Payment Presentation instructions directly from Klarna.

    • Obtain a list of supported payment methods and descriptors from the Acquiring Partner (if available).
  3. The customer selects Klarna as the preferred payment method and clicks the Klarna Payment button.
  4. The Partner initiates a payment session with the Acquiring Partner. The Acquiring Partner must support one of the following modes to launch the Klarna Purchase Journey:

    • Redirect Mode: Returns a Klarna payment URL for the Partner to redirect the customer.

    • SDK Mode: Returns a Klarna Payment Request ID for the Partner to initiate the purchase flow using Klarna’s SDK.
  5. The Acquiring Partner calls Klarna’s Payment Authorize API, forwarding the interoperability data points provided by the Partner.

    • Happy Path: The payment transaction is successfully created, and the Partner redirects the customer to the order confirmation page.

    • Step-Up Required: The Acquiring Partner returns either a Klarna payment URL or a Payment Request ID for the Partner to launch the Klarna Purchase Journey.
  6. (If Step-Up is Required) The Acquiring Partner monitors the status of the Klarna payment asynchronously using Webhooks.
  7. (If Step-Up is Required) Upon successful completion of the Klarna purchase journey, the Acquiring Partner calls Klarna’s Payment Authorize API again to create the final payment transaction.
sequenceDiagram autonumber participant C as Customer participant P as Partner participant AP as Acquiring Partner participant K as Klarna C->>P: Visit checkout page alt Partner integrates Klarna SDK directly P->>K: Request Klarna payment presentation Note over P,K: Share interoperability data points else Partner uses Acquiring Partner APIs P->>AP: Request available payment methods Note over P,AP: Share interoperability data points AP->>K: Request Klarna payment presentation Note over AP,K: Share interoperability data points end P->>P: Display payment selector C->>P: Select Klarna and click Pay button P->>AP: Create payment session Note over P,AP: Share interoperability data points AP->>K: Authorize payment (initial) Note over AP,K: Share interoperability data points alt Step-up required K->>AP: Return payment request for step-up Note over K,AP: Klarna payment URL and request ID AP->>P: Return payment session Note over P,AP: Forward Klarna payment URL and request ID P->>P: Launch Klarna purchase journey C->>K: Complete purchase on Klarna K->>AP: Webhook notification Note over K,AP: Payment request completed AP->>K: Authorize payment (final) K->>AP: Payment APPROVED AP->>P: Webhook notification Note over P,AP: Order completed AP->>C: Redirect to confirmation page else Transaction approved K->>AP: Payment APPROVED AP->>P: Respond with approval Note over P,AP: Order completed P->>C: Redirect to confirmation page else Transaction declined K->>AP: Payment DECLINED AP->>P: Respond with decline Note over P,AP: Payment declined P->>C: Redirect to checkout page Note over C,P: Display error message to customer end
  1. Partner builds the payment form
  2. Accept interoperability data points from the Partner
  3. Listing Payment Methods available for a payment (optional)
  4. Initiation of the payment with Klarna: First authorization
  5. Handle step-up scenario
  6. Monitor the payment request
  7. Final authorization (if step-up flow)