Using branches as brands in a multi brand design system

Pretty new to Figma, so there might be reasons to avoid doing this, or I’m missing something essential, but I’m not experienced enough to see it.

We work with a white label app which we brand to about 20 clients. With one file for iOS and another for Android, maintaining 40+ files is currently very time consuming. I’m mainly thinking about the overall ui, e.g an entire flow for a functionality or if we make changes to a screen which is not necessarily connected to our component library.

I’m thinking, can we create just the two main files (1 iOS + 1 Android) in our white label placeholder design with placeholder design values and variables, then create one branch for each of our clients brands, in which we change the necessary values like colors, corner radius, fonts etc. to fit each brand? If I’ve understood correctly, if we make changes to the main files, we could choose to keep or discard changes from our main file in the branches, so we can accept changes to the overall design structure, but keep the client brand?