Skip to main content

NetSuite TimeBill From iPaaS.com Mapping Documentation

NetSuite TimeBill From iPaaS.com Mapping Documentation

An iPaaS.com timesheet can be created and updated in NetSuite as a time bill. The integration resolves the employee, sets the transaction date and total hours, and resolves the location against the employee's subsidiary. Time bills transfer on demand from the iPaaS.com Manual Sync page or automatically when outbound triggers are enabled.

ID Format

Manual Sync ID Format

Enter the iPaaS.com record ID of the timesheet on the Manual Sync page.

External ID Format

On a successful transfer, the iPaaS.com timesheet ID is written to the NetSuite time bill's External ID, and the NetSuite internal ID is recorded as the external-ID link on the iPaaS.com record, so subsequent transfers update the existing time bill rather than creating a duplicate.

Deleted Record Support

Outbound delete is not provided for time bills — there is no TimeBill delete collection. Remove or adjust the time bill in NetSuite using your normal process.

Mapping Collection Status

  • Status: Enabled (a single Add/Update collection).

  • Trigger Events: Create and Update. Automatic transfers fire on the iPaaS.com outbound triggers subscribed in Outbound Data Flows; the collection is also available on demand from the Manual Sync page.

Duplicate or Conflicting Mappings

A single Add/Update collection writes the time bill; matching depends on the external-ID link.

Supported Child Collections

None. Time entries are summarized into the time bill's transaction date and total hours.

System Caveats

NetSuite Caveats

  • Employee, date, and total hours are required. A time bill must resolve to an existing NetSuite employee, and carry a transaction date and total hours.

  • Employee handling. You don't need to transfer the employee first. The integration checks for the linked employee and, if it isn't found, attempts to create it as a prerequisite ("Unable to create employee. This will prevent the transfer of the Timebill." if that fails). See NetSuite Employee From iPaaS.com Mapping Documentation.

  • Location must belong to the employee's subsidiary. The location is resolved against the employee, so it must be valid for that employee's subsidiary; otherwise the location does not resolve.

iPaaS.com Caveats

  • Timesheet data type. This collection writes from the iPaaS.com Timesheet entity.

  • Location comes from custom fields. The location id / reference name are read from the timesheet custom fields LocationId / LocationRefName and resolved against the employee.

Setup Requirements

  • Employees are created for you if missing. A referenced employee that is not yet linked in NetSuite is created automatically as a prerequisite when the time bill transfers; you do not need to transfer employees first. A failed employee creation blocks the time bill.

  • Subscription settings: enable the iPaaS.com outbound triggers in Outbound Data Flows (in the iPaaS.com subscription configuration) for automatic transfers; until then, only Manual Sync transfers run.

Authentication

The integration authenticates to NetSuite using the connection configured for the integration (see NetSuite Connections and Settings).

Integration Flow

  1. An iPaaS.com timesheet transfers — on demand from the Manual Sync page (enter the record ID), or automatically when the outbound triggers are enabled in Outbound Data Flows.

  2. The integration resolves the NetSuite employee by external ID — creating the employee as a prerequisite if it is not yet linked — derives the transaction date (the last time entry's date, or the current date if there are no entries), resolves the location against the employee, and sets the total hours.

  3. The iPaaS.com timesheet id is written to the NetSuite External ID; a later transfer updates the existing time bill.

Mappings

Add/Update NetSuite TimeBill FROM iPaaS.com

iPaaS.com data type: Timesheet

Mapping Type

Source Field (iPaaS.com)

Destination Field (NetSuite)

Description

Dynamic Formula

return await GetExternalIdAsync(EmployeeId, "Employee", SpaceportSystemId);

Employee_Id

Required. The NetSuite employee, resolved by external ID; the employee must already exist in NetSuite.

Dynamic Formula

if(Entries != null && Entries.Count > 0){ return Entries.LastOrDefault().Date; } else return CurrentDateTime();

TranDate

Required. The transaction date — the last time entry's date, or the current date if there are no entries.

Field

TotalHours

Total_Hours

Required. The total hours on the time bill.

Dynamic Formula

return Id;

ExternalId

Recommended. Writes the iPaaS.com timesheet id to the NetSuite External ID for matching.

Dynamic Formula

(resolve location id from the LocationId custom field, against the employee)

Location_Id

Optional. The location id, read from the LocationId custom field and resolved against the employee's subsidiary.

Dynamic Formula

(resolve location name from the LocationRefName custom field, against the employee)

Location_RefName

Optional. The location reference name, read from the LocationRefName custom field and resolved against the employee's subsidiary.

Error Handling

  • Employee not resolved — if the referenced employee is not in NetSuite, the time bill cannot resolve its employee. Resolution: transfer the employee first.

  • Location not resolved — a location that is not valid for the employee's subsidiary does not resolve. Resolution: use a location in the employee's subsidiary.

Testing & Validation

Test Scenarios

  1. Create a time bill. Manually sync an iPaaS.com timesheet for an employee already in NetSuite and confirm a NetSuite time bill with the date, total hours, and (if mapped) location.

  2. Missing employee. Confirm a timesheet for an employee not yet in NetSuite does not resolve; transfer the employee and re-sync.

  3. Update. Re-sync the same timesheet and confirm the existing time bill is updated, not duplicated.

Validation Checklist

  • Referenced employees exist in NetSuite before time bills are transferred.

  • The location custom fields (LocationId / LocationRefName) reference a location in the employee's subsidiary.

  • Outbound Data Flows triggers are enabled for automatic transfers.

Additional Notes

Related Documents

Did this answer your question?