NCR Counterpoint to iPaaS.com Timesheet Mapping Documentation
Summary
This mapping collection brings NCR Counterpoint timesheets into iPaaS.com. A timesheet in Counterpoint is a day's worth of clocked time for one user at one store: it carries who the time belongs to and which department they worked in, and it holds the individual clock-in and clock-out entries that make up the day.
ID Format
Manual Sync id: a timesheet's identity in NCR Counterpoint is made up of three values together — the store it was recorded at, the user it belongs to, and its date. This collection reads inbound from Counterpoint, so the id entered on the Manual Sync page is built from those Counterpoint-side values rather than from an iPaaS.com id.
External ID saved after transfer: once a timesheet has been transferred, iPaaS.com records that same three-part Counterpoint identity as the external ID on a dedicated platform-managed external-ID record, with the three values joined by a pipe. That record — not any field on the timesheet itself — is the primary match that routes every subsequent transfer of the same timesheet to the existing iPaaS.com record rather than creating a second one.
Deleted Record Support
This family does not itself carry deletions. Where a separate Delete collection exists for this entity it handles removals from Counterpoint to iPaaS.com; otherwise a removal in Counterpoint is not propagated. See NCR Counterpoint Known Limitations.
Mapping Collection Status
Status: Enabled. No mapping filter is applied.
Trigger Events: see Transfer Methods in the collection description; automatic transfers require the relevant Outbound/Inbound Data Flow subscriptions to be enabled.
Supported Child Collections
Add/Update NCR Counterpoint Timesheet Entry TO iPaaS.com: carries the individual clock-in and clock-out entries that make up the timesheet, transferred as part of it. The timesheet's start, end and total-hours figures are all derived from those entries rather than recorded on the timesheet itself, so the two collections describe the same day from different levels.
System Caveats
NCR Counterpoint Caveats
The timesheet holds no start, end or total of its own: NCR Counterpoint records clock-ins and clock-outs against the individual entries, not against the day. Every figure this collection reports at timesheet level is calculated from the entries beneath it, which is why those three fields have no single Counterpoint field behind them.
Voided entries are excluded from the figures: an entry that has been voided in Counterpoint contributes nothing to the start, end or total hours. That is what makes a void meaningful — the time stops counting. It also means a timesheet whose entries have all been voided reports no worked time, and subscribers or their MiSP should validate what the start and end dates arrive as for a timesheet of that kind in a staging environment before treating those figures as reportable.
Open entries under-report the total: an entry clocked in but not yet clocked out contributes nothing to the total hours, so a timesheet transferred while someone is still on the clock reports the time already closed rather than counting up to the present. Transferring the timesheet again once the entry is closed brings the total current.
The department may be empty: Counterpoint permits a timesheet to carry no department, and installations that do not use departments leave it empty on every record. The shipped mapping applies a department label regardless, so the note arrives carrying the label and nothing after it. Subscribers or their MiSP who do not use departments should replace that mapping rather than leave it supplying an empty label.
iPaaS.com Caveats
The user must reach iPaaS.com before their timesheets will: this collection does not transfer the user — it looks up the iPaaS.com employee that the timesheet's Counterpoint user was previously transferred to, and supplies that employee's id. Users are carried by Add/Update NCR Counterpoint User TO iPaaS.com and are not transferred automatically as a prerequisite of a timesheet. Where the user has not been transferred, there is no employee to resolve, the required employee field arrives empty, and the timesheet is rejected rather than created without one. Subscribers or their MiSP should transfer users before enabling this collection, and should expect rejections for any timesheet belonging to a user who has not been transferred. Rejections surface at Dashboard / Integration Monitoring / Error Logs.
Integration Flow
No records are transferred as prerequisites for this collection. The records it references are expected to exist already.
The record is sent to iPaaS.com, where subsequent transfers are routed by the external ID recorded on transfer.
Child records transfer as part of the same transfer — the collections listed under Supported Child Collections above.
Mappings
Add/Update NCR Counterpoint Timesheet TO iPaaS.com
Mapping Type | Source Field (NCR Counterpoint) | Destination Field (iPaaS.com) | Description |
Dynamic Formula |
| EmployeeId | Required. IPaaS.com rejects a timesheet that does not carry a valid employee id. |
Dynamic Formula |
| StartDateTime | Optional. . |
Dynamic Formula |
| EndDateTime | Optional. . |
Dynamic Formula |
| TotalHours | Optional. . |
Dynamic Formula |
| Notes | Optional. . |
EmployeeId — Dynamic Formula
Source: GetSpaceportId(USR_ID, "Employee", SpaceportSystemId) · Destination: EmployeeId
This is a required field, and it is the only one this collection cannot transfer without. iPaaS.com rejects a timesheet that does not carry a valid employee id.
The value is not read from the timesheet itself. NCR Counterpoint records a timesheet against a user id, and this mapping looks up the iPaaS.com employee that the same Counterpoint user was previously transferred to, then supplies that employee's iPaaS.com id.
That lookup is what subscribers or their MiSP need to plan around: the user must already have reached iPaaS.com before their timesheets will transfer. Users are carried by Add/Update NCR Counterpoint User TO iPaaS.com, and they are not transferred automatically as a prerequisite of a timesheet — if the user has not been transferred, there is no employee for this mapping to resolve, the required field arrives empty, and the timesheet is rejected rather than created without an employee. Subscribers or their MiSP should transfer users before enabling this collection, and should expect rejections for any timesheet belonging to a user who has not been transferred.
StartDateTime — Dynamic Formula
Source: TimecardStartDTFromLines(Lines) · Destination: StartDateTime
This is an optional field. The timesheet's start — the earliest clock-in across the entries it contains.
NCR Counterpoint does not record a start time on the timesheet itself; it records clock-ins on the individual entries. This mapping therefore reads the entries and takes the earliest clock-in among them. Voided entries are ignored, so a clock-in that was later voided does not pull the start time earlier than it should be.
A timesheet whose entries carry no clock-in time at all — which NCR Counterpoint permits, and which is also the case when every entry has been voided — has nothing for this mapping to read. Subscribers or their MiSP should validate the behavior in a staging environment before relying on this field for timesheets of that kind, and should check the start and end dates that arrive for a timesheet with only voided entries before treating those figures as reportable.
EndDateTime — Dynamic Formula
Source: TimecardEndDTFromLines(Lines) · Destination: EndDateTime
This is an optional field. The timesheet's end — the latest clock-out across the entries it contains.
As with the start, NCR Counterpoint records clock-outs on the entries rather than on the timesheet, so this mapping reads the entries and takes the latest clock-out among them. Voided entries are ignored.
An entry that has been clocked in but not yet clocked out contributes nothing to this figure, so a timesheet that is still open reports the latest clock-out from the entries that have been closed rather than reporting the timesheet as unfinished. The same staging check described on the start date applies here.
TotalHours — Dynamic Formula
Source: TimecardTotalHoursFromLines(Lines) · Destination: TotalHours
This is an optional field. The total hours the timesheet accounts for.
The figure is calculated rather than read. NCR Counterpoint records clock-in and clock-out times on each entry; this mapping adds up the elapsed time of every entry that has both a clock-in and a clock-out and has not been voided, and reports the result in hours rounded to three decimal places. The rounding is there so that a calculation does not arrive as a value such as 1.999999999 hours.
Two consequences worth knowing. An entry that is still open — clocked in but not clocked out — contributes nothing to the total, so the hours on a timesheet in progress under-report the time actually worked so far rather than counting up to the present moment. And a timesheet with no entries at all reports zero hours rather than arriving empty.
Notes — Dynamic Formula
Source: "DEPT: " + DEPT · Destination: Notes
This is an optional field. It carries the department the timesheet was recorded against, prefixed with a label so the value reads as a department rather than as a bare code.
NCR Counterpoint records the department as a code of up to 10 characters and permits it to be empty — most commonly on installations that do not use departments at all. Where the department is empty, the label is still applied, so the note arrives carrying the prefix and nothing after it. Subscribers or their MiSP who do not use departments, or who want something else in the timesheet's notes, should replace this mapping rather than leave it supplying an empty label.
The value is the department code as Counterpoint holds it, not a department name — Counterpoint does not carry a description for it on the timesheet.
Add/Update NCR Counterpoint Timesheet Entry TO iPaaS.com
Parent: Add/Update NCR Counterpoint Timesheet TO iPaaS.com.
Mapping Type | Source Field (NCR Counterpoint) | Destination Field (iPaaS.com) | Description |
Field |
| Date | Optional. The date the entry was recorded against. |
Static |
| EntryType | Required. . |
Field |
| StartTime | Optional. The moment the entry was clocked in, carried across as a full date and time rather than a time alone. |
Field |
| EndTime | Optional. The moment the entry was clocked out, carried across as a full date and time. |
Dynamic Formula | — | Status | Optional. It reports where the entry has reached in Counterpoint's own payroll handling, resolved to one of three values. |
Field |
| Notes | Optional. . |
Date — Field
Source: TIMCRD_DAT · Destination: Date
This is an optional field, but it should be mapped for any meaningful timesheet sync. The date the entry was recorded against.
NCR Counterpoint requires this value on every entry and uses it as part of the entry's identity, so it always arrives populated. It is the date the timesheet belongs to rather than the moment the entry was clocked — an entry clocked in late at night carries the timesheet's date, not the calendar date of the clock-in.
EntryType — Static
Source: Hourly Work · Destination: EntryType
This is a required field. iPaaS.com rejects a timesheet entry that does not carry an entry type.
NCR Counterpoint does not record a type against a timecard entry — an entry is a clock-in and clock-out pair and nothing more — so there is no Counterpoint value to read and this mapping supplies a fixed one instead. Every entry this collection transfers is reported to iPaaS.com as Hourly Work.
This is a genuine constant rather than an example value, and it does not need changing for a typical install. Subscribers or their MiSP whose iPaaS.com processes distinguish between kinds of time — overtime, paid leave, training — should be aware that this collection cannot make that distinction, because the source data does not carry it: every entry arrives as the same type regardless of what the time was actually for.
StartTime — Field
Source: CLCK_IN_DT · Destination: StartTime
This is an optional field, but it should be mapped for any meaningful timesheet sync. The moment the entry was clocked in, carried across as a full date and time rather than a time alone.
NCR Counterpoint permits this to be empty, so an entry can transfer without it. It also feeds the timesheet's own start and total figures on the parent collection, Add/Update NCR Counterpoint Timesheet TO iPaaS.com, which reads the clock-ins across all of a timesheet's entries — so removing this mapping affects the parent's figures as well as this entry's.
EndTime — Field
Source: CLCK_OUT_DT · Destination: EndTime
This is an optional field, but it should be mapped for any meaningful timesheet sync. The moment the entry was clocked out, carried across as a full date and time.
NCR Counterpoint permits this to be empty, and an entry that has been clocked in but not yet clocked out legitimately has no value here — that is what an open entry looks like rather than an error. An entry in that state transfers with a start time and no end time.
Like the clock-in, this feeds the parent timesheet's end and total figures. An entry with no clock-out contributes nothing to the parent's total hours, so time on an open entry is not counted until the entry is closed and the timesheet transfers again.
Status — Dynamic Formula
Source: — · Destination: Status
This is an optional field, but it should be mapped for any meaningful timesheet sync. It reports where the entry has reached in Counterpoint's own payroll handling, resolved to one of three values.
An entry that has been voided in NCR Counterpoint reports Void. Otherwise the entry reports Not exported or Exported, according to whether Counterpoint has yet exported it to payroll. A new entry is neither voided nor exported, so the value a freshly clocked entry arrives with is Not exported.
Two points follow. The void check is tested first, so an entry that was exported and later voided reports Void rather than Exported — the fact that it was once exported is not carried across. And voided entries are excluded from the parent timesheet's start, end and total-hours figures, so an entry reporting Void here is one whose time is deliberately absent from the totals on Add/Update NCR Counterpoint Timesheet TO iPaaS.com.
Subscribers or their MiSP whose iPaaS.com processes need to tell an exported-then-voided entry apart from one voided before export should validate the behavior in a staging environment before relying on it in production.
Notes — Field
Source: COMMNT · Destination: Notes
This is an optional field. The comment recorded against the entry in NCR Counterpoint, carried across unchanged.
NCR Counterpoint stores this as text of up to 50 characters and permits it to be empty; most entries have no comment recorded, and those transfer with the field empty. Where a comment is longer than the destination permits, the value is shortened to fit rather than rejected, and the trimmed part is not recorded anywhere.
Error Handling
Errors raised while transferring these records surface at Dashboard / Integration Monitoring / Error Logs. The specific messages, their causes and their resolutions are documented in NCR Counterpoint Error Messages. A record stopped by an error is not retried automatically; it must be resolved manually.
Testing & Validation
Replace every placeholder value called out above with one from the target Counterpoint installation, and confirm each exists in Counterpoint.
Transfer a single record through Manual Sync and confirm it appears in Counterpoint as expected.
Confirm any child records transferred with the parent.
Enable the relevant triggers and confirm a new record transfers automatically, and that a change updates the same Counterpoint record rather than creating a second one.
Attempt a transfer with a missing required field and confirm the expected error appears at Dashboard / Integration Monitoring / Error Logs.
Additional Notes
At the time this documentation was written:
Timesheets are a one-way record: this collection brings timesheets into iPaaS.com. Nothing writes them back, so a timesheet corrected in iPaaS.com does not update NCR Counterpoint, and Counterpoint remains the system of record for clocked time.
These and other runtime behaviors are documented in NCR Counterpoint Known Limitations.
Related Documents
NCR Counterpoint Connections and Settings: the credentials and subscription settings that connect iPaaS.com to Counterpoint.
NCR Counterpoint Installation Instructions: installing CPHive and CPWebhooks on the Counterpoint server.
NCR Counterpoint Known Limitations: what the integration does not do, and the values to replace before go-live.
NCR Counterpoint Error Messages: the errors a transfer can raise, what causes them, and how to resolve them.
NCR Counterpoint API Endpoints: the CPHive endpoints the integration calls.
