Couldn’t fix it but I did find a workaround:
- Define your shipping classes in Products > Shipping Classes
- Split your CSVs into different files; each file contains the same shipping classes.
- Upload each CSV and import them one at a time.
- When uploading your template, you can make the shipping class the same from the dropdown menu in the import settings. Doing this didn’t work for me so skip right over to step 6 for my workaround for that.
- Once all your products are uploaded, they theoretically should have the same shipping class. If it didn’t work for you (like it did for me), go over to the next step.
- Upload your first .csv and double check that your shipping classes went through. If they didn’t, bulk edit your products and manually add the shipping class.
- When you’re ready to upload the second .csv, DO NOT PUBLISH THEM. Set it to import as a DRAFT, that way when the import is completed, your newly imported items won’t be mixed in with the items from the previous import.
- Go to your products and click on “Drafts” and repeat the bulk edit process by choosing the shipping class you’d like, then set it to publish your products.
- Repeat process until all your products/csv files are uploaded.
In my case, I had 6 different shipping classes and 1,058 products. It wasn’t easy or ideal, but after hours of trying to find a suitable fix, this was the closest I could accomplish it. Hopefully there’s a fix or someone can expand on this further, but anyone looking for a patch for importing shipping classes, this is the result of 6+ hours of digging and looking for a proper fix.