Introduction to Bulk Importing in Custom Fields
Note: Custom Fields does not import or change data that is controlled on Shopify. For example, it doesn't change your product titles or Google Shopping tags.
Custom Fields can, however, import or update any Metafield, even Metafields controlled by other apps.
Create the fields you want to import in the app, if you haven't already.
Once your fields are created, get the sample import file from the app. This file is a very helpful starting point. The file is customized to your installation with each of your fields in the sample, along with sample data.
To get the file, in the app, click on Products then Import then click on Help. Finally, click on Download sample CSV file.
From there, you'll be able to add your existing data in a format that Custom Fields can import.
At the very least, Custom Fields needs a column with the product handle, a column for the Title, and at least one column using the format of
custom_fields["MACHINE_NAME"], for example
A title column is required and the title for each product cannot be blank. Note that the title field does not need to contain valid titles, just some value. They aren't actually used or imported. The only reason titles are required is because it follows Shopify's export and import rules. In Shopify, variants in imports are separated from products in imports by leaving the title field blank for variants. The Custom Fields app identifies variants the same way.
Shopify Imports vs. Custom Fields Imports
Shopify's exports and imports are very similar to Custom Fields imports and exports. Both use the same format in the CSV file. Shopify ignores Custom Fields values and Custom Fields will ignore Shopify values. This simplifies importing so that the same file can be used in both systems.
Importing Other Metafields
Any product metafield can be imported this way, using the format of
metafield_namespace["metafield_key"]. In Custom Fields, those field values will appear in the app under Other Metafields when editing a product.
Heads Up, This Might Take a While...
All apps are limited by Shopify to 2 changes per second. Each field value you want to import is one change. We are as efficient as possible, but we cannot speed the process up any faster than Shopify’s limits allow.
Try to avoid updating the same fields over and over again. If possible, keep track of what values have changed for future imports. You can speed up your import significantly when updating if your file only has rows in it that need to change, rather than continually uploading the same information for every row.
Deleting Field Values
When Custom Fields encounters a blank cell in a CSV, it is ignored, not deleted. To delete values from a field, enter
DELETE (in all caps) into the cell you wish to delete the value from. To delete all values from a certain field, fill the column for the field you want to clear in your CSV with
Tips for Each Type of Field
0 or enter
FALSE for off, and
TRUE for on.
Date: Enter a date using a unix timestamp, such as
946684799 or any valid date format that can be parsed by PHP's strtotime() function. See http://php.net/manual/en/function.strtotime.php for valid formats. Since most anything will parse into a usable date, Custom Fields does not perform validation on dates.
Email: Enter a valid email address. Custom Fields validates to ensure that only valid email addresses are entered and will reject any email that is invalid.
Links: Enter a raw url and Custom Fields will use the url as both the title and the link. Include link HTML instead of a raw URL to populate the title and link target attributes. For example,
<a href=“http://google.com” target=“_blank”>A Link To Google</a> OR
Phone: Enter a telephone number. There is no validation on phone numbers.
URL: Enter a valid URL. Invalid URLs will be rejected by Custom Fields.
Text: Enter text. Custom Fields validates against the max length you’ve configured and will reject text longer than the defined range.
Text List - (any type): Enter one or more text items, separated by the
| character. For example,
Bonify|Awesome. Custom Fields validates against the values you’ve configured as options and will reject text items that are not in your defined option list.
HTML: Enter any HTML as you’d like it to appear. Line breaks will cause errors due to the inherent limitations of the CSV file format.
Images: Enter a url for an image. Custom Fields will copy the image into our system (technically it gets uploaded and stored on an Amazon S3 bucket). Image must be publicly accessible on the internet.
Files: Enter a url for a file. Custom Fields will copy the file into our system (technically it gets uploaded and stored on an Amazon S3 bucket). File must be publicly accessible on the internet.
Integer: Enter a whole number. Custom Fields validates against the min and max values you’ve configured as options and will reject numbers out of the defined range.
Number List - (any type): Enter one or more numbers, separated by the
| character. For example,
9.5|6. Custom Fields validates against the values you’ve configured as options and will reject numbers that are not in your defined option list.
Number: Enter a number with or without decimal places. For example,
8.99. Custom Fields validates against the min and max values you’ve configured and will reject numbers out of the defined range.
Product Reference: Enter the handle of the product you’d like to reference. For multiple values, separate them with a
| character. For example,