This section describes the customer data we require to place an order, depending on the purchase country.
As we offer credit to your customers, we need to have enough data to do a proper risk and fraud assessment. This is only possible if we have high-quality customer data in a standardized format.
Klarna’s services may not be used by businesses registered or operating in some jurisdictions. Additionally, Klarna’s services may not be used to process payments for the sale of goods or services shipping from, or for the purchase of goods that would be shipped to consumers with a billing or shipping address in the specific regions.
Finally, but not less important, we also need to manage customer data to ensure the best customer experience in the order management process.
Ensure customer information is not sent before confirming the intention to pay with Klarna to remain GDPR compliant. This confirmation typically occurs at the time of authorization.
Klarna payments API can handle both billing and shipping addresses separately. If you don't provide a shipping address, we duplicate the billing address and use it as the shipping address in our customer data.
Depending on the data standards of each country, we require different information per country market. To ensure a friendly customer experience, you need to properly provide the customer details in the mandatory fields.
street_address2 is only to add extra details to the address, such as the floor and the apartment number. Send the main address information in the regular street_address field.
The following Unicode blocks are supported for all markets except Greek
Note that any characters that don't belong to the categories above are considered special characters. The characters allowed in each field are listed in the market overview tables below.
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
national_identification_number
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods and Pay Now.
given_name
Optional for authorize() operation
Customer's given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
family_name
Optional for authorize() operation
Customer's family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
title
Optional for authorize() operation
Mr, Ms
date_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods and Pay Now.
given_name
Optional for authorize() operation
Customer's given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
family_name
Optional for authorize() operation
Customer's family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code (eircode)
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
date_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods and Pay Now.
given_name
Optional for authorize() operation
Customer's given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
family_name
Optional for authorize() operation
Customer's family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
date_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
date_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods.
place_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods.
given_name
Optional for authorize() operation
Customer's given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
family_name
Optional for authorize() operation
Customer's family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
date_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods.
place_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods.
given_name
Optional for authorize() operation
Customer's given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
family_name
Optional for authorize() operation
Customer's family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
date_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods.
given_name
Optional for authorize() operation
Customer's given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
family_name
Optional for authorize() operation
Customer's family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
date_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods.
given_name
Optional for authorize() operation
Customer's given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª. Letters with diacritics are allowed.
family_name
Optional for authorize() operation
Customer's family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª. Letters with diacritics are allowed.
street_address
Optional for authorize() operation
Street name and number following Universal Postal Union addressing systems. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \. Letters with diacritics are allowed.
street_address2
Optional for authorize() operation
Street name and number. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \. Letters with diacritics are allowed.
city
Optional for authorize() operation
City field according to the market. Letters with diacritics are allowed.
region
Optional for authorize() operation
Postal address region (or sector for addresses in Bucharest). For example Cluj (region) or Sector 6 (sector). Letters with diacritics are allowed.
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
date_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods.
given_name
Optional for authorize() operation
Customer's given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
family_name
Optional for authorize() operation
Customer's family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
Address line 2, apartment, suite, for example, apt 2. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \
region
Optional for authorize() operation
For US: two-letter state code in ISO 3166-1 alpha-2 format, for example CA for California. For Canada: two-letter province code, for example ON for Ontario. For Mexico: two/three-letter state format, for example CDMX for Ciudad de Mexico, JAL for Jalisco, NL for Nuevo León.
Must include @ and domain. Pattern: "(?<local>^[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+/=?^_`{}~-]+)*)@(?<domain>(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?<tld>[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$))"
postal_code
Optional for authorize() operation
Validation according to Universal Postal Union addressing systems.
date_of_birth
Depending on the payment method. If not added, Klarna will collect the details in the purchase flow.
Necessary for all credit payment methods.
given_name
Optional for authorize() operation
Customer's given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª
family_name
Optional for authorize() operation
Customer's family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª