As I set some packages for my shop, but there is only one default options.
when I ship my order I need to chose different package size, which means I may need pay more money than I received.
so I want know when customer place their orders , how to calculate their ship fee?
Only one default package can be used at the time of checkout, so typically we would recommend using your largest size, or your most common size package to ensure you're not out of pocket for the shipping costs. If you have a number of packages and find that you are needing to ship in different sizes, then I would recommend using apps such as Boxify to help rectify this.
Unfortunately, this is a limitation with Shopify's Shipping & delivery. You can enter multiple box sizes but rates will only be calculated using the one set to 'default'. I'm not aware of any workaround directly within Shopify. You may want to reach out to their support team to get clarification.
If you're open to the idea of using a third-party solution, our Smart Boxing app lets you create shipping methods with multiple package types and sizes. Our packing system will automatically select the best (most efficient) packaging based on the contents in the cart at checkout. You can also set certain products to pack separately if they have unique or custom packaging.
If you'd like to learn more about Smart Boxing, you can book a live demo with one of our team members who can walk you through some of the basics of setting up packages and shipping methods and answer any questions you might have.
Just as an FYI, to use Smart Boxing -- or any other third-party shipping rate calculator -- you will need to add Shopify's Carrier-calculated Rates feature if you are on either the 'Basic' or 'Shopify' plan. This feature is USD $20/month. Shopify will provide it at no extra cost if you switch your plan to annual billing (plus they give you a 10% discount on your plan). If you're on Advanced or higher, this feature is already included in your plan.