node package manager
Don’t reinvent the wheel. Reuse code within your team. Create a free org »


commercetools icon

Customer export

Build Status NPM version Coverage Status Dependency Status devDependency Status

This module allows to export customers to CSV, with SFTP support.

Getting started

$ npm install -g commercetools-customer-export
# output help screen 
$ customer-export


Exported customer can be automatically uploaded to an SFTP server.

When using SFTP you need to provide at least the required --sftp* options:

  • --sftpCredentials (or --sftpHost, --sftpUsername, --sftpPassword)
  • --sftpSource
  • --sftpTarget

CSV Format

Customers exported in CSV are stored in a single file

At the moment you need to provide a --csvTemplate with headers in order to export related fields (see examples).


The following headers can be used in the CSV template

  • id
  • customerNumber
  • externalId
  • firstName
  • middleName
  • lastName
  • email
  • dateOfbirth
  • companyName
  • vatId
  • defaultShippingAddressId
  • defaultBillingAddressId
  • customerGroup
  • isEmailVerified
  • addressed.* - eg. id, streetName or additionalStreetInfo

In general you can get access to any property of the customer object. Find a reference in our API documentation.

Note that when at least one addresses header is given the resulting CSV contains a row per address. Otherwise it only contains one row per customer.


In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt. More info here


Releasing a new version is completely automated using the Grunt task grunt release.

grunt release // patch release
grunt release:minor // minor release
grunt release:major // major release


Copyright (c) 2015 commercetools Licensed under the MIT license.