Bulk Importing Vendors
Discovery's Bulk Import lets you create many vendors at once from a CSV file instead of adding them one by one.
To change vendors that already exist, use a bulk update instead; see Bulk Updating Vendors.
You need to be a tenant Admin to use Bulk Imports.
Step 1: Download the Template
- Go to Settings → Bulk Imports.
- Click Template to download a zip of blank import templates. Open the vendors.csv file inside it.
Two other downloads on the same page can help:
- Example has sample files with filled-in rows.
- Helper has reference lists, including
vendor_templates.csvwith vendor template IDs.
Step 2: Fill In the File
Add one row per vendor. Keep the column headings exactly as they are in the template. Don't add any other columns: an unrecognized heading makes every row fail, even if its cells are empty. You can delete optional columns you aren't using.
Required fields
- name | The vendor name. It can contain letters, numbers, spaces and common punctuation. Accented letters and characters such as
$,%and"aren't allowed. - address_street
- address_city
- address_state_code | A valid 2-letter state or province code, in capitals (for example
TXorON). - address_postal_code | Must be a valid ZIP or postal code for the country.
- address_country_code | US or CA, in capitals.
Optional fields
- general_email_address
- general_phone_number
- general_fax_phone_number
- work_order_request_email_addresses
- incident_notification_email_addresses
- credit_request_email_addresses
Separate multiple addresses in the three list columns with a semicolon, for example [email protected];[email protected] . Don't end the list with a semicolon. The vendor page allows up to 10 addresses per list, so we recommend no more than 10 here. Credit Request Email Addresses are stored for future Vendor Credit Requests; Discovery doesn't send email from that field yet.
Other fields
- external_reference_id | Your own reference for the vendor, for example its ID in another system. Each vendor's reference must be unique.
- external_accounting_id | Links the vendor to a vendor in your accounting system. See Linking Vendors to QuickBooks below.
- sticky_notes
- has_gps_tracking_on_trucks | 1 for yes, 0 for no. Leave blank if unknown.
- default_payment_terms | Default Payment Terms in days, as a whole number (for example
30). Discovery uses it to pre-fill payment days on new vendor contracts. - legal_mailing_address
- check_remittance_address
- vendor_template_id | The ID of a vendor template, from the Helper download.
Linking Vendors to QuickBooks
The external_accounting_id column connects each new vendor to a vendor in your accounting system. A vendor invoice can't be posted to your accounting system while its vendor has no link. You can also leave the column blank and link vendors later.
The value must match a vendor in Discovery's list of accounting vendors. Discovery checks that list, not QuickBooks itself. To get the right values:
- Go to Settings → Integration and open the Vendors tab.
- QuickBooks Online: click Refresh Vendors first, so vendors recently added in QuickBooks appear in Discovery. The button only appears while Discovery is connected to QuickBooks. The refresh runs in the background and can take a minute.
- Click Export to CSV, then download the file from My Profile → Data Exports.
- Copy each vendor's value from the External Accounting ID column (not the UUID column) into the external_accounting_id cell.
QuickBooks Desktop: accounting vendors are added by hand on the same Vendors tab. Their External Accounting ID is the vendor name exactly as it was entered there.
If a value doesn't match, that row fails with "The selected external accounting id is invalid."
Step 3: Save the File
- Name the file exactly vendors.csv. Any other name is rejected when you upload it.
- Save it in CSV format.
You can also upload a .zip containing vendors.csv together with other import files, such as vendor_accounts.csv. Vendors are always imported first, so rows in vendor_accounts.csv can refer to a new vendor by putting its external_reference_id in their vendor_id column.
Step 4: Upload the File
- Go to Settings → Bulk Imports.
- Click Create and select Bulk Upload.
- For Type, choose Create New.
- Choose your vendors.csv (or .zip) file.
- Click Save. You'll see "Bulk Import has been queued for processing."
Checking the Results
Your import appears in the Bulk Imports list. When it finishes, the Errors column shows how many rows failed. Click (Download Errors) to get a file of the failed rows. Each row's error_message explains why it failed, and most messages start with the row's number in your spreadsheet (for example "Row 3: The name field is required.").
- Rows with errors are skipped, and every other row is still imported. Fix the failed rows and upload just those rows again.
- Duplicates aren't imported. A row is rejected if its name, or its external reference ID, matches a vendor you already have, including one added earlier in the same file. The error is "Duplicate Vendor detected. See Vendor id …".
- "An exception occurred. Please contact support for assistance." often means a state or country code that isn't valid or isn't in capitals.
Tips for Success
✅ Start from the Template download and don't add columns.
✅ Use 1 / 0 for has_gps_tracking_on_trucks, not Y/N.
✅ Use capital letters for state and country codes.
✅ For QuickBooks links, copy the External Accounting ID column from Settings → Integration → Vendors → Export to CSV. On QuickBooks Online, run Refresh Vendors first.
✅ Name the file vendors.csv, save it as CSV, and choose Create New.
If you have additional questions or need more in depth information, please feel free to send us a message using the help beacon in the lower right-hand corner.