Time Cards

Time Cards

The Time Cards endpoint returns individual employee timecard entries for a given payroll period or business date.

When calling this endpont, you must provide either a payrollPeriodId or an id.

  • Provide payrollPeriodId to obtain a list of Time Cards for the given payroll period.
    • You may include an optional employeeId query parameter to filter the result to only that employeeId
  • Provide id to obtain a specific Time Card

Each record represents a single work session (clock-in and clock-out) and includes payroll, overtime, and performance metrics such as labor hours, pay calculation details, and sales contribution.


Description

Retrieves a list of timecard records for the active venue or license.

Each record reflects a single shift and contains metadata on time worked, pay, overtime, and associated sales metrics.

Response Structure

FieldTypeDescription
recordsarrayArray of timecard objects.
lengthintegerNumber of records returned.
statusstringRequest result ("SUCCESS" if successful).
countintegerTotal records matching the request.
durationnumberTime (in seconds) the API took to process the request.
serverRequestTimestampstring (ISO 8601)When the request reached the NX server.
serverResponseTimestampstring (ISO 8601)When the response was sent.
serverClientDriftnumberTime offset between client and server.

TimeCard Object

FieldTypeDescription
idstringUnique identifier for the timecard record.
updatedAtstring (ISO 8601)Timestamp when the record was last updated.
namestringEmployee’s display name in “Last, First” format.
dateTimeStartstring (ISO 8601)Clock-in timestamp for the shift.
firstNamestringEmployee’s first name.
lastNamestringEmployee’s last name.
payrollPeriodIdstringIdentifier linking this record to a specific payroll period.
parentIdstringThe corresponding employee ID.
metaobjectDetailed time, pay, and sales metrics for this timecard.

meta Object

The meta object contains structured sub-objects representing the breakdown of time, pay, and associated sales metrics.

meta.display

Formatted strings for time totals, as displayed in the NX system.

FieldTypeDescription
breakTimeDisplaystringTotal break duration (formatted HH:MM).
overtimeDisplaystringOvertime duration.
totalTimeDisplaystringTotal worked time for this shift.
payableHoursDisplaystringPayable hours after adjustments.
regularTimeDisplaystringRegular worked hours.

meta.durations

Raw duration metrics in minutes, used for calculations and compliance reporting.

FieldTypeDescription
totalMinutesnumberTotal minutes worked in the shift.
breakTotalMinutesnumberMinutes taken as unpaid breaks.
regularTimeMinutesnumberMinutes of regular paid time.
overtimeTotalMinutesnumberMinutes of total overtime.
dailyOvertimeMinutesnumberMinutes of daily overtime.
weeklyOvertimeMinutesnumberMinutes of weekly overtime.
dailyDoubleOvertimeMinutesnumberMinutes of daily double-time overtime.
sixthDayOvertimeMinutesnumberMinutes worked as sixth consecutive day overtime.
seventhDayOvertimeMinutesnumberMinutes worked as seventh consecutive day overtime.
regularRemainingMinutesnumberMinutes remaining before reaching daily overtime threshold.
cumulativeWeeklyMinutesnumberAccumulated weekly minutes worked.

meta.jobId / meta.jobName

Identifies the role or job position associated with this shift.

FieldTypeDescription
jobIdstringJob configuration identifier.
jobNamestringName of the job or role (e.g., “GM”, “Server”).

meta.pay

Breakdown of pay rates and totals for this timecard, including regular, overtime, and gratuity pay.

All totals are expressed in minor currency units (e.g., cents).

FieldTypeDescription
basePayRateTotalnumberRegular base pay earned.
regularPayTotalnumberTotal regular pay (excluding overtime).
dailyOvertimePayTotalnumberPay earned from daily overtime hours.
dailyDoubleOvertimePayTotalnumberPay from double-time daily overtime.
weeklyOvertimePayTotalnumberPay earned from weekly overtime.
sixthDayOvertimePayTotalnumberPay from sixth-day overtime.
seventhDayOvertimePayTotalnumberPay from seventh-day overtime.
gratuityTotalnumberTotal gratuities earned.
payTotalnumberCombined total pay for the shift.
payPerHour[]

Detailed pay and activity per hour block within the shift.

FieldTypeDescription
hourstringHour of the day in 24-hour format.
payIncurrednumberTotal pay accrued during this hour (minor units).
minutesWorkednumberNumber of minutes worked during this hour.

meta.timeCardSales

Sales performance metrics recorded during the employee’s active timecard window.

FieldTypeDescription
salesTotalnumberTotal sales attributed to this timecard.
tippableSalesTotalnumberPortion of sales eligible for tipping.
cashPaymentsTotalnumberTotal cash payments processed.
creditPaymentsTotalnumberTotal credit card payments processed.
nonCashPaymentsTotalnumberOther non-cash payment totals.
gratuitiesTotalnumberCombined gratuities recorded.
cashTipsTotalnumberCash tips received.
creditCardTipsTotalnumberCredit card tips received.
tipsTotalnumberAggregate tips (cash + credit).
tipsDeclarednumberTips declared by the employee.
tipsRetainedTotalnumberPortion of tips retained by the employee.
tipsDisbursednumberTips distributed to the employee.
discountsTotalnumberDiscounts applied to sales under this employee.
checkCountnumberNumber of checks handled during this shift.
guestCountnumberTotal number of guests served.
averageChecknumberAverage check amount.
averageGuestnumberAverage per-guest spend.
checkOpenAverageMinutesnumberAverage time a check remained open.
accountableCheckIdsarrayIDs of checks linked to this timecard.
tipDistributionsarrayRecords of tips distributed (if applicable).

Example Response

{
  "records": [
    {
      "id": "84a9496e-15d7-4d1a-b5ad-c73f8d95befc",
      "updatedAt": "2025-11-02T19:01:40.390Z",
      "name": "Wermes, Brandon",
      "dateTimeStart": "2025-11-02T14:32:02.365925Z",
      "firstName": "Brandon",
      "lastName": "Wermes",
      "payrollPeriodId": "5be7bc7a-b830-49a9-a84d-0b80ad45fa7c",
      "parentId": "d28f737f-c507-44b8-8f39-f9e09f55c256",
      "meta": {
        "display": {
          "breakTimeDisplay": "00:00",
          "overtimeDisplay": "00:00",
          "totalTimeDisplay": "04:32",
          "payableHoursDisplay": "04:32",
          "regularTimeDisplay": "04:32"
        },
        "durations": {
          "totalMinutes": 272,
          "regularTimeMinutes": 272,
          "overtimeTotalMinutes": 0
        },
        "jobId": "fd782280-f1fb-4e40-9727-8eb76b66be75",
        "jobName": "GM",
        "pay": {
          "regularPayTotal": 0,
          "payTotal": 0,
          "payPerHour": [
            { "hour": "06", "payIncurred": 0, "minutesWorked": 27 },
            { "hour": "07", "payIncurred": 0, "minutesWorked": 60 }
          ]
        },
        "timeCardSales": {
          "salesTotal": 0,
          "tippableSalesTotal": 0,
          "tipsTotal": 0,
          "checkCount": 0
        }
      }
    }
  ]
}


Notes

  • All monetary values (pay and sales) are expressed in minor units (e.g., cents).
  • The meta object provides both formatted display values and raw calculation data.
  • If an employee works multiple shifts in a day, each shift is represented as a separate timecard record.
  • payrollPeriodId links the timecard to its governing payroll period for accurate overtime and reporting calculations.
Language
Credentials
Basic
base64
:
URL
Response
Click Try It! to start a request and see the response here!