Anyone who has tried to export a tcx file from Fitbit and subsequently import into Garmin Connect has probably experienced the "An error occurred with your upload. Please try again." error.
For example: https://forums.garmin.com/apps-software/mobile-apps-web/f/garmin-connect-web/125065/error-uploading-tcx-from-fitbit
I've found that you can get it to import successfully if you make the following changes to the .tcx file (which can be opened in a text editor)...
1. The first line will look something like this...<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
Remove the standalone="yes" part so it looks like this...<?xml version="1.0" encoding="UTF-8"?>
2. The end of the file will look something like this...</Trackpoint>
                </Track>
            </Lap>
            <Creator xsi:type="Device_t" xmlns:xsi="www.w3.org/.../XMLSchema-instance">
                <Name>Fitbit Charge 2</Name>
                <UnitId>0</UnitId>
                <ProductID>0</ProductID>
            </Creator>
        </Activity>
    </Activities>
</TrainingCenterDatabase>
Remove the following section of the above block...<Creator xsi:type="Device_t" xmlns:xsi="www.w3.org/.../XMLSchema-instance">
    <Name>Fitbit Charge 2</Name>
    <UnitId>0</UnitId>
    <ProductID>0</ProductID>
</Creator>
It should now look like this...</Trackpoint>
                </Track>
            </Lap>
        </Activity>
    </Activities>
</TrainingCenterDatabase>
If you make these two simple changes, the file should import just fine.
Unfortunately, the total calories burned value gets lost in the import... so you'll have to add that manually. I couldn't figure out how to fix that.