Payment program plans

A Payment Program Plan is a configuration defined and owned by Klarna. It determines which Payment Programs are available for a transaction based on the transaction merchant category code (MCC) and the consumer’s country.

A Payment program plan acts as the matrix that maps MCC and consumer country combinations to the Payment programs available for those transactions. Each Acquiring Partner has one Payment program plan. Partners cannot modify the plan, but they can enable discretionary Payment programs when the plan allows it and the enablement criteria are met.

Relationships & dependencies

graph PAY_PROGRAM_PLAN(Payment Program Plan) PAY_PROGRAM(Payment Program) PAY_ENABLE(Payment Program Enablement) PAY_PROFILE(Payment Profile) PRICE_PLAN(Price Plan) TRANSACTION(Payment Transaction) PAY_PROGRAM_PLAN -->|n..n| PAY_PROGRAM PAY_PROGRAM -->|1..n| PAY_ENABLE PAY_PROFILE -.->|defines configuration for| TRANSACTION PAY_PROFILE --> |n..1| PRICE_PLAN PAY_PROFILE -->|n..1| PAY_PROGRAM_PLAN class PAY_PROGRAM_PLAN primaryEntity

A Payment program plan is associated with the following resources:

  • Payment Profile – defines the configuration used when evaluating transactions.
  • Price Plan – defines the pricing structure applied to Payment transactions.
  • Payment Program – the commercial category used for settlement.
  • Payment Program Enablement – created by a Partner to enable discretionary Payment programs when allowed by the plan.
  • Payment Transactions – evaluated against the plan to determine the applicable Payment programs.

Resource properties

A Payment program plan includes the following properties:

PropertyDescription
idUnique identifier for the Payment program plan.
versionThe version number assigned to the plan. Klarna increments this for breaking changes.
effective_fromThe date when the plan version becomes active.
effective_toThe date when the plan version stops being active. May be null.

Use the listPaymentProgramPlansAPI operation to retrieve all versions of the Payment program plan assigned to your Acquiring Partner.

Lifecycle

Klarna creates and maintains all Payment program plans. Partners can only read plan versions.

  • Klarna releases a new version only for breaking changes.
  • Each version defines its own effective_from and effective_to dates.
  • Partners are automatically migrated to the active version on its effective_from.
  • Discretionary Payment programs are enabled through Payment Program Enablements, not by modifying the plan.

State machine

flowchart LR V1[Plan version created] --> A[Active] A -->|New breaking version released| N[Next version created] N --> A2[Becomes active on effective_from] A2 -->|Previous version expires| E[Expired] classDef node fill:#F8F7FA,stroke:#C7C7CC,color:#282829,rx:8,ry:8

Frequent use cases

Retrieve all plan versions

Use listPaymentProgramPlansAPI to retrieve the full history of Payment program plan versions, including past, active, and upcoming versions.

Retrieve Payment programs for a specific plan

After identifying the active plan version, use listPaymentProgramsForPaymentProgramPlanAPI to retrieve all Payment programs included in that version.

Read Payment program details

Use readPaymentProgramAPI to retrieve attributes such as the display name and funding type.

Note: Payment program names may change over time and shouldn’t be used as stable identifiers.

Related articles

Payment Profiles

Price Plans

Payment Program enablement

API & SDK references

API