independent of platform, syncing data between two (or more) systems has some considerations.. live syncing, based on events on the source side and sending data to the destination seems to be the simplest way. And then come troubleshoots : what if...
What if an error arrise on the destination side... How to handling that... What if (ie NetSuite) at the of moment of triggering event in Magento is unaccessible (downtime, maintaining..) What if you want to update existing records...
Second approach is batch syncing... Create an PHP, NodeJS job which extract data from both side, compare, define changes (create, update, delete)... From the my experience it is not critically for script execution, but it is for data consumption from/to database whose are involved (NetSuite / Magento)
Sometimes I realize solution mixed of two above : Middleware or message broker... Make one REST server which accept data from sender (ie Magento) and store that in queue... Then other procedure watch in rhe queue and try to send data to destination server... If succeeded remove entry, if not... try again or log error...