Site icon EcomPlugins Blog

Magento 2 Shipping Methods Not Showing at Checkout? Fix Guide

Magento 2 Shipping Methods Not Showing at Checkout? Complete Troubleshooting Guide

Shipping methods suddenly disappearing from Magento 2 checkout can directly affect sales. A customer may add products to the cart, enter a valid shipping address and still see no available shipping options.

The problem can be caused by something simple, such as an incorrect configuration, or something more complicated, including carrier API authentication failures, outdated integrations, incorrect product data or a custom extension conflict.

In this guide, we’ll go through the most common reasons Magento 2 shipping methods do not appear at checkout and explain how to troubleshoot them.

Common Symptoms

You may be experiencing a Magento shipping problem if:

Let’s troubleshoot these problems one at a time.

1. Check Whether the Shipping Method Is Enabled

Start with the simplest configuration.

In Magento Admin, navigate to:

Stores → Configuration → Sales → Delivery Methods

Select the shipping carrier that is not appearing.

Depending on the carrier or extension, check settings such as:

Also make sure you are checking the correct Website / Store View scope.

A carrier may be enabled under Default Config but have a different value configured at the website level.

After changing the configuration, clear the Magento cache and test checkout again.

2. Check the Magento Shipping Origin

Real-time carrier APIs normally need both an origin and destination before they can calculate shipping rates.

Check:

Stores → Configuration → Sales → Shipping Settings

Verify the Origin information:

An incorrect warehouse ZIP code or country can cause the carrier API to return no available services.

This is particularly important after copying a production database to a staging or development environment.

3. Verify the Customer Shipping Address

The customer’s destination address is another common reason for missing shipping rates.

Check:

Try testing with a known valid address.

For example, if your warehouse and carrier account are based in the United States, first test a normal US commercial address.

If that works but another address does not, the issue may be related to the destination rather than Magento itself.

4. Check Allowed Countries

Magento shipping methods can be restricted by country.

Inside the carrier configuration, look for settings similar to:

Ship to Applicable Countries

or

Ship to Specific Countries

If the carrier is configured only for the United States, it will not appear when the customer enters a Canadian address.

This can sometimes look like an API problem when it is simply a Magento configuration restriction.

5. Check Product Weight

Real-time shipping carriers typically require shipment weight.

Open one of the products in the cart and verify its weight.

Check:

Catalog → Products → Product → Weight

Pay particular attention to:

If shipping works for Product A but not Product B, comparing their weight and shipping-related attributes is a good troubleshooting step.

6. Test Magento’s Basic Shipping Method

This is one of the fastest ways to isolate the problem.

Temporarily enable Magento’s Flat Rate shipping method.

Then test the same cart and address again.

If Flat Rate Appears

Magento checkout itself is probably capable of displaying shipping methods.

The problem is more likely related to:

If Flat Rate Also Does Not Appear

Investigate Magento checkout, address data, quote data, custom checkout modules and JavaScript/API errors.

This simple test can save considerable debugging time.

7. Verify Carrier API Credentials

UPS, FedEx, USPS and LTL carriers rely on external APIs to calculate live rates.

Check whether your carrier credentials are still valid.

Depending on the integration, this may include:

Do not assume credentials are correct simply because the integration worked previously.

Carriers periodically change their authentication systems and APIs.

8. Check Whether the Carrier Retired an Older API

This has become increasingly important for Magento stores.

Shipping carriers are moving older SOAP, XML and legacy APIs to newer REST APIs and modern authentication systems.

An old Magento shipping extension can therefore remain enabled in Admin while returning no usable rates.

If a shipping method suddenly stopped working without any Magento configuration changes, check whether the carrier has:

Updating Magento alone does not necessarily update every third-party shipping integration.

9. Enable Debug Logging

Many Magento carrier integrations include a Debug setting.

Temporarily enable debugging for the affected shipping method.

Then reproduce the issue by requesting shipping rates.

Review:

var/log/

Depending on Magento and the extension, useful files may include:

system.log

exception.log

debug.log

or a carrier-specific log file.

Look at both the API request and response when available.

The response often immediately reveals the actual problem.

Examples include:

Important: Disable unnecessary debug logging after troubleshooting a production store.

10. Check Magento Logs

If the carrier-specific log doesn’t explain the issue, inspect Magento’s general logs.

Check:

var/log/system.log

var/log/exception.log

Also check your PHP and web server logs.

For Apache/PHP-FPM environments, inspect the relevant Apache and PHP-FPM error logs.

For Nginx environments, check the Nginx and PHP-FPM logs.

A PHP exception inside a custom carrier module can prevent rate collection even when the API itself is working correctly.

11. Check the Browser Network Requests

Magento checkout requests shipping information dynamically.

Open your browser’s Developer Tools and select the Network tab.

Enter or change the shipping address and watch the Magento REST requests.

Depending on the checkout flow, you may see requests related to estimating shipping methods.

Look for HTTP errors such as:

A 500 response usually means you should investigate the Magento/PHP logs.

A 401 or 403 may indicate authentication, session, security or API access problems.

12. Check Custom Shipping Restrictions

Magento stores frequently have custom shipping rules.

For example:

If shipping disappears only under certain cart conditions, inspect any custom shipping rules or third-party shipping modules.

13. Check Configurable and Bundle Products

Configurable and bundle products deserve special attention.

Suppose a parent product has one weight while its child simple product has another.

The shipping extension may calculate the shipment using:

The exact behavior depends on Magento configuration and the shipping extension.

If the problem occurs only with configurable or bundle products, inspect the final cart/quote weight being sent to the carrier.

14. Check LTL Freight Requirements

LTL shipping integrations require considerably more information than ordinary parcel shipping.

Depending on the carrier, rates may require:

If any required value is missing or invalid, the freight carrier may return no rates.

This is why an LTL method may work for one product but disappear for another.

15. Check Residential vs Commercial Address Logic

Some UPS, FedEx and LTL configurations return different rates depending on whether the destination is residential or commercial.

If your store uses automatic address classification, verify that the classification API is working correctly.

A failed address-validation request can affect:

Test both a known commercial and a known residential address.

16. Check Package Dimensions

Some carrier integrations calculate rates using dimensional weight.

Verify:

Also inspect how multiple cart products are packaged.

Incorrect dimensions can result in oversized packages or requests that the carrier refuses to rate.

17. Clear Magento Cache

After changing shipping configuration, clear the cache.

From Magento Admin:

System → Cache Management → Flush Magento Cache

Or from the command line:

php bin/magento cache:clean

php bin/magento cache:flush

Then test the checkout again.

18. Check After a Magento Upgrade

If shipping stopped working immediately after upgrading Magento, check the shipping extension’s compatibility.

A custom or third-party module may depend on Magento classes, APIs or checkout behavior that changed between releases.

Check:

Never assume that an extension working on an older Magento version will automatically work correctly after an upgrade.

19. Check for Extension Conflicts

Multiple shipping modules can modify Magento’s rate collection process.

For example, your store may simultaneously use:

Temporarily disabling a suspected extension in a staging environment can help identify conflicts.

Avoid testing module disablement directly on a busy production store.

20. Compare API Request and Response

For difficult shipping problems, this is often the most useful step.

Determine exactly what Magento sends to the carrier.

For example:

Magento → Carrier API

The request may contain:

Then inspect:

Carrier API → Magento

If Magento sends incorrect information, fix the Magento configuration or extension.

If Magento sends correct information but the carrier returns an error, investigate the carrier account/API configuration.

If the carrier returns valid rates but Magento doesn’t display them, investigate the extension’s response parsing and Magento rate collection.

A Simple Troubleshooting Flow

Use this order when diagnosing the problem:

Shipping Method Missing

Is the method enabled?

Check Website/Store configuration

Verify origin and customer address

Verify product weight/dimensions

Test Magento Flat Rate

Verify carrier API credentials

Enable Debug Mode

Inspect API request/response

Check Magento/PHP logs

Check browser REST requests

Check extension conflicts

Check carrier API changes

This approach helps separate Magento checkout problems from external carrier API problems.

When Do You Need a Custom Magento Shipping Integration?

Standard Magento shipping functionality works well for many stores, but some businesses have more complex requirements.

A custom shipping solution may be appropriate when you need:

Instead of forcing complex shipping requirements into a basic rate model, these rules can be implemented directly into the Magento shipping workflow.

Need Help With Magento Shipping?

EcomPlugins specializes in Magento 2 and Adobe Commerce shipping integrations.

We work with UPS, USPS, FedEx, LTL freight carriers, address validation services, custom carrier APIs and specialized B2B shipping requirements.

If your Magento shipping methods are missing, returning incorrect rates or failing after an API or Magento upgrade, we can help identify whether the problem is caused by Magento configuration, the carrier API or your shipping extension.

Explore Magento Shipping Integration Services

View Magento 2 Shipping Extensions

Request Magento Development Support

Frequently Asked Questions

Why are no shipping methods showing in Magento 2?

Common causes include disabled shipping methods, incorrect origin or destination addresses, country restrictions, missing product weights, invalid API credentials, carrier API errors and conflicts with third-party extensions.

Why does Flat Rate work but FedEx or UPS does not?

If Magento Flat Rate works, Magento is capable of displaying a shipping method. The problem is more likely related to the carrier configuration, API credentials, account, API response or carrier extension.

Why did my Magento shipping method suddenly stop working?

If no Magento changes were made, check the carrier API first. Carriers periodically retire legacy APIs, change authentication requirements and migrate integrations to newer REST APIs.

Why does Magento shipping work for some products but not others?

Compare product weights, dimensions, product types, freight classes and shipping-related attributes. Also check whether custom shipping rules exclude specific products.

Why does shipping work for some ZIP codes but not others?

The destination may be outside the carrier’s service area, excluded by Magento configuration or rejected by the carrier API. Test the destination directly against the carrier response.

Can EcomPlugins troubleshoot an existing Magento shipping extension?

Yes. EcomPlugins provides Magento shipping integration and development services and can investigate configuration, API communication, custom modules and carrier-related issues.

Exit mobile version