WholeCell's ShipStation integration lets you sync your orders with ShipStation to create shipping labels. Once you create a shipping label in ShipStation for a synced WholeCell order, this integration will sync the shipment details back to WholeCell and mark the order as shipped.

This integration syncs:

  • Orders (WholeCell → ShipStation)

  • Shipments (ShipStation → WholeCell)

To set it up go to your ShipStation Export settings page.

Credentials

Make sure to come up with new credentials for the ShipStation Integration User Name and Password section. This doesn't have to be an actual email address. It is the username and password that will be used for the connection. Make up a username and add '+' at the end (e.g. shipstationwholecell+@gmail.com) then use a new password. Don't use your ShipStation or WholeCell password. These credentials will also have to be entered in ShipStation later on.

Channels

Select which sales channels you'd like to sync with Shipstation. This can be useful if you enter eCommerce orders into WholeCell, but don't want them showing up twice in Shipstation.

If you have not set your sales order channels yet, follow the instructions on this article to set them up: Managing Sales and Purchase Order Channels

Order Item Format

You can choose to sync either order items, committed individual inventory (with ESNs), or committed grouped inventory.

Address

You can choose to sync addresses from orders or from invoices.

Product Description

Select which attributes you'd like to include in the product description that gets sent to ShipStation. This can be useful if you don't want to show damages on the ShipStation packing list.

ShipStation Setup

  • Log in to ShipStation

  • Go to Settings > Selling Channels > Store Setup

  • Click 'Connect a Store or Marketplace'

  • Choose 'Custom Store' (you can type "custom store" on the field)

  • Enter 'https://www.wholecell.io/integrations/shipstation/' in the URL field.

  • Enter the unique name and password that you saved in WholeCell earlier. To reiterate, this should be a different username and password, not your WholeCell, nor your ShipStation credentials.

  • Map your order statuses. For example, enter 'Ready To Ship' in the paid status field if that is the WholeCell order status that you'd like to see as 'Awaiting Shipment' in ShipStation. If you have not set your order statuses in WholeCell yet, follow the instructions here to set those up: Adding and Removing Statuses

  • You can do a test connection first to see if the setup is effective. Once you see the message below, click the 'Connect' button.

Troubleshooting Order Export to ShipStation

The sales order will indicate if it will be exported to ShipStation or not.

In cases where your sales order did not export to ShipStation, there are several things that you can do:

  • Restart the connection by creating new and unique credentials (include the + sign) to save in WholeCell and ShipStation (repeat the process above). Did the test connection say it's good?

  • Make sure that your statuses are mapped correctly. What order status in WholeCell are you mapping to show in the Awaiting Shipment queue in ShipStation?

  • Check your sales order statuses in WholeCell. Are your order statuses set to sync to ShipStation? https://www.wholecell.io/settings/order_statuses

  • If the order is coming from a sales channel like eBay or Swappa, are those present in your 'Sales Order Channels' settings in WholeCell (https://www.wholecell.io/settings/channels), and checked in the ShipStation Export settings page (https://www.wholecell.io/settings/shipstation/custom_store)?

  • Does your WholeCell sales order have an address on the 'Ship To' field? If this is blank, the order will not get exported to ShipStation.

  • After you make any changes to your ShipStation settings page in WholeCell, and you are expecting an order to be synced to ShipStation, make some form of an update in the sales order to trigger the sync, like changing the status to "New" for just a second then changing it back to the status that it's supposed to be.

Did this answer your question?