BETA

Importing Customers

This endpoint can be used to import Customer data to create and update Customers in a commercetools Project. The Customer data to import is represented by CustomerImport and loaded in CustomerImportRequest, which is posted to import Customers.

To monitor an import status, use Get ImportSummary, Get ImportOperation, and Query ImportOperations.

Representations

CustomerImportRequest

The request body to import Customers. Contains data for Customers to be created or updated in a commercetools Project.

type​
String​
"customer"

The customer import resource type.

resources​
Array of CustomerImport​

The customer import resources of this request.

MaxItems: 20​
Example: json
{
"type" : "customer",
"resources" : [ {
"customerNumber" : "12345",
"email" : "alice@example.org",
"password" : "secret",
"firstName" : "Alice",
"lastName" : "Doe",
"middleName" : "Ruth",
"title" : "Ms.",
"dateOfBirth" : "1980-01-01",
"companyName" : "commercetools GmbH",
"vatId" : "123456789",
"addresses" : [ {
"key" : "wCVKP6iU",
"firstName" : "Alice",
"country" : "DE"
}, {
"key" : "en-wcvK6",
"firstName" : "Alice",
"country" : "US"
} ],
"defaultShippingAddress" : 0,
"shippingAddresses" : [ 0, 1 ],
"defaultBillingAddress" : 0,
"billingAddresses" : [ 0, 1 ],
"isEmailVerified" : false,
"externalId" : "external-id-123",
"customerGroup" : {
"typeId" : "customer-group",
"key" : "customer-group-key"
},
"custom" : {
"type" : {
"key" : "custom-type",
"typeId" : "type"
},
"fields" : {
"boolean-field" : {
"type" : "Boolean",
"value" : true
}
}
},
"locale" : "DE",
"salutation" : "Dr.",
"key" : "customer-import-resource-key",
"stores" : [ {
"typeId" : "store",
"key" : "store-key"
} ]
} ]
}

CustomerImport

The data representation for a Customer to be imported that is persisted as a Customer in the Project.

key​
String​
customerNumber​
String​

Maps to Customer.customerNumber.

email​
String​

Maps to Customer.email.

password​
String​

Maps to Customer.password.

stores​
Array of StoreKeyReference​

The References to the Stores with which the Customer is associated. If referenced Stores do not exist, the state of the ImportOperation will be set to unresolved until the necessary Stores are created.

firstName​
String​

Maps to Customer.firstName.

lastName​
String​

Maps to Customer.lastName.

middleName​
String​

Maps to Customer.middleName.

title​
String​

Maps to Customer.title.

salutation​
String​

Maps to Customer.salutation.

externalId​
String​

Maps to Customer.externalId.

dateOfBirth​
Date​

Maps to Customer.dateOfBirth.

companyName​
String​

Maps to Customer.companyName.

vatId​
String​

Maps to Customer.vatId.

isEmailVerified​
Boolean​

Maps to Customer.isEmailVerified.

customerGroup​

The Reference to the CustomerGroup with which the Customer is associated. If referenced CustomerGroup does not exist, the state of the ImportOperation will be set to unresolved until the necessary CustomerGroup is created.

addresses​
Array of CustomerAddress​

Maps to Customer.addresses.

defaultBillingAddress​
Int​

The index of the address in the addresses array. The defaultBillingAddressId of the customer will be set to the ID of that address.

billingAddresses​
Array of Integer​

The indices of the billing addresses in the addresses array. The billingAddressIds of the customer will be set to the IDs of that addresses.

defaultShippingAddress​
Int​

The index of the address in the addresses array. The defaultShippingAddressId of the customer will be set to the ID of that address.

shippingAddresses​
Array of Integer​

The indices of the shipping addresses in the addresses array. The shippingAddressIds of the customer will be set to the IDs of that addresses.

locale​
String​

Maps to Customer.locale.

custom​

The custom fields for this Customer.

CustomerAddress

Different from Address in that key is required and id is not supported.

key​
String​

User-defined identifier for the address. Must follow the pattern [a-zA-Z0-9_-]{2,256} and must be unique per customer.

title​
String​
salutation​
String​
firstName​
String​
lastName​
String​
streetName​
String​
streetNumber​
String​
additionalStreetInfo​
String​
postalCode​
String​
city​
String​
region​
String​
state​
String​
country​
CountryCode​

A two-digit country code as per ISO 3166-1 alpha-2.

company​
String​
department​
String​
building​
String​
apartment​
String​
pOBox​
String​
phone​
String​
mobile​
String​
email​
String​
fax​
String​
additionalAddressInfo​
String​
externalId​
String​

Import Customers

Creates a request for creating new Customers or updating existing ones.

POST
https://import.{region}.commercetools.com/{projectKey}/customers/import-containers/{importContainerKey}
OAuth 2.0 Scopes:
manage_customers:{projectKey}
Path parameters:
region
​
String
​

The Region in which the Project is hosted.

projectKey
​
String
​

The commercetools Project key.

importContainerKey
​
String
​

The ImportContainer used to create the new resource

Response:
Request Example:cURL
curl -X POST https://import.{region}.commercetools.com/{projectKey}/customers/import-containers/{importContainerKey} -i \
--header 'Authorization: Bearer ${BEARER_TOKEN}' \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"type" : "customer",
"resources" : [ {
"customerNumber" : "12345",
"email" : "alice@example.org",
"password" : "secret",
"firstName" : "Alice",
"lastName" : "Doe",
"middleName" : "Ruth",
"title" : "Ms.",
"dateOfBirth" : "1980-01-01",
"companyName" : "commercetools GmbH",
"vatId" : "123456789",
"addresses" : [ {
"key" : "wCVKP6iU",
"firstName" : "Alice",
"country" : "DE"
}, {
"key" : "en-wcvK6",
"firstName" : "Alice",
"country" : "US"
} ],
"defaultShippingAddress" : 0,
"shippingAddresses" : [ 0, 1 ],
"defaultBillingAddress" : 0,
"billingAddresses" : [ 0, 1 ],
"isEmailVerified" : false,
"externalId" : "external-id-123",
"customerGroup" : {
"typeId" : "customer-group",
"key" : "customer-group-key"
},
"custom" : {
"type" : {
"key" : "custom-type",
"typeId" : "type"
},
"fields" : {
"boolean-field" : {
"type" : "Boolean",
"value" : true
}
}
},
"locale" : "DE",
"salutation" : "Dr.",
"key" : "customer-import-resource-key",
"stores" : [ {
"typeId" : "store",
"key" : "store-key"
} ]
} ]
}
DATA