Daily Work tracks work done at your sites by contractors (individual tradespeople or contracting companies) and by your own employees on site duty, and turns the approved days into payments. You keep a list of contractors and work sites, assign a worker to a site for a period, record a daily log for each day worked, send each log through a two-step approval, then generate one payment per worker for a date range and mark it paid.
Use it for field and project work that is paid per day or per job outside the monthly payroll run: fit-out crews, cleaners, drivers, site supervisors. For on-call temporary workers you keep in a separate roster, use Daily Employees instead.
Typical users:
- Site supervisors or HR coordinators add contractors, sites and assignments and record daily logs.
- Supervisors give the First Approval; HR gives the HR Approval.
- Finance generates payments, pays the workers and marks the payments paid, and reads the reports.
Daily Work does not feed payroll, payslips or attendance, and it does not post to SolaCount.
Where to find it
| Sidebar | Field Workforce → Daily Work |
| URL | /daily-work (all tabs are on this one page). Old links such as /daily-work/contractors open /daily-work. |
| Plan | Your plan must include the Contractors module. Otherwise the item is hidden and the page shows Not included in your plan. |
| Permission | Manage attendance to see the menu item and work with contractors, sites, assignments and logs. The Payments and Reports tabs also need finance view access. See Permissions. |
The screen
The page is titled Daily Work, with the subtitle Manage contractors, sites, assignments, daily logs, and payments.
Summary tiles
| Tile | Counts |
|---|---|
| Active Contractors | Contractors with status Active. |
| Active Sites | Work sites marked active. |
| Active Today | Assignments whose start date is on or before today and end date on or after today. |
| Pending Approval | Daily logs that are Submitted or have their first approval (waiting for HR). Highlighted in amber. |
The tiles refresh when you add a contractor, site or assignment. After approving logs, reload the page to refresh Pending Approval.
Tabs
| Tab | What it holds | Card button (top right) |
|---|---|---|
| Contractors | Individuals and companies you hire. | Add |
| Work Sites | Places where work is done. | Add |
| Assignments | Who works at which site, from when to when, at what rate. | Add |
| Daily Logs | One record per worker per day, with its approval status. | Add |
| Payments | Payments generated from approved logs. Finance view only. | Generate Payments |
| Reports | Four operational reports. Finance view only. | (filter bar) |
Each tab lists the 20 most recent records and has no paging, search or filters. Older records are kept; they just aren't listed on the tab. When a tab has nothing yet you see No records found.
Amounts on this page are shown with two decimals followed by the code JOD, whatever your company currency. Read the number as an amount in your own currency.
Contractors
The contractors table
| Column | Meaning |
|---|---|
| Worker | Full name (individual) or company name (company). |
| Worker Type | Individual or Company. |
| Phone | Phone number, or —. |
| Default Rate | Default rate and rate type, for example 350.00 JOD · daily. |
| Status | Active or Inactive. |
| (button) | Delete. |
There is no edit button. To change a contractor's details, add a corrected contractor and use it on new assignments.
Add a contractor
-
Open the Contractors tab and click Add.
-
Fill in the window:
Field Required Rules / defaults Notes Worker Type Yes Individual (default) or Company. Switches the name field below. Full Name / Company Name Yes (marked) Up to 255 characters. Shown as Full Name for an individual and Company Name for a company. Always fill it in; a contractor without a name shows as #id elsewhere. Phone No Up to 30 characters. Default Rate No A number, 0 or more. Used by a log when neither the log nor the assignment has a rate. Rate Type No Hourly, Daily (default) or Per Piece. Stored for reference. Assignments created on this screen always calculate per day; see How the log total is calculated. Payment Method No Cash (default) or Bank. For your reference. Generated payments for contractors default to Bank. Notes No Up to 2,000 characters. Trade licence number, bank details, contact person. -
Click Save. You see Updated successfully. The new contractor is Active.
Delete a contractor
- Click Delete on the row.
- Confirm Delete this record? — This action cannot be undone. — by clicking Delete.
SolaHR does not check whether the contractor still has assignments, logs or payments. Those records stay, but show the worker as #id afterwards. Only delete a contractor added by mistake.
Work sites
The sites table
| Column | Meaning |
|---|---|
| Name | Site name. |
| Address | Address, or —. |
| Status | Active or Inactive. |
Sites have no edit or delete on this tab. The same site list is used by Daily Employees assignments.
Add a work site
- Open Work Sites and click Add.
- Enter Name (required, up to 255 characters), Address (optional) and Notes (optional).
- Click Save. The site is created as Active and appears in the assignment form.
Assignments
An assignment says this worker works at this site between these dates. Every daily log belongs to an assignment.
The assignments table
| Column | Meaning |
|---|---|
| Worker | Employee or contractor name, with employee or contractor underneath. |
| Work Site | The site. |
| Start Date / End Date | The assignment period. |
| Default Rate | Rate for logs on this assignment, or —. |
Create an assignment
-
Open Assignments and click Add.
-
Fill in the window:
Field Required Rules / defaults Notes Worker Type Yes Employee (default) or Contractors. Changing it clears Worker. Worker Yes For Employee: your active SolaHR employees. For Contractors: every contractor, active or not. Work Site Yes Any site in the list. Add the site first on Work Sites. Start Date Yes Defaults to today. End Date Yes Defaults to today. Must be on or after Start Date. Set the real end of the job, otherwise only today can be logged. Default Rate No A number, 0 or more. The day rate for this worker on this site. -
Click Save. You see Updated successfully.
If the end date is before the start date, or the worker or site is missing, the window stays open and the problems are listed at the top.
Assignments cannot be edited or deleted from this tab. If the period was wrong, create a new assignment with the right dates.
Daily logs
The logs table
Logs are listed by work date, newest first.
| Column | Meaning |
|---|---|
| Work Date | The day worked. |
| Worker | Employee or contractor. |
| Work Site | The assignment's site. |
| Hours | Hours entered, or —. |
| Total | Amount owed for this log. |
| Status | Draft, Submitted, approved level1, approved hr, Rejected or Paid. |
| (buttons) | The next workflow step: Submit, First Approval, HR Approval, Reject. |
Record a daily log
-
Open Daily Logs and click Add.
-
Fill in the window:
Field Required Rules / defaults Notes Assignments Yes Shows worker · site for the 100 most recent assignments. Work Date Yes Defaults to today. Must fall inside the assignment's start and end dates. Only one log per assignment per day can be recorded on this screen. Hours No 0 or more, steps of 0.25. For the record; shown in the table and the site sheet. Quantity No 0 or more. For the record, for example 120. Unit No Up to 30 characters. For example m², trips, pallets. Rate No 0 or more. The amount for this day. Leave blank to use the assignment's or worker's default. Description No Up to 2,000 characters. What was done. -
Click Save. You see Updated successfully; the log is a Draft.
If the work date is outside the assignment period, or a log already exists for that assignment and day, the window stays open with the reason at the top (these two messages are shown in Arabic).
How the log total is calculated
Assignments created on this screen calculate per day, so the log Total is simply the day's rate. Hours and quantity are stored but do not multiply the rate. The rate comes from the first of these that has a value:
| Order | Source |
|---|---|
| 1 | Rate typed on the log. |
| 2 | The assignment's Default Rate. |
| 3 | For a contractor: the contractor's Default Rate. For an employee: the employee's monthly salary ÷ 30, rounded to 2 decimals. |
| 4 | 0. |
For hourly or per-piece work, work out the day's amount and type it in Rate. Keep the hours or quantity and unit on the log so the calculation is visible. Example: 120 m² × 45 = 5,400 → Quantity 120, Unit m², Rate 5400, Total 5,400.00.
Submit a log for approval
- On a Draft row, click Submit.
- Confirm Submit work log — Send this work log to the approval workflow. — with Submit work log.
- The status becomes Submitted and Pending Approval goes up by one (after reload).
First approval and HR approval
- On a Submitted row, the supervisor clicks First Approval.
- Confirm Approve work log — Approve the recorded work and advance it to the next workflow stage. — with Approve work log. The status becomes approved level1 and SolaHR records who approved it and when.
- HR then clicks HR Approval on the same row and confirms the same dialog. The status becomes approved hr. The log is now ready to be paid and is locked against changes.
Both steps need the same permission, and SolaHR does not stop one person from doing both. If you want two different people, agree it as a team rule.
Reject a log
- On a Submitted or approved level1 row, click Reject.
- In the Reject window, type the Reason (required).
- Click Reject. The status becomes Rejected.
Draft, rejected and approved-hr logs cannot be edited, resubmitted or deleted from this tab, and a rejected log still occupies its day on that assignment. Check each log before you submit it. If a rejected day must be paid after all, contact Solavel support.
Statuses and lifecycle
Draft ──Submit──▶ Submitted ──First Approval──▶ approved level1 ──HR Approval──▶ approved hr ──Mark Paid (payment)──▶ Paid
│ │
└────────────Reject──────────────┴──▶ Rejected
| Status | Meaning | Buttons on the row | Picked up by Generate Payments? |
|---|---|---|---|
| Draft | Saved, not sent. | Submit | No |
| Submitted | Waiting for the first approval. Counts in Pending Approval. | First Approval, Reject | No |
| approved level1 | First approval given, waiting for HR. Counts in Pending Approval. | HR Approval, Reject | No |
| approved hr | Fully approved; locked. | None | Yes, if not already in a payment |
| Rejected | Returned with a reason. | None | No |
| Paid | Its payment was marked paid. | None | No (already paid) |
Payments
The Payments tab appears only if you have finance view access.
The payments table
| Column | Meaning |
|---|---|
| Worker | Employee or contractor being paid. |
| Start Date / End Date | The date range used when the payment was generated. |
| Total | Sum of the logs in the payment. |
| Status | Pending or Paid. |
| (button) | Mark Paid on pending payments. |
Generate payments
- Click Generate Payments (top right of the card).
- Set the two dates (From defaults to the first day of this month, To to today; To must be on or after From).
- Click Save.
SolaHR takes every log with status approved hr, a work date inside the range, and not already in a payment, and creates one Pending payment per worker with the sum of those logs. Contractor payments default to the Bank method and employee payments to Cash. You see Updated successfully. If no logs qualify, nothing is created.
Running it again for the same range does not double-pay: logs already in a payment (pending or paid) are skipped.
Mark a payment paid
- Pay the worker.
- Click Mark Paid on the pending payment.
- In the window, check Date (defaults to today), Payment Method (Bank by default; change to Cash if needed) and type the Reference, for example the transfer number.
- Click Save.
The payment becomes Paid with the date, method, reference and your name, and every log in it becomes Paid. A paid payment cannot be marked paid again.
There is no export button on this tab.
Reports
The Reports tab appears only if you have finance view access.
- Pick the report.
- Set the from and to dates (defaults: first of this month to today) and, optionally, a Work Site.
- Click Load Report.
Results appear as tiles (single values) and a table whose columns use the field names below.
| Report | What it lists | Filters used |
|---|---|---|
| Daily Site Sheet | Every log in the range, any status: log id, work date, site name, worker name, worker type, hours, quantity, unit, status, total amount. | Dates, site |
| Contractor Cost | Contractor logs only (any status), grouped per site per day: site name, work date, logs count, total amount. | Dates, site |
| Pending Log Aging | Logs that are Submitted or have first approval: log id, work date, site name, status, pending days (since submission), total amount. | Site only (dates ignored) |
| Paid vs Unpaid | Tiles only: paid total (Paid logs), unpaid total (Submitted, first-approved and HR-approved logs; drafts and rejected excluded), paid payments count and pending payments count (payments whose period starts in the range). | Dates only (site ignored) |
Permissions
| Access | Menu item and Contractors / Sites / Assignments / Logs (add, submit, approve, reject) | Payments and Reports tabs | Generate Payments, Mark Paid |
|---|---|---|---|
| Organization Owner | Yes | Yes | Yes |
| SolaHR Administrator | Yes | Yes | Yes |
| General SolaHR manager access (organization-wide manager role) | Yes | Yes | Yes |
| General SolaHR member access | No | — | — |
| Scoped presets: HR Manager, Department Manager, Attendance Recorder, HR Viewer | No. These roles work on the operations screen only; SolaHR refuses this page for them. | No | No |
| A custom role with Manage attendance but without finance access | Yes | No (tabs hidden) | No |
Everyone who can open the page sees all contractors, sites, assignments and logs in the organization; it is not limited by Team access departments.
Worked example 1: one supervisor day
Al Noor Trading LLC sends its own employee Omar Haddad to supervise the new showroom at Dubai Main on 6 October 2026, at AED 250 per day.
- Work Sites → Add: Name Dubai Main – Showroom, Address Al Quoz Industrial 3, Dubai → Save.
- Assignments → Add: Worker Type Employee, Worker Omar Haddad, Work Site Dubai Main – Showroom, Start Date 2026-10-01, End Date 2026-10-15, Default Rate 250 → Save. Active Today shows 1.
- Daily Logs → Add: Assignments Omar Haddad · Dubai Main – Showroom, Work Date 2026-10-06, Hours 9, Description Supervised tiling and electrical first fix → Save. The row shows Total 250.00 JOD, status Draft (the rate came from the assignment).
- Submit → Submit work log. Status Submitted.
- The projects manager clicks First Approval → Approve work log; HR clicks HR Approval → Approve work log. Status approved hr.
Worked example 2: a tiling contractor, from first day to payment
Al Noor hires Gulf Tiles Contracting (a company) to tile the showroom floor from 1 to 15 October 2026 and pays by bank transfer. Their quote is AED 45 per m².
-
Contractors → Add: Worker Type Company, Company Name Gulf Tiles Contracting, Phone +971 4 333 2210, Default Rate 45, Rate Type Per Piece, Payment Method Bank, Notes Trade licence 778120; IBAN AE07 0331 2345 6789 0123 456 → Save.
-
Assignments → Add: Worker Type Contractors, Worker Gulf Tiles Contracting, Work Site Dubai Main – Showroom, 2026-10-01 to 2026-10-15, Default Rate left blank → Save.
-
Each evening the foreman records the day's area and works out the amount:
Work Date Quantity Unit Rate typed Total 2026-10-04 110 m² 4950 4,950.00 2026-10-05 120 m² 5400 5,400.00 2026-10-06 95 m² 4275 4,275.00 2026-10-07 130 m² 5850 5,850.00 He submits all four. Pending Approval shows 4 (plus Omar's log if still pending).
-
Omar Haddad gives First Approval to all four. On 7 October HR finds 130 m² is more than the site sheet signed by the client (125 m²) and clicks Reject with Reason Client sheet shows 125 m², not 130. That log is Rejected and cannot be re-entered for the same day on this screen, so HR asks Solavel support to correct it.
-
HR gives HR Approval to the other three. They are approved hr.
-
On 16 October finance opens Payments → Generate Payments, From 2026-10-01, To 2026-10-15 → Save. Two pending payments appear:
Worker Start Date End Date Total Status Gulf Tiles Contracting 1 Oct 2026 15 Oct 2026 14,625.00 JOD Pending Omar Haddad 1 Oct 2026 15 Oct 2026 250.00 JOD Pending -
After the bank transfer of AED 14,625.00, finance clicks Mark Paid on Gulf Tiles, keeps Payment Method Bank, Reference TRF-88213 → Save. The payment and its three logs are Paid. Omar's AED 250 is paid in cash: Mark Paid, Payment Method Cash, Reference PC-1043.
-
Reports → Paid vs Unpaid, 2026-10-01 to 2026-10-15 → Load Report shows paid total 14,875 and paid payments count 2. Contractor Cost with site Dubai Main – Showroom shows one row per day for Gulf Tiles, including the rejected 7 October log (the report includes every status).
How it connects
| Area | Connection |
|---|---|
| Employees | Active employees can be assigned to sites. With no rate set, an employee's day rate is their monthly salary ÷ 30. |
| Payroll | None. Daily Work payments are not added to payroll runs or payslips. Don't pay the same day twice through payroll. |
| Attendance | None. Logs are not attendance records and don't affect absence or overtime. |
| Daily Employees | Shares the work site list. Daily workers, their assignments, logs and payments are separate. |
| SolaCount | None. Record the transfers in your accounts as usual. |
Messages you may see
| Message | Meaning |
|---|---|
| Updated successfully | The record was saved or the action worked. |
| Errors listed at the top of a window | Missing or invalid values, a work date outside the assignment, or a second log for the same day. Some of these are shown in Arabic. |
| You do not have access to this action. Contact your workspace administrator. | Your role lacks the permission, for example generating payments without finance manage access. |
| Status not confirmed: We could not confirm whether the change completed. Check the current status before submitting again. | The connection dropped while submitting or approving. Click Check current status or reload before you click again. |
Tips and common problems
| Problem | Cause | Fix |
|---|---|---|
| Payments and Reports tabs are missing. | No finance view access. | Ask an owner or SolaHR Administrator. |
| A log isn't in the generated payment. | It isn't approved hr, its work date is outside the range, or it is already in another payment. | Finish both approvals; widen the range; check the existing payments. |
| The total is the rate, not hours × rate. | Assignments made on this screen calculate per day. | Type the day's amount in Rate; see How the log total is calculated. |
| Total is 0.00. | No rate on the log, the assignment or the contractor. | Set a Default Rate on new assignments, or type Rate on each log. |
| "A log already exists" when adding a log. | That assignment already has a log for that day (including a rejected one). | One log per assignment per day; put the whole day's work in one log. |
| A worker is missing from the assignment form. | Employees must be active. | Reactivate the employee, or add the person as a contractor. |
| The log form doesn't list my assignment. | Only the 100 most recent assignments are offered. | Contact Solavel support if you have more than 100 open assignments. |
| An old log or payment isn't on the tab. | Tabs show the 20 most recent records. | Use Reports → Daily Site Sheet for a date range. |
| Amounts show JOD. | The page labels every amount with that code. | Read the figures in your own currency. |