What is the process for uploading contracts via XLS import?

The XLS import creates contract records in bulk from a prepared spreadsheet. It is the usual route for onboarding and for migrating data out of another system.


What's in it for you


During onboarding or a data migration from another system in particular, the XLS import saves you hours or even days. You maintain the contract data once in a structured table, ContractHero maps the columns to its own fields and creates the records consistently — including category, contract partner, term and all of your own fields.


How it works


1. Prepare the import template


We provide a ContractHero import template as an Excel file — it contains all standard columns in the correct order.


If you do not have the template yet, please ask your Customer Success Manager or drop us a line at support@contracthero.com and we will send you the current version.


2. Enter the contract data in the template


Fill in one row per contract. Checklist before uploading:


  • All relevant contract information is entered in the table.
  • The Category [Kategorie] column is filled in for every row with a contract category that exists in your account (for example lease, NDA, supplier contract).
  • Date fields use a consistent format (for example DD.MM.YYYY).
  • Contract partners are named unambiguously — different spellings of the same partner are created as separate contacts during the import.
  • All changes in the file are saved (.xlsx).


3. Start the import


Go to Settings → Import & Export → Import via table [Einstellungen → Import & Export → Import via Tabelle].


A dialog opens where you can drop your prepared XLS file by drag and drop, or pick it via "Upload file" [Datei hochladen].





4. Select the contract sheet


In the next step the wizard shows you a list of the sheets in your Excel file. Select the right one, if there is more than one, and click "Next" [Weiter].






5. Map the columns


In the mapping overview [Mapping-Übersicht] you assign a matching ContractHero field to each column of your Excel file. Where a column name matches exactly, ContractHero suggests the mapping automatically — you check or change the assignment per column and confirm.





6. Finish the import


Once you confirm, ContractHero creates the contracts in one go. They then show up in your normal contract list, with the field values taken over and in the category you specified in the sheet.




Common questions


What happens to the AI analysis with XLS imports?
The XLS import creates the contract records with the values you supplied. The AI analysis does not run automatically, because no PDFs were uploaded. If you want to add PDFs to the records later, you can do that per contract or in bulk, and you can then trigger the AI analysis again. You will find a link to the contract analysis article at the end of this article.


Do I have to fill in every column of the template?
No — only the mandatory columns, typically contract title and category, need to be filled in. Empty fields stay empty in the created contract and can be added later.


Can I import my own fields as well?
Yes. If you have created your own fields in the contract field builder [Feldbaukasten], you can add them as columns in the XLS and assign them in the mapping step — the values are taken over.


What happens if a category in my table does not exist in ContractHero?
The affected rows are flagged with an error message. Either create the category in the field builder beforehand (see Related articles), or correct the name in the table.


How many contracts can I import at once?
The XLS import is built for large volumes — several hundred or several thousand records are no problem. Very large files (10,000+) should be imported in several tranches, or discussed with our support team first.


Can I undo an import?
There is no one-click rollback — imported contracts have to be deleted individually or via bulk edit [Massenbearbeitung]. We therefore recommend a small test with 5 to 10 records before the live import.


Can I import the same contract more than once?
ContractHero does not detect duplicate contracts automatically. Use unambiguous contract names, or carry your own identifier along so you can spot duplicates later. Duplicate PDFs, on the other hand, can be detected — do speak to your Customer Success Manager if you need more information on that.


Good to know


  • Test import with 5 to 10 rows. Before starting a 500-row migration, import a small part and check that the mapping works as expected.
  • Create categories first. A missing category blocks the import for the affected rows. Create categories and, where needed, your own fields in the field builder [Feldbaukasten] in advance.
  • Keep the date format consistent. If part of your data is maintained as "15.03.2026" and another part as "15/03/2026", mapping errors can occur. Standardise the format before uploading.
  • We support you with the migration. If you have a lot of contracts or a complex data structure, we go through the migration together during onboarding and check the template with you.



Updated on: 09/02/2026

Was this article helpful?

Share your feedback

Cancel

Thank you!