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.
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.
During our assessment, the fraud risk might be higher if:
The customer data you send us in later calls after authorize()
is merged with the data you entered previously.
Keep in mind that data while points may have different requirement level (optional or mandatory) in previous operations performed (create_session
, update
), but if any field defined as mandatory on authorize()
call is missing, you get an error message. You then need to collect all missing authorize()
mandatory data and perform a new attempt to complete the purchase.
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
BASIC_LATIN
LATIN_1_SUPPLEMENT
LATIN_EXTENDED_A
PHONETIC_EXTENSIONS
The following Unicode blocks are supported for the Greek market
BASIC_LATIN
GREEK
GREEK_EXTENDED
Additionally, characters are also matched against the following Unicode categories
Li (Lower case characters)
Lu (Upper case characters)
Nd (Decimal digit number characters)
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.
The following table shows the meaning of the symbols you can see in the customer data tables.
Symbol | Meaning |
---|---|
* | Mandatory for authorize() operation |
- | Optional for authorize() operation |
> | Derived |
! | See notes |
? | Depending on the payment method. If not added, Klarna will collect the details in the purchase flow. |
Customer details | Comment |
---|---|
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 | Validation according to Universal Postal Union addressing systems. |
? national_identification_number | Necessary for all credit payment methods and Pay Now. |
* given_name | Customers given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* family_name | Customers family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* street_address | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
- care_of | To address the order to another recipient. B2C purchases only. |
* city | City field according to the market. |
* phone | Follow the standards defined in https://github.com/googlei18n/libphonenumber |
> gender - from PNO | |
> date_of_birth - from PNO |
Customer details | Comment |
---|---|
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 | Validation according to Universal Postal Union addressing systems. |
- title | Mr, Ms |
? date_of_birth | Necessary for all credit payment methods and Pay Now. |
* given_name | Customers given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* family_name | Customers family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* street_address | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
- street_address2 | Second address line. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
* city | City field according to the market. |
* phone | Follow the standards defined in https://github.com/googlei18n/libphonenumber |
> gender | Derived from title |
Customer details | Comment |
---|---|
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) | Validation according to Universal Postal Union addressing systems |
? date_of_birth | Necessary for all credit payment methods and Pay Now. |
* given_name | Customers given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* family_name | Customers family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* street_address | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
- street_address2 | Second address line. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
* city | City field according to the market. |
- region | County, E.G "Antrim". |
* phone | Follow the standards defined in https://github.com/googlei18n/libphonenumber |
Customer details | Comment |
---|---|
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 | Validation according to Universal Postal Union addressing systems. |
? date_of_birth | Necessary for all credit payment methods. |
- title | de:“Herr”, “Frau”; de_CH: “Herr, “Frau”; it_CH: “Sig.", “Sig.ra”; fr_CH: “M", “Mme”; nl: “Dhr.", “Mevr.”; nl_BE: “Dhr”, “Mevr”; fr_BE: “M", “Mme” |
* given_name | Customers given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* family_name | Customers family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* street_address | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
- care_of | To address the order to another recipient. B2C purchases only. |
* city | City field according to the market. |
- phone | Follow the standards defined in https://github.com/googlei18n/libphonenumber |
> gender | Derived from title. |
Customer details | Comment |
---|---|
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 | Validation according to Universal Postal Union addressing systems. |
? date_of_birth | Necessary for all credit payment methods. |
? place_of_birth | Necessary for all credit payment methods. |
* given_name | Customers given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* family_name | Customers family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* street_address | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
- street_address2 | Second address line. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
* city | City field according to the market. |
* phone | Follow the standards defined in https://github.com/googlei18n/libphonenumber |
Customer details | Comment |
---|---|
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 | Validation according to Universal Postal Union addressing systems. |
? date_of_birth | Necessary for all credit payment methods. |
? place_of_birth | Necessary for all credit payment methods. |
* given_name | Customers given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* family_name | Customers family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* street_address | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
- street_address2 | Second address line. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
* city | City field according to the market. |
- region | Province in 2 letter format e.g "AG". |
* phone | Follow the standards defined in https://github.com/googlei18n/libphonenumber |
Customer Details | Comment |
---|---|
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 | Validation according to Universal Postal Union addressing systems. |
? date_of_birth | Necessary for all credit payment methods. |
* given_name | Customers given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* family_name | Customers family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* street_address | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
- street_address2 | Second address line. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
* city | City field according to the market. |
* phone | Follow the standards defined in https://github.com/googlei18n/libphonenumber |
Customer Details | Comment |
---|---|
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 | Validation according to Universal Postal Union addressing systems. |
? date_of_birth | Necessary for all credit payment methods. |
* given_name | Customers 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 | Customers given 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 | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ Letters with diacritics are allowed. |
- street_address2 | Street name and number. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ Letters with diacritics are allowed. |
* city | City field according to the market. Letters with diacritics are allowed. |
- region | Postal address region (or sector for addresses in Bucharest). For example Cluj (region) or Sector 6 (sector). Letters with diacritics are allowed. |
* phone | Follow the standards defined in https://github.com/googlei18n/libphonenumber |
Customer details | Comment |
---|---|
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 | Validation according to Universal Postal Union addressing systems. |
? date_of_birth | Necessary for all credit payment methods. |
* given_name | Customers given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* family_name | Customers family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* street_address | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
- street_address2 | Address line 2, apartment, suite, for example, apt 2. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
* region | 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 format (ISO 3166-1 alpha-2) for the state. For example, “CDMX” for Ciudad de Mexico, "JAL" for Jalisco, "NL" for Nuevo León. |
* city | City field according to the market. |
* phone | Follow the standards defined inhttps://github.com/googlei18n/libphonenumber |
Customer details | Comment |
---|---|
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 | Validation according to Universal Postal Union addressing systems. |
? date_of_birth | Necessary for all credit payment methods. |
* given_name | Customers given name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* family_name | Customers family name in UTF-8 encoding. Cannot be only numbers, must be more than 1 character. Allowed special characters: -'’.°ºᵃª |
* street_address | Street name and number following Universal Postal Union addressing systems Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
- street_address2 | Second address line. Allowed special characters: -'´`",.:;#&/()+@ °ºᵃª_ \ |
* region | For AU: State code in ISO 3166-2 format, for example, “QLD” for Queensland, “WA” for “Western Australia”. For NZ: Suburb e.g "Avondale" |
* city | City field according to the market. |
* phone | Follow the standards defined in https://github.com/googlei18n/libphonenumber |