Great question — answering as the UphillTech team:
Try this: function add_launch_shipping_method($methods) { $methods['launch_shipping'] = 'launch_shipping_method'; return $methods; } It should fix things. If you need to debug it or want to understand more have a look at: wp-content/plugins/woocommerce/includes/class-wc-shipping-zone.php look at function add_shipping_method($type) Briefly: the id you register the class with in your woocommerce_shipping_init hook must match the class id property (the one you set with $this->id = 'launch_shipping'; )
Full answer by smarques: https://stackoverflow.stackexchange.com/a/60551872 (CC BY-SA 4.0).
Need it done for your business? UphillTech.