Skip to main content

Import from CSV

Bulk import tool for B2B companies, locations, and contacts

Brett Shelley avatar
Written by Brett Shelley
Updated over 3 weeks ago

Overview

The app's company import tool is designed to create and update Companies, Company Locations, and Contacts directly in Shopify. This tool is helpful in cases where you have external B2B entity data that needs to be bulk imported into Shopify.

Note: This new tool is currently hidden behind a beta flag. Please contact our support team if you'd like to gain access now before it becomes generally available.

To access the import tool, go to Applications > Import companies

The Import companies page allows you to start a new import, check the status of an import in progress, and see a history of previous imports. Please note that the app only allows one active import at a time.

Preparing a CSV file for import

Company columns

Column

Description

companyId

This is the automatically generated ID from Shopify. This should be left blank for new company creation, but may be used if a company already exists and you are creating company locations and/or contacts.

companyName

Name of the company. This is required when creating a company and may be used as a unique identifier. If you have two companies in Shopify with the same name, you will need to use companyID or externalID to indicate which company you intend to associate locations and contacts with.

externalId

The external ID for the company. Shopify requires that each external is unique for each company. No spaces are allowed in the external ID. This ID may come from a separate external system like a CRM or other e-commerce platform.

customerSince

This is the date and time when the company became a customer. This column can be used when creating a company, but will be ignored for any updates. Use the format YYYY-MM-DD HH:mm:ss +T

companyNote

Free text field for internal notes about the company

Company location columns

  • You can have a max of 10,000 locations per company

  • A company will always have at least one location. If you create a company without a location, a default location with the same name as the company will be created by Shopify

Column

Description

locationId

This is the automatically generated ID from Shopify. This should be left blank for new company location creation, but may be used if a location already exists and you are creating contacts.

locationName

Name of the location. This is required when creating a company and may be used as a unique identifier. If you have two locations with the same name within a company, you must include locationId or locationExternalId to indicate which location you are referencing.

locationExternalId

The external ID for the location. Shopify requires that each external is unique for each location. No spaces are allowed in the external ID. This ID may come from a separate external system like a CRM or other e-commerce platform.

locationPhone

The phone number associated with the location. Phone numbers are validated by Shopify. Use the format +1 23456 789098

locationNote

Free text field for notes about the location

taxRegistrationId

The tax registration ID for this location

taxExempt

Location-specific tax setting in the store. If set to FALSE then you can additionally apply tax exemptions using the taxExemptions column. Allowed values: TRUE, FALSE

taxExemptions

Available tax exemptions for the location if taxExempt is set to FALSE. Allowed values: See Shopify tax exemptions

locale

Preferred locale at this specific location. If blank, will inherit the locale of the shop.

checkoutToDraft

Indicates whether the buyer will checkout to Draft Order or will checkout directly to Order. Will be FALSE if left blank. Allowed values: TRUE, FALSE

checkoutPaymentTerms

Payment terms setting for the location. Must be one of the allowed values:<empty>, Net 7, Net 15, Net 30, Net 45, Net 60, Net 90

depositPercentage

A whole number between 1-99 that indicates the amount of deposit that needs to be paid on orders with given payment terms.

catalogs

Semi-colon-separated list of Catalog names that are assigned to the company location. This column will not remove catalogs from company locations and will only add these catalogs if currently missing from a company location. Example: Winter specials; Closeout

editableShippingAddress

Also known as “Allow customers to ship to any address”. Allows for locations to change the shipping address on an order.

Company location address columns

Column

Description

billingSameAsShipping

Mark the billing address to be the same as the shipping address. If set to TRUE then any values set in the billing address will be ignored. Allowed values: TRUE, FALSE

shippingAddressRecipient or billingAddressRecipient

Location address identity of the recipient. Example: Receiving Dept

shippingAddressFirstName or billingAddressFirstName

Location address first name

shippingAddressLastName or billingAddressLastName

Location address last name

shippingAddressPhone or billingAddressPhone

Location address phone. Phone numbers are validated by Shopify. Use the E.164 format

shippingAddress1 or billingAddress1

Location address 1. This field value is required to be defined for any address operations.

shippingAddress2 or billingAddress2

Location address 2

shippingAddressCity or billingAddressCity

Location address city

shippingAddressZip or billingAddressZip

Location address zip/postal code

shippingZoneCode or billingZoneCode

Location address two-letter province/zone code. Allowed values: Two-letter ISO 3166-2 Province Code

shippingCountryCode or billingCountryCode

Required for any address operations. Location address two-letter country code. Allowed values: Two-letter ISO 3166 Country Code

Contact columns

Column

Description

contactId

This is the automatically generated ID from Shopify

contactEmail

Required for any contact operations. The email address for the customer assigned to the company location.

contactIsPrimary

Indicates if the contact should be marked as the primary contact for the location. Allowed values: TRUE, FALSE

contactRole

Required when creating a location contact. The customer’s role at the company location. Allowed values: Ordering only, Location admin

contactFirstName

Customer first name

contactLastName

Customer last name

contactTitle

Customer job title

General file requirements

  • Must be under 20MB

  • Must be a .csv

  • Must have correct headers

    • Any additional headers will prevent the file from uploading

  • Works best with UTF-8 encoding

  • Exclude empty columns and rows

Did this answer your question?