Klarna Checkout API
The Checkout API from Klarna — 3 operation(s) for checkout.
The Checkout API from Klarna — 3 operation(s) for checkout.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/klarna-checkout-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
description: Hosted Payment Page (HPP) API is a service that lets you integrate Klarna Payments without the need of hosting the web page that manages the client side of Klarna Payments.
version: '1.1'
title: Klarna HPP Captures Checkout API
license:
name: Klarna Bank AB
servers:
- url: https://api.klarna.com
tags:
- name: Checkout
paths:
/checkout/v3/orders:
post:
summary: Create an order
description: 'To create a new order simply provide a JSON object with the applicable properties.<br>The location of the newly created checkout order can be found in the location header of the response.<br>Please note: This is the url that should be used for future interactions (read and update) with the order, i.e. do not construct the order url based on the order id.'
operationId: createOrderMerchant
parameters:
- name: Klarna-Partner
in: header
required: false
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/order'
responses:
'201':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/order'
'400':
description: We were unable to create an order with the provided data. Some field constraint was violated.
'401':
description: You were not authorized to execute this operation.
x-400:
error_text: 'array|Bad value: order_amount|Bad value: order_tax_amount|Bad value: locale'
correlation_id: 1b4c6bfa-f182-43dd-bde0-6bec32as6cf0
error_code: BAD_VALUE
tags:
- Checkout
/checkout/v3/orders/{order_id}:
post:
summary: Update an order
description: 'To update an order simply provide a JSON object with the properties you want to update. Properties not provided in the request will stay the same.<br>Please note: an order can only be updated when the status is checkout_incomplete'
operationId: updateOrderMerchant
parameters:
- name: order_id
in: path
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/order'
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/order'
'400':
description: We were unable to update an order with the provided data. Some field constraint was violated.
'401':
description: You were not authorized to execute this operation.
'403':
description: You tried to modify a read only resource.
'404':
description: We did not find any order with given ID. You need to create a new order.
x-403:
error_text: array|Resource is read-only
correlation_id: 1b4c6bfa-f182-43dd-bde0-6bec32as6cf0
error_code: READ_ONLY_ORDER
x-400:
error_text: 'array|Bad value: order_amount|Bad value: order_tax_amount|Bad value: locale'
correlation_id: 1b4c6bfa-f182-43dd-bde0-6bec32as6cf0
error_code: BAD_VALUE
tags:
- Checkout
get:
summary: Get order details
description: Get the full details of a Klarna checkout order.
operationId: readOrderMerchant
parameters:
- name: order_id
in: path
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/order'
'401':
description: You were not authorized to execute this operation.
'403':
description: Merchant was not activated.
'404':
description: We did not find any order with given ID. You need to create a new order.
tags:
- Checkout
/checkout/v3/orders/{order_id}/abort:
post:
summary: Abort an order
description: Mark an order as aborted.
operationId: abortOrder
parameters:
- name: order_id
in: path
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
'*/*':
schema:
$ref: '#/components/schemas/order'
'403':
description: You tried to modify a read only resource.
'404':
description: We did not find any order with given ID. You need to create a new order.
tags:
- Checkout
components:
schemas:
discount_line:
type: object
required:
- name
- quantity
- tax_rate
- total_amount
- total_tax_amount
- unit_price
properties:
name:
type: string
example: Super deal
description: Descriptive name of discount
minLength: 1
maxLength: 255
quantity:
type: integer
format: int64
example: 5
description: Non-negative number. Quantity of the discount line item.
minimum: 0
unit_price:
type: integer
format: int64
example: -10000
description: 'Minor units. Includes tax, excludes discount. (Must be non-positive).
Example: -100 Euros should be -10000.'
maximum: 0
tax_rate:
type: integer
format: int64
example: 1000
description: 'Non-negative value. The percentage value is represented with two implicit decimals. (max 10000)
Example: 25% should be 2500.'
maximum: 10000
total_amount:
type: integer
format: int64
example: -2500
description: "Minor units. Includes tax and discount. \n\nExample: -25 euros should be -2500\nValue = (quantity x unit_price).\n(Must be non-positive)"
maximum: 0
total_tax_amount:
type: integer
format: int64
example: -123
description: Must be within �1 of total_amount - total_amount \* 10000 / (10000 + tax_rate). Should be non-positive
reference:
type: string
example: 645f54bb-dbb7-6e1f-83bd-bc81a2c3a258
description: The CRM reference to the gift-card that was entered by the user
minLength: 0
maxLength: 255
merchant_data:
type: string
example: '{"card_number":"5551234567890"}'
description: The gift-card number that was entered by the user
minLength: 0
maxLength: 1024
DeliveryDetailsV1:
type: object
properties:
carrier:
type: string
description: Carrier product name
class:
type: string
description: Type of shipping class
product:
$ref: '#/components/schemas/ProductV1'
timeslot:
$ref: '#/components/schemas/TimeslotV1'
pickup_location:
$ref: '#/components/schemas/PickupLocationV1'
PickupLocationV1:
type: object
properties:
id:
type: string
description: Id
name:
type: string
description: Name of the location
address:
$ref: '#/components/schemas/address'
attachment:
type: object
required:
- body
- content_type
properties:
body:
type: string
example: '{"hotel_reservation_details": [{"pnr": "VH67899","hotel_intinerary": [{"hotel_name": "Hotel ltd.","address": {"street_address": "Storgatan 3","postal_code": "113 35","city": "Stockholm","country": "Sweden"},"start_time": "2019-01-31T15:00:00Z","end_time": "2019-01-31T15:30:00Z","number_of_rooms": 2,"ticket_delivery_method": "email","ticket_delivery_recipient": "jonas.larlsson@klarna.com","hotel_price": 23050,"class": "Business","passenger_id": [1]}],"passengers": [{"id": 1,"title": "mr","first_name": "Adam","last_name": "Adamson"}],"insurance": [{"insurance_company": "Insurance Company X","insurance_type": "travel","insurance_price": 0}],"affiliate_name": "TradeMaxi AB"}],"air_reservation_details": [{"pnr": "VH67899","intinerary": [{"departure": "ARN","departure_city": "Stockholm","arrival": "NCE","arrival_city": "Nice","carrier": "SK","segment_price": 34000,"departure_date": "2019-01-30T15:00:00Z","ticket_delivery_method": "email","ticket_delivery_recipient": "jonas.larlsson@klarna.com","passenger_id": [1]}],"passengers": [{"id": 1,"title": "mr","first_name": "Adam","last_name": "Adamson"}],"insurance": [{"insurance_company": "Insurance Company X","insurance_type": "travel","insurance_price": 0}],"affiliate_name": "TradeMaxi AB"}],"customer_account_info": [{"unique_account_identifier": "12345","account_registration_date": "2016-01-24T15:00:00Z","account_last_modified": "2017-01-24T15:00:00Z"}],"payment_history_full": [{"payment_option": "card","number_paid_purchases": 2,"total_amount_paid_purchases": 1234,"date_of_last_paid_purchase": "2018-01-24T15:00:00Z","date_of_first_paid_purchase": "2018-01-24T15:00:00Z"}]}'
description: The content of the extra merchant data which should be presented as a string inside this property. The body should be an object containing any of the keys and sub objects described below serialised to JSON. More information on that object can be found [here](https://docs.klarna.com/api/extra-merchant-data).
content_type:
type: string
example: application/vnd.klarna.internal.emd-v2+json
description: The content type of the body. It is usually represented as "application/vnd.klarna.internal.emd-v2+json"
options:
type: object
properties:
require_validate_callback_success:
type: boolean
description: 'If true, validate callback must get a positive response to not stop purchase. Default: false.'
acquiring_channel:
type: string
description: 'Acquiring channel for the order. The possible values are:
<ul><li><em>ECOMMERCE for "E-commerce"</em></li><li><em>IN_STORE for "Purchase in boutique"</em></li><li><em>Default : ECOMMERCE</em></li></ul>'
pattern: ECOMMERCE|MOTO|IN_STORE|TELESALES
vat_removed:
type: boolean
description: If true, VAT is not displayed in Checkout's Order Summary page.
allow_separate_shipping_address:
type: boolean
description: 'If true, the consumer can enter different billing and shipping addresses. Default: false, except for purchase_country DE where default is: true'
color_button:
type: string
example: '#FF9900'
description: Color for the buttons within the iFrame. Value should be a CSS hex color, e.g. "#FF9900"
pattern: ^#[A-Fa-f0-9]{6}$
color_button_text:
type: string
example: '#FF9900'
description: Color for the text inside the buttons within the iFrame. Value should be a CSS hex color, e.g. "#FF9900"
pattern: ^#[A-Fa-f0-9]{6}$
color_checkbox:
type: string
example: '#FF9900'
description: Color for the checkboxes within the iFrame. Value should be a CSS hex color, e.g. "#FF9900"
pattern: ^#[A-Fa-f0-9]{6}$
color_checkbox_checkmark:
type: string
example: '#FF9900'
description: Color for the checkboxes checkmark within the iFrame. Value should be a CSS hex color, e.g. "#FF9900"
pattern: ^#[A-Fa-f0-9]{6}$
color_header:
type: string
example: '#FF9900'
description: Color for the headers within the iFrame. Value should be a CSS hex color, e.g. "#FF9900"
pattern: ^#[A-Fa-f0-9]{6}$
color_link:
type: string
example: '#FF9900'
description: Color for the hyperlinks within the iFrame. Value should be a CSS hex color, e.g. "#FF9900"
pattern: ^#[A-Fa-f0-9]{6}$
date_of_birth_mandatory:
type: boolean
description: 'If true, the consumer cannot skip date of birth. Default: false'
shipping_details:
type: string
example: Delivered within 1-3 working days
description: A message that will be presented on the confirmation page under the headline "Delivery" (max 255 characters).
title_mandatory:
type: boolean
description: If specified to false, title becomes optional. Only available for orders for country GB.
additional_checkbox:
$ref: '#/components/schemas/checkbox'
national_identification_number_mandatory:
type: boolean
description: 'If true, the user cannot skip national identification number in SE, NO, FI and DK. Default: false. In order to read the national identification number in the validation callback, please contact Klarnas merchant support.'
additional_merchant_terms:
type: string
description: 'Additional merchant defined field. e.g. Extra terms and conditions to show.
Example: "ADDITIONAL MERCHANT TERMS! \[terms link\](https://merchant.com/extra_terms)"'
phone_mandatory:
type: boolean
description: If false, the consumer can skip the phone. Only available for orders in DACH countries.
radius_border:
type: string
example: '5'
description: Radius for the border of elements within the iFrame.
allowed_customer_types:
type: array
description: 'A list of allowed customer types. Supported types: <b>person</b> & <b>organization</b>.
Example: ["person","organization"]'
items:
type: string
maxItems: 2
minItems: 1
show_subtotal_detail:
type: boolean
description: 'If true, the Order Detail subtotals view is expanded when the Klarna Checkout iFrame is loaded. Default: false'
additional_checkboxes:
type: array
items:
$ref: '#/components/schemas/checkbox-v2'
verify_national_identification_number:
type: boolean
description: Enable verification of National Identification Numbers only in Sweden and Norway. This option also make the national identification number mandatory. (Not applicable for countries outside of Sweden and Norway)
auto_capture:
type: boolean
description: Allow merchant to trigger auto capturing.
require_client_validation:
type: boolean
description: If true, a client side validation is needed to complete the purchase
enable_discount_module:
type: boolean
description: Enables the inline discount module
show_vat_registration_number_field:
type: boolean
description: If true, a optional VAT registration number field will be shown in the address form. Only applies for b2b orders.
checkbox-v2:
type: object
required:
- checked
- id
- required
- text
properties:
text:
type: string
example: Please add me to the newsletter list, read more here \[link\](http://www.google.com)
description: Text that will be displayed to the consumer aside the checkbox. Links and formatting can be added using Markdown. (max 1000 characters)
checked:
type: boolean
description: Default state of the additional checkbox. It will use this value when loaded for the first time.
required:
type: boolean
description: Whether it is required for the consumer to check the additional checkbox box or not in order to complete the purchase.
id:
type: string
example: newsletter_opt_in
description: Identifier used when presenting data back to merchant
address:
type: object
properties:
given_name:
type: string
example: John
description: Given name.
family_name:
type: string
example: Doe
description: Family name.
email:
type: string
example: john@doe.com
description: E-mail address.
title:
type: string
example: Mr
description: Title.<p>Valid values for UK:</p><ul><li><em>Mr</em></li><li><em>Ms</em></li><li><em>Mrs</em></li><li><em>Miss</em></li></ul><p>Valid values for DACH:</p><ul><li><em>Herr</em></li><li><em>Frau</em></li></ul><p>Valid values for NL:</p><ul><li><em>Dhr.</em></li><li><em>Mevr.</em></li></ul>
street_address:
type: string
example: Lombard St 10
description: Street address, first line. (Street name and number)
street_address2:
type: string
example: Apt 214
description: Street address, second line. (Apartment number, suite, etc.)
street_name:
type: string
example: Lombard St
description: Street name. Only applicable in DE/AT/NL. Do not combine with street_address. See <b>streetNumber</b>.
street_number:
type: string
example: '10'
description: Street number. Only applicable in DE/AT/NL. Do not combine with street_address. See <b>streetName</b>.
house_extension:
type: string
example: B
description: House extension. Only applicable in NL
postal_code:
type: string
example: '90210'
description: Postal/post code.
city:
type: string
example: Beverly Hills
description: City.
region:
type: string
example: CA
description: State or Region.
phone:
type: string
example: '333444555'
description: Phone number.
country:
type: string
example: US
description: ISO 3166 alpha-2. Country.
care_of:
type: string
example: C/O
description: Care of.
checkbox:
type: object
required:
- checked
- required
- text
properties:
text:
type: string
example: Please add me to the newsletter list, read more here \[link\](http://www.google.com)
description: Text that will be displayed to the consumer aside the checkbox. Links and formatting can be added using Markdown. (max 1000 characters)
checked:
type: boolean
description: Default state of the additional checkbox. It will use this value when loaded for the first time.
required:
type: boolean
description: Whether it is required for the consumer to check the additional checkbox box or not in order to complete the purchase.
shipping_attributes:
type: object
properties:
weight:
type: integer
format: int64
example: 1000
description: The product's weight as used in the merchant's webshop. Non-negative. Measured in grams.
dimensions:
$ref: '#/components/schemas/dimensions'
tags:
type: array
description: The product's extra features, example ["dangerous_goods", "bulky"]
items:
type: string
order:
type: object
required:
- locale
- order_amount
- order_lines
- order_tax_amount
- purchase_country
- purchase_currency
properties:
order_id:
type: string
example: f3392f8b-6116-4073-ab96-e330819e2c07
description: Unique order ID that will be used for the entire lifecycle of the order. (max 255 characters)
readOnly: true
name:
type: string
example: Women's Fashion
description: The merchant name (max 255 characters).
readOnly: true
purchase_country:
type: string
example: US
description: "The purchase country of the merchant's store. The format to be used is ISO 3166 alpha-2. Eg: GB, SE, DE, US, etc. \n\nNote: purchase country and currency need to match the defined merchant configuration. For global configuration see more details [here](https://docs.klarna.com/kco/use-cases/selling-to-multiple-countries/)"
pattern: ^[A-Za-z]{2,2}$
purchase_currency:
type: string
example: USD
description: 'The purchase currency of the merchant''s store. The format to be used is ISO 4217. Eg: USD, EUR, SEK, GBP, etc.
Note: purchase country and currency need to match the defined merchant configuration. For global configuration see more details [here](https://docs.klarna.com/kco/use-cases/selling-to-multiple-countries/)'
pattern: ^[A-Za-z]{3,3}$
locale:
type: string
example: en-US
description: Used to define the language and region of the customer. RFC 1766 customer's locale.
pattern: ^[A-Za-z]{2,2}(?:-[A-Za-z]{2,2})*$
status:
type: string
example: CHECKOUT_INCOMPLETE
description: The current status of the order. The status will be incomplete until the customer has been successfully authorized.
billing_address:
$ref: '#/components/schemas/address'
shipping_address:
$ref: '#/components/schemas/address'
order_amount:
type: integer
format: int64
example: 50000
description: 'Total amount of the order including tax and any available discounts. The value should be in non-negative minor units.
Example: 25 Euros should be 2500.'
minimum: 0
order_tax_amount:
type: integer
format: int64
example: 4545
description: 'Total tax amount of the order. The value should be in non-negative minor units.
Example: 25 Euros should be 2500.'
minimum: 0
order_lines:
type: array
description: An array containing list of line items that are part of this order. Maximum of 1000 line items could be processed in a single order.
items:
$ref: '#/components/schemas/order_line'
maxItems: 1000
minItems: 0
customer:
$ref: '#/components/schemas/customer'
merchant_urls:
$ref: '#/components/schemas/merchant_urls'
html_snippet:
type: string
example: <div id='klarna-checkout-container'><script>alert('Initializing Klarna Checkout');</script></div>
description: The HTML snippet that is used to render the checkout in an iframe.
readOnly: true
merchant_reference1:
type: string
example: 45aa52f387871e3a210645d4
description: 'Used for storing merchant''s internal order number or other reference. If set, will be shown on the confirmation page as "order number" . The value is also available in the settlement files. (max 255 characters).
Example: "45aa52f387871e3a210645d4"'
minLength: 0
maxLength: 255
merchant_reference2:
type: string
example: 45aa52f387871e3a210645d4
description: 'Used for storing merchant''s internal order number or other reference. The value is available in the settlement files. (max 255 characters).
Example: "45aa52f387871e3a210645d4"'
minLength: 0
maxLength: 255
started_at:
type: string
format: date-time
description: 'ISO 8601 datetime. The date and time when the order has been created. The format will be as follows:
"yyyy-mm-ddThh:mm:ssZ"'
readOnly: true
completed_at:
type: string
format: date-time
description: 'ISO 8601 datetime. The date and time when the order has been completed. The format will be as follows:
"yyyy-mm-ddThh:mm:ssZ"'
readOnly: true
last_modified_at:
type: string
format: date-time
description: 'ISO 8601 datetime. The date and time when the order was last modified. The format will be as follows:
"yyyy-mm-ddThh:mm:ssZ"'
readOnly: true
options:
$ref: '#/components/schemas/options'
attachment:
$ref: '#/components/schemas/attachment'
external_payment_methods:
type: array
description: List of external payment methods that will be displayed as part of payment methods in the checkout.
items:
$ref: '#/components/schemas/payment_provider'
external_checkouts:
type: array
description: 'List of external checkouts that will be displayed as part of payment methods in the checkout.
The image_url is required, and the image size has to be 276x48px'
items:
$ref: '#/components/schemas/payment_provider'
shipping_countries:
type: array
description: "List of allowed shipping countries for this order in ISO-3166 alpha-2 format.\n\nIf specified, the customer will be able to change the shipping country in the checkout and you will be notified through address_update callback or the shipping_address_change javascript event. \n\nIf not specified then the default value will be the purchase country.\n\nExample: look at billing_countries example."
items:
type: string
shipping_options:
type: array
description: A list of shipping options available for this order.
items:
$ref: '#/components/schemas/shipping_option'
merchant_data:
type: string
example: '{"marketplace_seller_info":[{"product_category":"Women''s Fashion","product_name":"Women Sweatshirt"}]}'
description: Pass through field to send any information about the order to be used later for reference while retrieving the order details (max 6000 characters).
minLength: 0
maxLength: 6000
gui:
$ref: '#/components/schemas/gui'
merchant_requested:
$ref: '#/components/schemas/merchant_requested'
selected_shipping_option:
$ref: '#/components/schemas/shipping_option'
recurring:
type: boolean
description: 'Indicates whether this purchase will create a token that can be used by the merchant to create recurring purchases. This must be enabled for the merchant to use. Default: false
Depending on specified country, recurring could be used for the following payment methods: Pay Later, Direct Debit, Card.'
recurring_token:
type: string
description: Token to be used when creating recurring orders.
readOnly: true
recurring_description:
type: string
description: Description to be added to the recurring order.
readOnly: true
minLength: 0
maxLength: 255
billing_countries:
type: array
description: 'List of allowed billing countries for this order.
If specified, the customer will be able to change the billing country in the checkout and you will be notified through country_change callback or the billing_address_change javascript event.
If not specified but shipping_countries is specified, will use same values as shipping_countries.
If not specified and shipping_countries is not specified, then the default value will be the purchase country.
Example: ["AD", "AE", "AG", "AI", "AL", "AM", "AQ", "AR", "AS", "AT", "AU", "AW", "AX", "AZ", "BA", "BB", "BD", "BE", "BF", "BG", "BH", "BJ", "BL", "BM", "BN", "BO", "BQ", "BR", "BS", "BT", "BW", "BY", "BZ", "CA", "CF", "CH", "CI", "CK", "CL", "CM", "CN", "CO", "CR", "CU", "CV", "CW", "CX", "CY", "CZ", "DE", "DJ", "DK", "DM", "DO", "DZ", "EC", "EE", "EG", "ER", "ES", "ET", "FI", "FJ", "FK", "FM", "FO", "FR", "GA", "GB", "GD", "GE", "GF", "GG", "GH", "GI", "GL", "GM", "GN", "GP", "GR", "GS", "GT", "GU", "GY", "HK", "HN", "HR", "HU", "ID", "IE", "IL", "IM", "IN", "IS", "IT", "JE", "JM", "JO", "JP", "KE", "KG", "KI", "KM", "KN", "KR", "KW", "KY", "KZ", "LA", "LA", "LB", "LC", "LI", "LK", "LR", "LS", "LT", "LU", "LV", "MA", "MC", "MD", "ME", "MF", "MG", "MH", "MK", "MK", "ML", "MM", "MN", "MO", "MP", "MQ", "MR", "MT", "MU", "MV", "MW", "MX", "MY", "MZ", "NA", "NC", "NE", "NF", "NG", "NI", "NL", "NO", "NP", "NR", "NU", "NZ", "OM", "PA", "PE", "PF", "PG", "PH", "PK", "PL", "PM", "PR", "PS", "PT", "PW", "PY", "QA", "RE", "RO", "RS", "RU", "RW", "SA", "SB", "SC", "SE", "SG", "SH", "SI", "SJ", "SK", "SL", "SM", "SN", "SR", "ST", "SV", "SX", "SZ", "TC", "TF", "TG", "TH", "TJ", "TK", "TL", "TO", "TR", "TT", "TV", "TW", "TZ", "UA", "UG", "UM", "US", "UY", "UZ", "VA", "VC", "VG", "VI", "VN", "VU", "WF", "WS", "XK", "YT", "ZA", "ZM", "ZW"]"'
items:
type: string
tags:
type: array
description: 'Extra information added to the order.
Example: ["dangerous_goods", "bulky"]'
items:
type: string
discount_lines:
type: array
description: List of discounts applied to this order via the KCO discount-service
items:
$ref: '#/components/schemas/discount_line'
gui:
type: object
properties:
options:
type: array
description: "An array of options to define the checkout behaviour. Supported options: minimal_confirmation.\n\nThe gui object is an array of options to modify checkout client ui behaviours. \n\nExamples: [\"minimal_confirmation\"]"
items:
type: string
product_identifiers:
type: object
properties:
brand:
type: string
example: Intel
description: The product's brand name as generally recognized by consumers. If no brand is available for a product, do not supply any value.
minLength: 0
maxLength: 70
color:
type: string
example: Blue
description: Color to be shown to the end customer (max 64 characters).
minLength: 0
maxLength: 64
category_path:
type: string
example: Electronics Store > Computers & Tablets > Desktops
description: 'The product''s category path as used in the merchant''s webshop. Include the full and most detailed category and separate the segments with '' > ''. (max 750 characters)
Example: "Electronics Store > Computers & Tablets > Desktops"'
minLength: 0
maxLength: 750
global_trade_item_number:
type: string
example: '735858293167'
description: The product's Global Trade Item Number (GTIN). Common types of GTIN are EAN, ISBN or UPC. Exclude dashes and spaces, where possible
minLength: 0
maxLength: 50
manufacturer_part_number:
type: string
example: BOXNUC5CPYH
description: The product's Manufacturer Part Number (MPN), which - together with the brand - uniquely identifies a product. Only submit MPNs assigned by a manufacturer and use the most specific MPN possible
minLength: 0
maxLength: 70
size:
type: string
example: Medium
description: Size to be shown to the end customer (max 64 characters).
minLength: 0
maxLength: 64
payment_provider:
type: object
required:
- name
- redirect_url
properties:
name:
type: string
example: PayhereUs
description: The name of the payment provider. (max 255 characters)
minLength: 0
maxLength: 255
fee:
type: integer
format: int64
description: Minor units. Includes tax.
description:
type: string
example: an American company operating a worldwide online payments system
description: Short description of the payment method. This is displayed below the selected payment method. (max 500 characters)
minLength: 0
maxLength: 500
countries:
type: array
description: If specified, limits the method to the listed countries (alpha 2 codes).
items:
type: string
label:
typ
# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/klarna/refs/heads/main/openapi/klarna-checkout-api-openapi.yml