Account Admins can use LOIS to add, update, or delete Filevine records in bulk from a CSV file. LOIS checks every row first, shows you what passed and what didn't, and changes nothing until you approve. Currently, billing records are
Permission Required
Bulk imports in LOIS are available to account admins.
Supported Records
Currently, billing records are available for bulk import. More record types will be added to this list as they become available.
| Record area | What you can import | Details |
|---|---|---|
| Billing | Time entries, expenses and flat fees; invoices; payments, credits, write-offs and refunds; payments applied to invoices; project funds; billing codes; rate schedules and their rates | See Billing Records, below |
Prepare Your File
Tip
Give every row an external ID when you import. It makes later updates and deletes easier, and it stops the same row from being imported twice.
Your file should:
- be a CSV with a header row. If it's an Excel workbook, open it in Excel and choose File > Save As > CSV (Comma delimited).
- hold a single kind of record, such as time entries or invoices.
You can ask LOIS what to include in your file, depending on what you’d like to do, or click on a section below for more details on which columns to include.
Columns for Importing Time Entries, Expenses, and Flat Fees
| Column | Required | What to enter | |
|---|---|---|---|
| orgId | Yes | Your organization's Filevine ID | |
| projectId | Yes | The numeric Filevine project ID. Don't use an external ID here. | |
| date | Yes | The date of the work or expense, as YYYY-MM-DD (for example, 2026-04-17) | |
| billingCategory | Yes | Time, Expense or FlatFee | |
| description | Yes | The narrative, up to 4,000 characters | |
| quantity | Yes | Hours or units, greater than 0, with up to two decimal places | |
| userId | Time entries | The numeric Filevine user ID of the timekeeper, who must be an active member of the organization | |
| rate | Expenses and flat fees | The rate, greater than 0, with up to three decimal places | |
| unit | Expenses | The unit, such as each | |
| isBillable | No | true or false. Defaults to true. | |
| isChargeable | No | true or false. Defaults to true. Can be true only when isBillable is true. | |
| invoiceId | No | An existing invoice to add the entry to | |
| externalId | No | Your own ID for the row, starting with @ | |
| billingCodeOneId, billingCodeTwoId | No | Billing codes, by their external IDs | |
Rates aren't filled in from your rate schedules, so include the rate on each row. Leave out any column that isn't listed here, such as totals. Extra columns cause the check to fail.
Columns for Deleting or Updating Records
Your file for deleting items needs only an ID column that identifies each record, using either:
- The record's Filevine ID, which is listed in the execution report of the import that created it, or
- The external ID you gave the record when you imported it. External IDs start with @, for example @oldsystem-0001.
To update existing items, your file must include the ID column and the columns you’d like to change. The following fields can be updated:
- date
- quantity
- rate
- description
- is Billable/is Chargeable
- unit
- billing code one id/billing code two id
- invoiceId
Columns for Other Billing Records
- Invoices: orgId, projectId, invoiceNumber and invoiceDate are required.
- Payments, credits, write-offs and refunds: projectId, transactionType, date, total and method are required.
- Project funds: orgId, projectId, date, amount and fundType are required.
- Billing codes, rate schedules and payments applied to invoices: ask LOIS for the column list, for example "What columns does a billing code import need?"
Perform a Bulk Import
Tip
Start with a small file of 10 to 20 rows, and check the results in Filevine before you import thousands.
Attach the File and Prompt LOIS
Open a new chat in LOIS. Click the plus icon in the prompt box and choose your CSV file. You don't need to choose a project.
Type what you want in plain language, and name the organization. For example:
- "Import these time entries into the Smith Law organization."
- "Update these invoices with the new due dates in this file."
- "Delete the expenses listed in this file."
LOIS sets up the import and starts checking your file. Once it has run the initial check, LOIS responds with an import card in the chat. At this point, nothing has changed yet in Filevine.
Review and Approve
The check reads every row and flags anything that can't be imported. For most files it takes a minute or two. To see the result, ask LOIS for the check went, or click the import card to open the import panel.
In the import panel, you can review the results of the check, and see if any rows did not pass. If some rows didn't pass, you can download the validation report, which lists every row in your file, with the reason for each row that failed. LOIS can tell you how many rows failed, but the report shows which ones and why.
You then have two choices:
- Import only the rows that passed. The rows that failed are skipped.
- Fix the file and start over. Ask LOIS to cancel the import, correct the rows using the validation report, and upload the corrected file. A file is checked only once, so the corrected file starts a new import.
When you're ready, tell LOIS to go ahead, or use the button in the import panel to start the import. If some rows didn't pass, you'll be asked to confirm that only the rows that passed will be imported.
Heads Up!
To reverse an import one, delete the same records with a delete file.
To cancel before you approve, ask LOIS to cancel the import. Nothing in Filevine changes. Once an import has started, it can't always be stopped, and records already saved stay in Filevine. To remove them, use a delete file.
Check and Results
The import panel shows progress while LOIS saves your records, then shows the import as complete. You can also ask LOIS "Did the import finish?"
Download the execution report from the import panel to see the result for every row: the Filevine ID of each record created, or the reason a row wasn't. Occasionally a row passes the check but still can't be saved. If this occurs, the row will be listed in the execution report with the reason.
Note
The report link LOIS gives you in the chat works for one hour. After that, ask LOIS for a new link, or download the report from the import panel.
Troubleshooting
| What you see | What to do |
| LOIS says it can only import CSV files | Save the file as CSV and upload it again. |
| Every row failed the check | Check that you named the right organization, and that the file holds the kind of record you asked LOIS to import. |
| The check hasn't started after 10 minutes | Ask LOIS to cancel the import and set up a new one from the same file. If the new one doesn't start either, contact Filevine Support and share the import IDs LOIS shows in the chat. |
| LOIS says it can't run bulk imports | Check that you're an Account Admin. If you are, contact Filevine Support. |
Common Billing Errors
| Message in the report | What to do |
|---|---|
| Project … does not exist in org … | Check the project ID, and that you named the organization the project belongs to. |
| User … is not an active member of org … | Use the user ID of an active member of that organization. |
| Invoice … does not exist in org … | Import the invoices first, or leave invoiceId blank. |
| Required property is missing | Fill in the column named at the start of the message. |
| Value is not a valid date/time | Write the date as YYYY-MM-DD. |
| billingCategory: Value does not match any of the allowed types or formats | Use Time, Expense or FlatFee. |
| quantity: Value is not an allowed increment | Round the quantity to two decimal places. |
| Rate must be greater than 0 for Expense items | Add the rate. |
| IsChargeable cannot be true when IsBillable is false | Mark the entry billable, or set isChargeable to false. |
| External ID … already belongs to billing item … | The row was already imported. Use a new external ID, or delete the earlier record first. |
| 'projectId' value … is not a valid Int32 | The project was given as an external ID. Use the numeric Filevine project ID. |
Comments
0 comments
Article is closed for comments.