Timekeeping—the record an auditor actually asks for
Eight hours, and everything that has to be true before you may bill them.
Arcvue Timekeeping records labor against contracts with the controls an auditor asks about—charge-code authorization at the moment of entry, supervisor approval before anything posts, and a complete trail of both. This page follows Arcvue carrying one engineer’s Tuesday through nine steps.
Synthetic. An invented engineer at an invented firm. Follow it down—the hours never change. What changes nine times is what the record is admissible as, and that is the only thing an auditor is ever really asking about.
Specimen Systems LLC · an example 120-person contractor · all figures synthetic
At eight o'clock on a Tuesday there is no record, and that is the only honest state to start from.
Nothing has been inherited yet. That is the point of this stop, and it is not a formality—it is the single assumption every later claim rests on. A timekeeping system that opens the day already filled in, with last week's hours copied forward or a schedule pre-loaded, has made the record before the work happened. Every number after that is an edit to a guess.
Federal timekeeping law is unusually blunt about this. The employee records their own time, contemporaneously, and changes leave a trail. So Arcvue will suggest—it knows which contracts EMP-1042 is authorized on, and it will offer them—but it will not enter an hour on anyone's behalf. The distinction sounds pedantic until an auditor asks who typed the eight, and the answer has to be a person.
What this rules out. Auto-fill from a schedule. Copy-forward from last week. Default hours on a new day. A supervisor entering time for someone who is out. Each of those is a convenience, and each one converts a first-hand record into a second-hand one.
He records it in a basement with no signal, and the phone keeps it until the app is next opened.
The nothing from stop 01 becomes something here, and it becomes something in the worst possible place: a government facility with no reception. This is the ordinary case in this industry, not the edge case. If contemporaneous recording only works where there is a network, then contemporaneous recording does not work.
So the record is written on the device and held there. It carries the device's own clock reading, and—separately—the server's clock reading at the moment it is finally received. Both are kept. The gap between them is not a defect to be smoothed over; it is evidence about when the work was actually recorded, which is exactly the question at issue.
The handover happens when the app is next opened or brought back to the foreground, not the moment signal returns. There is no background listener waiting on the radio: an entry made in a basement by someone who then drives home without reopening the app is still on the phone. What that does not touch is contemporaneity—the device clock already recorded when the work was entered, which is the entire reason both clocks are kept.
| Field | Value |
|---|---|
| Recorded on device | 2026-06-09 16:41:08 −04:00 |
| Network state at entry | None. Held in the device queue. |
| Received by server | 2026-06-09 18:02:55 −04:00 |
| Interval held | 1 h 21 min—until the app was next foregrounded |
| Recorded same calendar day as worked | Yes—this is the test that matters |
| Stored as | Both timestamps, permanently, on the entry itself |
Screen Arcvue mobile entry record, tenant Specimen Systems LLC. Basis the device clock establishes contemporaneity; the server clock establishes custody. Neither one alone answers an auditor, which is why neither is discarded. Synthetic sample.
Hours are not the only thing the device captures under these rules. A drive to the site is tracked by GPS with one tap, filtered for bad fixes as the distance accrues, then charged to a contract, an indirect pool, or the employee. Arcvue serves the reimbursement rate to the device, and refuses the save outright if it cannot be fetched—a mileage claim booked at $0.00 is worse than one not booked at all. The recorded point trail is the substantiation FAR 31.205-46 asks for. A receipt is photographed and read on upload—merchant, amount, date, whether it is itemized, whether it contains alcohol—so an unallowable cost is named where it was incurred rather than in a coding queue three weeks later. Both hold on the device without signal and replay when it returns, exactly as the hours do.
What arrives is a claim, and one of its two lines is refused before anybody looks at it.
The two timestamps from stop 02 arrive together with two lines of work. A system that accepts both and sorts it out later has already created the problem it will spend the month solving. EMP-1042 is authorized on SS-CTR-2026-0087. He is not authorized on SS-CTR-2026-0104, and the second line is refused at entry.
Refused, not flagged. The difference is the whole design. A flag creates a queue, a queue creates a backlog, and a backlog gets cleared under deadline by someone who was not there. A refusal happens while the person who worked the hours is still holding the phone and can say what actually happened—which is the only moment the truth is cheap.
| Line | Contract | Authorized | Hours | Outcome |
|---|---|---|---|---|
| 1 | SS-CTR-2026-0087 | Yes · LCAT-101, current period of performance | 8.0 | Accepted |
| 2 | SS-CTR-2026-0104 | No · not on the authorized charge list for this employee | 3.5 | Refused at entry |
| — | Hours admitted | 1 of 2 lines | 8.0 | Refusal recorded with reason |
Screen Arcvue charge-code authorization, tenant Specimen Systems LLC. Basis the refusal is stored, not discarded. An auditor asking what was attempted and rejected gets an answer; a system that silently drops the line cannot distinguish "never happened" from "caught". Synthetic sample.
He signs it himself, because the rule wants the person who worked the hours to be the one who says so.
One accepted line of 8.0 hours came out of stop 03. It is still only a claim. What converts a claim into evidence is an attestation by the person with first-hand knowledge. Most software treats that signature as a checkbox on the way to a workflow. It is the load-bearing element of the entire record.
So the attestation is specific about what is being asserted, it is captured with the entry rather than at the end of the month, and it cannot be given by anyone else. If EMP-1042 is on leave when the period closes, the correct outcome is an unattested timecard and a visible exception—not a supervisor signing in his place.
| Field | Value |
|---|---|
| Assertion | These hours were worked by me, on the dates and charge codes shown |
| Signed by | EMP-1042 |
| Signed at | 2026-06-09 18:03:12 −04:00 |
| May be delegated | No. There is no path for another user to attest on this employee's behalf. |
| If unsigned at period close | The timecard is reported as an exception. It is not assumed, and it is not signed for. |
| Effect | The claim from stop 03 becomes first-hand evidence |
Screen Arcvue attestation record, tenant Specimen Systems LLC. Basis an attestation that can be delegated is not an attestation. This is the one control on the page with no convenience override, and that is deliberate. Synthetic sample.
His supervisor approves it—and approval is not the thing that makes it billable.
Approval governs the ledger. Attestation governs the bill.
The attested entry from stop 04 goes to EMP-1007, who approves it when the timecard period closes. Approval is a period-level act on what the employee has already certified—not a daily queue somebody clears each morning.
Approval is a real control. It is recorded with an identity and a timestamp, and what it governs is the posting to the general ledger. What it does not govern, on a time-and-materials contract, is the invoice—because a T&M invoice is built from the timecard itself. The thing standing between an hour and a bill is the attestation at stop 04, not the approval at stop 05.
| Control | Who | Governs | Does not govern |
|---|---|---|---|
| Attestation · stop 04 | EMP-1042 | Whether the hours are evidence at all. On T&M, whether they may be billed. | The ledger posting |
| Approval · stop 05 | EMP-1007 | The posting to the general ledger, and the audit answer to "who reviewed this" | The T&M invoice |
| Recorded | Both | Identity and timestamp, permanently, on the entry | — |
Screen Arcvue approval log, tenant Specimen Systems LLC. Basis the T&M billing path reads the timecard; approval is asserted against the GL posting. Synthetic sample.
It reaches the ledger as eight hours, and the month it lands in is itself derived.
Approved at stop 05, the entry posts. Eight hours against SS-CTR-2026-0087—and now it stops being one person's Tuesday and becomes part of a period total. That total is where most timekeeping arguments quietly go wrong, because the period total is usually a number somebody typed.
It posts when it is approved, and there is no month-end labor batch behind it. The eight hours are on the contract and in the ledger inside the period they were worked—so the contract's cost position, the income statement and the balance sheet all read through today rather than through the last month somebody closed. Waiting on a close to find out how the month is going is a habit, not a constraint.
June 2026 has 22 weekdays. Twenty-two eight-hour days is 176.0 hours. Juneteenth falls on Friday the 19th and is charged to a holiday code rather than to the contract, so the hours chargeable to SS-CTR-2026-0087 are 168.0. Every burdened figure on this site descends from that 168.0—so it is shown here with its parents rather than asserted.
Screen Arcvue period spine, tenant Specimen Systems LLC. Basis the holiday is charged to a holiday code, not to the contract. That single convention is what makes the correction trail at stop 09 a real exhibit rather than an invented one. Synthetic sample. Calendar verified against 2026: June opens on a Monday, has 22 weekdays, and 19 June is a Friday.
Three views of the same ledger, and the live one is the default. Pro forma is the business as it stands right now—posted, plus everything still in flight—and it is what the statements return unless you ask for something else. Actuals is the DCAA closed-period view: posted only. Variance is the difference between the two, broken out by the state each amount is sitting in, so “what is not in the closed number yet” is answered on the screen rather than in somebody's head.
Eight hours becomes $1,186.12, and you can see every rate that made it.
The 8.0 hours of record from stop 06 meet the wage and the three indirect rates. This is the same cascade the money chain runs on a month; here it runs on a single day, at the same rates, so you can check the arithmetic without a spreadsheet.
Screen Arcvue burden cascade, tenant Specimen Systems LLC, provisional rates for 2026. Basis fringe applies to direct labor; overhead applies to labor plus fringe; G&A applies to the subtotal. Each is rounded once, to the cent, at the point it is computed. Synthetic sample.
Twenty-one working days at $1,186.12 is $24,908.52. The month as filed is $24,908.35. The seventeen cents is not an error—it is what happens when you round once per day instead of once per month, and it is why Arcvue computes the burden at the period rather than by summing rounded days.
The same eight hours bill at $1,313.60, and the rate comes from a different document on purpose.
The cost from stop 07 is $1,186.12. The bill is $1,313.60, and the two numbers have no arithmetic relationship whatsoever—the wage comes from payroll, the billing rate comes from the executed contract, and they are never allowed to touch. The day either of them derives from the other is the day a raise silently reprices a contract.
$164.20 per hour is the LCAT-101 rate on SS-CTR-2026-0087: the GSA schedule ceiling of $178.48 less the 8% discount offered at award. This one Tuesday is 8.0 hours of the 168.0 that appear on INV-2026-0614, which the accounting page follows all the way to cash.
| Scope—each row contains the one above | Hours | Rate | Billed | Cost |
|---|---|---|---|---|
| This Tuesday · 2026-06-09 | 8.0 | 164.20 | 1,313.60 | 1,186.12 |
| ⊂ LCAT-101, June 2026 | 168.0 | 164.20 | 27,585.60 | 24,908.35 |
| ⊂ Invoice INV-2026-0614, all categories | 384.5 | three rates | 47,526.00 | 42,909.46 |
Screen Arcvue T&M billing, contract SS-CTR-2026-0087. Read this one down, not across. The rows NEST—each is contained by the next—so the column does not foot and no total rule is drawn under it. A double rule tells an accountant to add the column, and this column must not be added. Basis billing rates come from the executed contract document and from nowhere else. Pay rates come from the payroll feed and from nowhere else. There is no path by which one writes the other. Synthetic sample.
A year later somebody asks who approved this hour, and the answer is one screen rather than a search.
The last stop turns out to rest on the first.
Everything above has been arriving at this. The billed hour from stop 08 is now a line on a closed invoice on a closed contract year, and an auditor has picked it—not because anything looked wrong, but because sampling is how this works.
The reason the answer is one screen is the thing that seemed most pedantic at the time: stop 01 insisting there was no record before the work, and stop 02 keeping both clocks. Those two facts are the first two rows below. A trail that begins at approval can tell you who signed off; it cannot tell you whether the record was made by the right person at the right time, which is the actual question.
| When | Who | What | Stop |
|---|---|---|---|
| 2026-06-09 08:00 | — | No entry exists for this day. Nothing pre-filled, nothing copied forward. | 01 |
| 2026-06-09 16:41 | EMP-1042 | Entered on device, offline. Device clock recorded. | 02 |
| 2026-06-09 18:02 | System | Received. Server clock recorded alongside the device clock. | 02 |
| 2026-06-09 18:02 | System | SS-CTR-2026-0104 line refused—employee not authorized. Reason stored. | 03 |
| 2026-06-09 18:03 | EMP-1042 | Attested: worked by me, on the dates and charge codes shown. | 04 |
| 2026-06-15 09:14 | EMP-1007 | Period approved for posting to the general ledger. | 05 |
| 2026-06-15 09:14 | System | Posted. 8.0 h to SS-CTR-2026-0087, inside the 168.0 h June spine. | 06 |
| 2026-06-30 close | System | Burdened at the period: $1,186.12 at 28.4 / 22.7 / 11.9. | 07 |
| 2026-07-06 | System | Billed on INV-2026-0614 at $164.20—$1,313.60. | 08 |
Screen Arcvue entry history, tenant Specimen Systems LLC. Basis nine events, none of them reconstructed. Each was written at the moment it happened, by the party named, and none of them can be edited after the fact—a correction creates a new event rather than replacing an old one. Synthetic sample.
Read the trail backward and it still holds. That is the test. Start at the billed $1,313.60 and every step above it names who did what and when, down to a Tuesday morning when there was correctly nothing there at all.