Create Payment Program Enablement

Create a Payment Program Enablement allows Acquiring Partners the instant activation of discretionary Payment Programs for their Partners, such as Financing 0% APR with no additional manual review process.

Overview

Payment Program Enablement refers to the process by which a Partner enables a discretionary Payment Program that is not enabled by default, such as Financing 0% APR.

Payment Program Enablement includes attributes such as merchant category codes, customer countries and Payment Program enablement code. This will allow support for enabling options only for a specific customer country or with a specific promotional code. For example, a Partner might want to enable Financing with 0% APR for customers using a Black Friday promotional code.

Learnings:

Most Klarna Payment Programs are enabled by default and Sub-partners receive these automatically or can enable them via the Payment Programs API.

However, there is a subset of Restricted Payment Programs that require additional approval. For example, Financing in the UK, which requires Klarna or the Acquiring Partner to manually verify the partner’s Financial Conduct Authority (FCA) licence.

To enable these Restricted Payment Programs, a request must be raised through your Klarna Business Developer or Partner Support.

Prerequisites

Step-by-step

Step 1: Create a Payment Program Enablement

To enable an optional or discretionary Payment Program, Acquiring Partners must create a Payment Program Enablement on behalf of their Partners by using the createPaymentProgramEnablementKlarna Icon request.

For this request, the payment_program_id must be provided and can be retrieved from the listPaymentProgramsForPaymentProgramPlanKlarna Icon endpoint.

Enabling a Payment Program via API is instant and requires no manual review process.

For example, to enable Financing 0% APR with a 12-month duration for customers based in Sweden, you would implement the following request.

Sample request

JSON
  "payment_program_id": "krn:network:global:all:payment:payment-program:e7eb676e-cc4b-4e7a-902a-35a1186b8024",
  "enablement_criteria": {
    "customer_countries": [
      "SE"
    ],
    "merchant_category_codes": [
      "0742"
    ]
  }
} 

Sample response

JSON
  "payment_program_id": "krn:network:global:all:payment:payment-program:e7eb676e-cc4b-4e7a-902a-35a1186b8024",
  "payment_program_enablement_id": "krn:network:global:test:payment:payment-program-enablement:53e38cdd-0711-4c65-9152-121758bb4657",
  "enablement_criteria": {
    "customer_countries": [
      "SE"
    ],
    "merchant_category_codes": [
      "0742"
    ]
  }
} 

Restricted Payment Programs, such as Financing in the UK, can only be enabled by Klarna. To raise a request, please contact your Klarna Business Developer or Partner Support 🇬🇧 .

Step 2: Delete a Payment Program Enablement (Update coming soon)

To disable an optional Payment Program, Acquiring Partners can delete the previously created Payment Program Enablement by using the deletePaymentProgramEnablementKlarna Icon endpoint.

Deleting a Payment Program Enablement via API is instant and requires no manual review process.

Endpoint to "Update a Payment Program Enablement" will be available in a future release. Until then, if you want to update any configurations for an existing Payment Program Enablement, you need to delete it and create a new one with the new configurations you need.

Step 3: List all Payment Program Enablements for your Partner

Using listPaymentProgramEnablementsKlarna Icon endpoint will return a history of all previously created Payment Program Enablements for a specific Partner Account ID.

The response may contain past, current and future Payment Programs Enablements. If you haven't sent a createPaymentProgramEnablementKlarna Icon request before for the specific Partner Account, the response would be empty.

Sample request

GET /v2/accounts/{partner_account_id}/products/payment/payment-programs/payment-program-enablements

Sample response

JSON
  "payment_program_enablements": [
    {
      "payment_program_id": "krn:network:global:all:payment:payment-program:11cb810d-109e-4a5c-bf2d-0f50ccff779c",
      "payment_program_enablement_id": "krn:network:global:test:payment:payment-program-enablement:d6a6f5fb-657a-4a4f-bc1e-9ba6f027e14d",
      "enablement_criteria": {
        "customer_countries": [
          "DE"
        ],
        "merchant_category_codes": [
          "0742"
        ]
      }

Testing

Use your test environment to validate create Payment Program Enablement flow:

  • Send a create Payment Program Enablement request with valid data and confirm a 2xx response.
  • Verify that the newly created Payment Program Enablement Id is available on List all Payment Programs Enablements.
  • After **15 minutes** (the time it takes for internal Klarna caches to refresh), verify that the enabled Payment Program is available for the Partner Account on their checkout.

Troubleshooting

Common HTTP responses

  • 400 Bad Request: Required field missing, type mismatch or general invalid field.
    • Action: Fix the payload and retry with the same Klarna-Idempotency-Key.
  • 5xx Server Error: Internal Server Error
    • Action: Retry with exponential backoff and the same Klarna-Idempotency-Key.