Bulk Upload Options for Project Timesheets
Three ways to create shifts in bulk from the Project Timesheets screen: Bulk Upload (XLSX), Upload with AI, and Crew Time Entry
Overview
SmartBarrel gives you three ways to create shifts in bulk from the Project Timesheets screen: Bulk Upload (XLSX), Upload with AI, and Crew Time Entry. Each method is designed for a different workflow — from structured spreadsheets to scanned paper timesheets — but all three produce the same pending shifts that go through the standard review and approval process.
Things to Consider
- Bulk Upload (XLSX) requires settings to be active: the User Permission > Bulk Upload Timesheet AND the Project > Settings > Allow Timesheet Bulk Upload setting enabled on the project. If either is missing, the upload icon will not appear.


- Upload with AI and Crew Time Entry require the Enable AI Timesheet Upload feature flag to be ON. Admins and Managers with Timesheets module access can use both features. Navigate to Settings → General → SmartBarrel AI Configuration → AI Settings to confirm the flag is enabled.

- Accepted file types for AI upload: JPEG, JPG, PNG, GIF, WEBP (up to 5 MB) and PDF (up to 20 MB). Excel/XLSX files are not accepted in the AI upload flow.
- All three methods create shifts with a Pending status — they must be reviewed and approved before they are finalized.

How It Works
Each method feeds into the same shift creation pipeline. Once submitted, shifts appear in the Timesheets screen as pending records. From there, supervisors and admins can review, edit, or approve them using the standard timesheet workflow.
Step-by-Step Instructions

Option 1 — Bulk Upload (XLSX)
Use this method when your timesheet data is already in a structured spreadsheet format.
Step 1. Navigate to the project Timesheets screen and select the date.
Step 2. Click the Upload Timesheet icon (timecard icon) in the toolbar. This icon is only visible when the project setting is enabled.
Step 3. Download the XLSX template. Fill it out with the required columns:
- Payroll ID or Phone Number (at least one is required per row)
- Shift Start Time and Shift End Time in 12-hour format
Save the file as .xls before uploading.
Step 4. Click Upload and configure the optional import rules:
- Apply Break Time Rules
- Carry-Over Productivity
- Round Up Rules
Step 5. Select a Source (required) and click upload.
Step 6. Review the pending shifts in the preview, then click Create to create and approve them.

Option 2 — Upload with AI
Use this method when your timesheet is in a non-standard format — a scanned PDF, a photo of a paper timesheet, or any supported image file.

Step 1. Navigate to the project Timesheets screen and select the date.
Step 2. Click the Import dropdown and select Upload with AI. This option is only visible when the feature flag is ON.
Step 3. In the Upload modal, drag and drop your file or click to browse. The upload button activates once a file is selected.

Step 4. Once uploaded, review the Preview Timesheet table. AI parses your file and populates the following columns
| Column | Required? |
|---|---|
| Worker | Yes |
| Start Time | Yes |
| End Time | No |
| Break Time | No |
| Location | No |
| Piecework | No |
| Classification | No |
| Cost Code | No |
| Note | No |
All fields are inline-editable. Rows with errors are highlighted in red. The Proceed button is disabled until all errors are resolved.

Step 5. In the Import Options modal, enter a required Source Name and configure any applicable rules:
- Apply Break Time Rules
- Apply Productivity
- Apply Round Up Rules
- Apply Expenses
- Notify workers via SMS
Click Create Shifts to submit.

Step 6. The Success modal confirms each worker's import status. Any failures are shown in red. After closing, you are redirected to the existing timesheet view.

Video
Option 3 — Crew Time Entry
Use this method to manually enter shifts for multiple workers at once directly in the UI. No file needed.

Step 1. Navigate to the project Timesheets screen and select the date.
Step 2. Click the Import dropdown and select Crew Time Entry. This option is only visible when the feature flag is ON.
Step 3. Use the same Preview Timesheet table as Upload with AI to add rows for each worker. All fields are inline-editable.
Step 4. Complete the Import Options and Success steps as described in Option 2 (Steps 5–6).

Video - see second part from 1:41 onwards.
Important Notes
> ⚠️ Both Bulk Upload conditions must be met. The Bulk Upload icon only appears when the user has the Bulk Upload Timesheet permission AND the Allow Timesheet Bulk Upload project setting is enabled. Check both if the icon is missing.
> ⚠️ Excel files are not supported in the AI upload flow. If your source file is an XLSX, use the Bulk Upload (XLSX) method instead.
> ⚠️ Unmatched fields require manual resolution. During AI parsing, workers, locations, and cost codes not found in the system are returned as blank. These must be filled in manually in the Preview step before proceeding.
> 💡 Crew Time Entry is a good alternative to spreadsheets. For teams that need a quick manual entry for several workers with the same punch times, and don't work from an Excel template, Crew Time Entry provides a fast, UI-driven way to enter shifts for multiple workers at once.
Why This Matters
- Eliminates manual re-entry when timesheet data arrives in formats other than a spreadsheet
- Accommodates a wide range of real-world field workflows — paper timesheets, PDFs, photos, and spreadsheets
- All three methods flow into the same pending shift review process, keeping approval workflows consistent