I was trying Option #1 which seemed to be working up until I updated my WordPress to version 6.8.3. Now I am getting sync errors like mad and the logs are showing.
[0] => Square\Models\Error Object ( [category:Square\Models\Error:private] => INVALID_REQUEST_ERROR [code:Square\Models\Error:private] => VERSION_MISMATCH [detail:Square\Models\Error:private] => Object version does not match latest database version. [field:Square\Models\Error:private] => version )