Timestamp Rules
QR-V™ uses standardized timestamps to ensure consistent verification results across issuers, systems, and environments.
These rules define how time is recorded, stored, and evaluated within registry-backed records and verification responses.
—
Purpose
Timestamp rules exist to ensure that verification outcomes are consistent, auditable, and independent of local system time.
- Establish a single authoritative time reference
- Support deterministic verification outcomes
- Enable expiration and lifecycle enforcement
- Provide auditability across verification events
Verification decisions MUST be based on registry timestamps, not client or browser time.
All time-based validation is derived from authoritative system records.
—
Timestamp Format Standard
QR-V™ uses ISO 8601 UTC timestamps for all system records and verification responses.
YYYY-MM-DDTHH:MM:SSZ
- UTC only — no local timezone storage
- Z suffix required — indicates UTC standard
- Second-level precision — minimum required precision
—
Core Timestamp Fields
Time the record was initially registered
Last modification timestamp
Time the credential or record became active
Optional expiration timestamp
Timestamp when record was invalidated
Time of verification response generation
—
Verification Logic
Verification status is derived by comparing registry timestamps against the current system evaluation time.
Status Evaluation Rules
- Verified: issued_at ≤ now AND (expires_at is null OR expires_at > now) AND revoked_at is null
- Expired: expires_at ≤ now
- Revoked: revoked_at exists
- Pending: issued_at > now (future activation)
—
Evaluation Source of Time
- Server-side system clock is authoritative
- Client-provided timestamps are ignored for validation
- Verification API uses synchronized time sources
- Time drift must be controlled at infrastructure level
—
Audit and Logging
All verification events should include a timestamp for traceability and audit purposes.
- Each verification response includes verified_at
- Issuer actions update updated_at
- Revocation events record revoked_at
- Logs should maintain immutable timestamp history
—
Example Record
{
"record_id": "QRV-123456",
"status": "verified",
"created_at": "2026-03-01T10:00:00Z",
"issued_at": "2026-03-01T10:05:00Z",
"expires_at": "2027-03-01T10:05:00Z",
"revoked_at": null,
"verified_at": "2026-03-19T14:00:00Z"
}
—
Integrate Time-Based Verification
Use QRVP-1 timestamp rules to ensure consistent verification across all systems and environments.
—


