KlarnaInteroperability: {
    resolve(
        context: InteroperabilityContext,
        options: InteroperabilityOptions,
    ): InteroperabilityResponse;
}

Interoperability refers to the ability of Klarna's full product suite to work seamlessly across multiple integration paths.

To use Interoperability the resolve API should be called using the token provided by the Partner:

 const interoperability = await Klarna.Interoperability.resolve({
interoperabilityToken: "[received_interoperability_token]",
merchantReference: "[merchants_order_reference]",
platformReference: "[platforms_order_reference]",
}, {
country: "SE",
currency: "SEK",
paymentAmount: 10000
})

Once interoperability data is received, it can be used to determine the next steps in the payment flow

switch (interoperability.status) {
case "PAYMENT_PENDING_CONFIRMATION":
// Confirm Klarna payment immediately, otherwise, display and
// select Klarna as a primary payment method
break;
case "PAYMENT_PREPARED":
// Display and select Klarna as a primary payment method
break;
case "PAYMENT_UNSUPPORTED":
// Don't show a Klarna button or offer Klarna
break;
case "PAYMENT_SUPPORTED":
default:
// Display Klarna as a payment method
break;
}

Type declaration