We have a single square account with 5 different square locations. We have been using square oauth API and been using the refresh token to collect payments so far from our website. This was going on smoothly.
Now when we tried pairing our square terminal with Square terminal API in one of the square locations, terminal pairing is successful but all other square refresh tokens are getting invalidated during this process. As a result, website payments are not going through. Only the location where the terminal was paired was working. We then had to square re-authorize in all other locations using square oauth api to get valid refresh tokens.
Permissions that we are using for square oauth API: