Skip to main content

Generated page. Written from IdaMilk/Suntado_Integration_Service at commit 0489346 on 2026-07-28, version 1.0.0.

Suntado Integration Service

What is it?

A bidirectional synchronisation service between FIIX CMMS (maintenance management) and NetSuite. Built originally for that one pairing, the architecture generalises to N-way integration through a pluggable mapper pattern.

The package is named sunapps-fiix-service; the repository name reflects the more general ambition.

Purpose

Maintenance and finance keep separate systems that need to agree. When a maintenance purchase order is raised in FIIX, it needs to exist in NetSuite for procurement and cost accounting; when it changes in either, the other should follow.

Doing that by hand is slow and drifts. This service polls, detects changes, and applies them across.

How it Works

The design is worth recording even at low activity, because the pattern is reusable:

SyncState tracks which records are linked across systems and what state they were last seen in — the basis for change detection and for not re-applying work already done.

MessageQueue decouples detection from application. A change is queued, then processed, so a downstream outage delays a sync rather than losing it.

Mappers (mappers/purchaseOrderMapper.js) translate between the two systems' record shapes. Adding a record type means adding a mapper, not touching the engine.

Processors (toFiixProcessor.js, toNetSuiteProcessor.js) apply queued changes in each direction — the directional halves kept explicitly separate.

bottleneck rate limits outbound calls, as elsewhere in the platform.

Status

Low activity. Last touched January 2026. Only one mapper exists — purchase orders — so the N-way generalisation is architectural intent rather than realised scope.

Whether it is still running is not determinable from the repository. It installs as a Windows Service via install-service.js, so it may well be quietly operating; equally, a failed service would be silent. Worth confirming if FIIX-to-NetSuite purchase order flow is assumed to be live.

No successor identified.

Tech Stack

TechnologyPurpose
ExpressHTTP surface
Sequelize + tediousSQL Server state and queue
axiosHTTP client
bottleneckRate limiting
fiix-cmms-clientFIIX API client
node-windowsWindows Service installation
dotenvConfiguration

Repository

RepositoryIdaMilk/Suntado_Integration_Service
Version1.0.0
Primary languageJavaScript (Node)
Files31
Last activity2026-01-21
StatusLow activity — running state unconfirmed

This is the only integration with FIIX in the organisation, which makes it the only documentation of how maintenance data relates to the ERP.