WooCommerce

WooCommerce is a free ecommerce plugin for the WordPress content management system. Add ecommerce functions to your WordPress site and expand those functions with ShipStation.

We built our extension specifically for WooCommerce. Install and configure the WooCommerce shipping plugin in a few steps. Afterward, you can import your WooCommerce orders directly into ShipStation, synchronize your orders, let customers choose their shipping method, include order notes, and enjoy customizable shipping-confirmation emails.

WooCommerce Requirements

Connection Requirements:

  • An active account with WooCommerce.

  • ShipStation WooCommerce plugin (version 4.9.1 or later)

  • WordPress 6.8 or later

  • Your WooCommerce Authentication Key.

  • Your WooCommerce Consumer Key.

  • Your WooCommerce Consumer Secret.

  • Your WordPress domain's Store URL (URL to Custom XML Page).

Scope of Support

Installing the extension file to your WooCommerce environment is beyond our scope of support. We recommend you contact your store developer or WooCommerce Support if you need assistance with the extension installation process. They can help you best, as the process may differ based on the unique configuration of the WooCommerce environment.

Order Import Requirements:

  • Include a Ship To address.

  • Include at least one physical product.

Action Required: WooCommerce Plugin Update

ShipStation is upgrading the WooCommerce integration starting in March 2026 to enhance performance and support new functionality.

If you encounter store import errors, please see WooCommerce Migration below for migration details and required steps.

Connect a WooCommerce store to ShipStation

To connect your WooCommerce store to ShipStation.

  1. Download the ShipStation Integration plugin to your computer.

  2. Log in to your WooCommerce administrators' portal.

  3. Select Plugins > Add Plugin.

  4. Select Upload Plugin, choose the zip file from your computer, then select Install Now.

  5. Select Activate Plugin after installation is complete.

  6. Go to the WooCommerce menu on the Dashboard, then select Settings .

  7. Select the Integrations tab.

    WooCommerce Connected Integrations

    If you have any other Integrations connected to WooCommerce, you may also need to click ShipStation below the tab bar.

  8. Select View Authentication Data.

  9. Add the Consumer Key, Consumer Secret, and the Site URL.

  10. Select the WooCommerce order statuses you want to export to ShipStation, and enter them in the open fields. Separate multiple statuses with commas

  11. Select WooCommerce.

    WooCommerce logo. Button that reads, Connect
  12. Enter your WooCommerce Authentication Key, Consumer Key, Consumer Secret, and Store URL, and map any custom statuses if needed.

After you've completed the connection steps, the store's Settings page will open. You can adjust your store-specific settings like branding and customer notifications, if you wish. Or click Save to close.

Available Features for WooCommerce

The ShipStation integration with WooCommerce supports these standard features:

Order Status Mapping

ShipStation Status

WooCommerce Status

Awaiting Payment

Pending

Awaiting Shipment

Processing

Shipped

Completed

Cancelled

Cancelled

On Hold

On-hold

Data Sent with Shipment Notification

This table indicates which data ShipStation sends to WooCommerce with the marketplace shipment notification:

Field

Sent to Marketplace?

Status Update

Green checkmark. Supported feature. Yes.

Tracking Number

Green checkmark. Supported feature. Yes.

Carrier

Green checkmark. Supported feature. Yes.

Service

Green checkmark. Supported feature. Yes.

Carrier Fee

Green checkmark. Supported feature. Yes.

Note to Buyer

Green checkmark. Supported feature. Yes.

Item Information

Green checkmark. Supported feature. Yes.

Status UpdateTracking NumberCarrierServiceCarrier Fee

The shipment update ShipStation sends to the selling channel will include any Notes to Buyer set on the order in ShipStation.

Item Information

WooCommerce Additional Features

The ShipStation integration with WooCommerce allows for these additional features:

Feature

Description

Supports Inventory Sync

ShipStation's Inventory Sync feature eliminates the need for manual inventory updates, ensuring your inventory levels are always accurate and up-to-date. Once you have activated Inventory Sync in the Add-On section of your account settings, you can easily manage your inventory across multiple platforms, saving time and reducing the risk of errors.

Inventory Sync is included in the Standard plan or higher, or as an add-on to all other plans.

See the Inventory Sync article to learn more.

Custom Statuses

To use a custom status with ShipStation, first create a Custom Status in WooCommerce. Under the WooCommerce Integration tab, add the "slug" of the created custom status. Then you can add the custom status in your ShipStation settings.

Configurable Time Zone

By default, ShipStation assumes that the WooCommerce store's server uses UTC as the timezone. If your WooCommerce account uses a different server timezone, then you can define it in the store's settings.

Custom Fields

If a coupon is used for an order, then the coupon code will be included as Custom Field 1. Additionally, you can modify the ShipStation Integration plugin file to include custom values for Custom Field 2 and Custom Field 3. See this section of the plugin documentation for details.

If a store allows custom statuses, this means you define that statuses your orders use in your selling channel. In most cases, if you have custom statuses you'll need to define which ShipStation statuses each custom order status corresponds to.

ShipStation will import the customer's email address with the order data and can send shipment confirmation and delivery emails to that email address (configured in your Store settings).

ShipStation will import the customer phone number with the order data.

ShipStation will import the shipping method chosen by the customer during their store checkout.

ShipStation will import the payment method used to pay for the order.

ShipStation will import discount and coupon information for the order.

ShipStation can determine if an order is a gift from the order data sent by the store.

ShipStation will import internal notes or order activity from the store into the ShipStation Internal Notes field.

ShipStation will import notes provided by the customer when they made their purchase.

ShipStation will import the total order weight from the store.

ShipStation will import the weight for each line item in the order.

ShipStation will import an image URL for each line item in the order. These images will appear as thumbnails in your Order Details and can be included in email notifications and packing slips.

ShipStation will import item options (such as color or size) for each line item in the order. This data will appear in your Order Details and can be included in customer emails and packing slips.

ShipStation will import a product stock location for each line item in the order.

Status UpdateTracking NumberCarrierServiceCarrier Fee

The shipment update ShipStation sends to the selling channel will include any Notes to Buyer set on the order in ShipStation.

Item Information

WooCommerce Migration

Starting in March 2026, ShipStation is upgrading the WooCommerce integration to improve performance and support new features. As part of this update, you must use the latest version of the ShipStation WooCommerce plugin and have valid WooCommerce REST API credentials.

If you are using an outdated plugin version, you may encounter store import errors until the integration is updated.

Who is Impacted?

This update affects WooCommerce merchants using a ShipStation plugin version earlier than v4.9.1.

What You Need to Do

If you encounter a store import error during this transition, follow these steps.

Step 1: Update the ShipStation WooCommerce Plugin

To update your WooCommerce Plugin:

  1. Log in to your WordPress admin dashboard.

  2. Go to Plugins.

  3. Locate ShipStation for WooCommerce.

  4. Update the plugin to version 4.9.1 or later.

    TEMP_woocommerce_UpdatePlugin.png

Step 2: Reconnect Your Store in ShipStation

To reconnect your store:

  1. Go to Settings > Selling Channels > Store Setup.

  2. Locate your WooCommerce store and click the three-dot menu next to the store.

  3. Select Edit Connection.

    TEMP_StoreSetup_WooCommerce_Edit.png

Common Errors During Migration

During the migration, you may see the following errors when importing orders.

TEMP_woocommerce_400Error.png

Error Message

Cause

Resolution

400 Bad Request: No route was found matching the URL and request method

ShipStation cannot communicate with the WooCommerce REST API. This typically occurs when the plugin version is outdated.

Update the ShipStation WooCommerce plugin to v4.9.1 or later, then reconnect the store in ShipStation.

Advanced Troubleshooting

If you continue to experience issues after updating the plugin and reconnecting your store, check the following.

Verify WooCommerce REST API Credentials

ShipStation requires valid WooCommerce REST API credentials to communicate with your store.

In WordPress, confirm that the REST API credentials used for your ShipStation connection are active and have not been revoked. If necessary, generate new credentials and update them in ShipStation by selecting Reconfigure Store Connection.

TEMP_woocommerce_StoreError.png

Error Message

Cause

Resolution

Unable to get store token

ShipStation cannot authenticate with the WooCommerce store. This usually indicates invalid or expired REST API credentials.

Verify your WooCommerce REST API credentials in WordPress and reconfigure the store connection in ShipStation.

Still Having Issues?

If you've updated the plugin and reconnected your store but are still experiencing errors, contact support@shipstation.com for assistance.

Troubleshoot Issues & Errors

If orders aren’t importing or you’re seeing store connection errors, use the troubleshooting guidance below to identify the cause and resolve the issue.

Issues

The following issues describe common WooCommerce order import or configuration problems and how to resolve them.

Issue

How to troubleshoot or resolve

Custom Status is not importing

Cause: This may be happening because WooCommerce is not reading the slug correctly.

Resolution: Input the custom status exactly as it is sent from WooCommerce to ShipStation. 

Use the dash (pending-shipment) instead of the space (Pending Shipment) and the order will import.

See Custom Statuses in the Additional Features section here.

See WordPress Slugs: What They Are & How to Change Them for a more technical context.

Orders from a WooCommerce store based in France are not importing

Cause: WooCommerce is sending order statuses to ShipStation in English with a lowercase first letter rather than in French, and ShipStation is not configured to accept these statuses.

Resolution:

Option 1: Update the store’s status mappings to the English (non-capitalized) status names. Go to Settings > Selling Channels > Store Setup, click the 3-dot menu next to the store, click Edit Marketplace Connection, then click Edit WooCommerce Settings. Change the statuses to the English statuses with lowercase first letters. Then, try importing orders again. These are the statuses in English for your reference.

Option 2: You can customize the order statuses as you see fit if you enable custom status mappings in WooCommerce. In your WooCommerce account go to Plugins > Settings (ShipStation). Learn more about Custom Statuses in ShipStation.

Check Timezone: Confirm the website's server timezone. If the store is set to expect Dateline Standard Time (International Dateline West) but the server actually responds in GMT, such a review may prevent delays with order imports.

The Order Date in ShipStation is different than the Order Date in WooCommerce

Cause: This error usually occurs when the WooCommerce server uses a timezone different than the timezone set in the store's settings in ShipStation. This difference causes the Order Date to deviate when the WooCommerce server uses timezone as the basis to convert the timestamp.

Resolution: Update the store's settings so the store uses the same timezone as the server that hosts your WooCommerce store.

Certain orders placed late in the day are not importing into ShipStation

Cause: Similar to the first timezone issue, this error typically occurs when the WooCommerce server uses a different timezone than the timezone set in the store's settings in ShipStation. That timezone difference causes our import process to inadvertently skip ahead.

Resolution: Update the store's settings so the store uses the same timezone as the server that hosts your WooCommerce store.

Orders not importing into ShipStation after updating WooCommerce or restoring site from a backup

Cause: Sometimes, updating a WooCommerce store will cause your order database to reset and reuse Order ID values. Such resets and reuses can be problematic for ShipStation because we use Order ID values to identify unique orders. This issue is most common when you update your WooCommerce site to the latest version.

The same issue can also happen if you restore the site from a backup or make other configuration changes to the store.

This problem also happens if you use sequential order number plugins, or plugins that edit order numbers. This Sequential Order Number for WooCommerce blogpost from the store explains more.

Resolution: If only a handful of orders were affected, and the latest orders continue to import as expected, you should create manual orders to replace the absent WooCommerce orders. Then manually update WooCommerce with the shipment information.

If many orders were affected or the latest orders do not import, another solution is to create a new WooCommerce store connection in ShipStation. The new WooCommerce store connection will import the current version of the Order ID so new orders will import consistently. However, if you leave the original store connection active, you could see duplicate orders import into ShipStation. You'll want to deactivate the original store connection after you have shipped out any unresolved orders.

Error Messages

If you see one of the following error messages, use the corresponding cause and resolution to resolve the issue.

Error Messages

Resolution

400 Bad Request: No route was found matching the URL and request method.

Cause: The WooCommerce store is using an older version of the ShipStation plugin that is not compatible with the current API.

Resolution: Update the ShipStation for WooCommerce plugin to the latest version in WordPress. Then reconfigure the store connection in ShipStation.

Unknown Error: Unable to get store token for seller

Cause: The store has a compatible plugin version, but the REST API credentials are invalid or misconfigured.

Resolution: Verify your WooCommerce REST API credentials in WordPress. Then select Reconfigure Store Connection in ShipStation and enter the updated credentials.

Error: An error occurred attempting to update orders: The remote server returned an error: (500) Internal Server Error or IntegrationError: WooCommerce encountered an error and responded with StatusCode InternalServerError. Content: 500 Internal Server Error

Cause: This error may indicate that we cannot reach the WooCommerce store for a variety of reasons. Most often, it is an issue outside of ShipStation. This can be a store import or ShipNotify error, but its root cause is the same.

Resolution:

  • Remove and add back the plugin to reconfigure your store.

  • Check the WooCommerce logs for a PHP Fatal Error, and try to debug following the steps in this WooCommerce Finding PHP Error Logs article.

  • Go to WooCommerce > System Status on WordPress to check for errors.

  • Confirm that your additional plugins are turned off, as this error may occur due to security plugins.

Error: (500) Internal Server Error

When connecting a store or trying to import orders

Cause: A (500) Internal Server Error is a generic error message that essentially means something went wrong, but without any additional detail to indicate the cause of the problem.

Resolution: To troubleshoot these issues, enable the WP_DEBUG option for your WordPress site. Read more about WP_DEBUG on the Debugging in WordPress page.

This setting will allow for more robust logging for WordPress, which will allow you or your site developer to find the cause of the generic error. If you're unable to resolve the issue on your own, please contact ShipStation support with the full error log and a status report. We'll help you with the next steps you should take.

WooCommerce Integration Notes

  • ShipStation will not receive products that are marked as Virtual or Downloadable.

  • ShipStation cannot connect to a WooCommerce store while the store is in Maintenance Mode.

  • If your WordPress site requires any extra authentication to load the page, ShipStation may be unable to connect or import orders.

    Extra authentication can include security plug-ins or features meant to block access to the site. This includes plug-ins like an age-verification screen meant to create an extra step before accessing the site. If you whitelist ShipStation in the plug-in that should allow us to bypass any additional authentication.

If a store allows custom statuses, this means you define that statuses your orders use in your selling channel. In most cases, if you have custom statuses you'll need to define which ShipStation statuses each custom order status corresponds to.

ShipStation will import the customer's email address with the order data and can send shipment confirmation and delivery emails to that email address (configured in your Store settings).

ShipStation will import the customer phone number with the order data.

ShipStation will import the shipping method chosen by the customer during their store checkout.

ShipStation will import the payment method used to pay for the order.

ShipStation will import discount and coupon information for the order.

ShipStation can determine if an order is a gift from the order data sent by the store.

ShipStation will import internal notes or order activity from the store into the ShipStation Internal Notes field.

ShipStation will import notes provided by the customer when they made their purchase.

ShipStation will import the total order weight from the store.

ShipStation will import the weight for each line item in the order.

ShipStation will import an image URL for each line item in the order. These images will appear as thumbnails in your Order Details and can be included in email notifications and packing slips.

ShipStation will import item options (such as color or size) for each line item in the order. This data will appear in your Order Details and can be included in customer emails and packing slips.

ShipStation will import a product stock location for each line item in the order.

Status UpdateTracking NumberCarrierServiceCarrier Fee

The shipment update ShipStation sends to the selling channel will include any Notes to Buyer set on the order in ShipStation.

Item Information

Can’t find what you’re looking for?

Contact our technical support team.
Contact us
Was this article helpful?
0 out of 0 found this helpful