I did not see anything uploaded to the (my) server for the BMWs. Just to get it right: are you trying to do a custom skin upload with just creating a team car (or an alternative skin which will not be uploaded AFAIK but locally available) or do you try to add a league skin pack (like it is described here
https://docs.studio-397.com/users-guide/custom-liveries-how-to-make-an-update-rfcmp-for-league-use but just using a mas file only)?
It is a huge difference - a skin pack must be uploaded to the server at least and the download function on the server must be activated so that everybody joining gets missing content (and therefore a skin pack).
Custom skins created by team car function will get uploaded as soon as you join a server and will then be given to all other players as soon as they join or coming back to garage.
The differences at least are (c8r as an example):
skin pack
- must have a proper .veh (as already mentioned)
- must have a version number (or a version like e.g 3.61-skin)
- must be placed / installed into separate folder (e.g. installed\vehicles\corvette_c8r_gte_2020\3.15-skin) on the server
custom skin
- must be created on the client (best using team car function)
- must have an rcd (not inside but placed beside it automatically by team car function)
- will automatically be stored in userdata\player\settings\corvette_c8r_gte_2020\<skinname> (.rcd file in corvette_c8r_gte_2020)
- will be uploaded to server as you join
For creating a team car I would recommend just to follow my video on team cars - and to create a skin pack follow the guide. Latter one is a little bit tricky, but the guide is really good.
Keep in mind: adding a skin pack for specific car on server side may cause trouble while trying to join other servers or will get in conflict with other content ...
Skin packs are recommended if you like to use your own icons e.g. in menu (I think names are also set by team cars).