Extensions › ShipStation
ShipStation Extension
Paid orders go to ShipStation on their own, and every shipment comes back with its tracking number. Add a key for labels, rates and stock. 13 parts.
Quick links
Where to find it:WP Admin › EasyCart › Extensions › ShipStation
Getting started
Connect ShipStation
What you need, the store feed ShipStation reads, and which orders it gets.
Before you start
What the extension needs, and your ShipStation plan
no stored settingsWhat you need. A Premium license, with ShipStation installed from EasyCart › Extensions, which also installs WP EasyCart Premium. The settings page, the store feed and labels need WP EasyCart 6.0.2 or newer and WP EasyCart Premium 1.1.0 or newer; rates at checkout also need WP EasyCart PRO 6.0.2 or newer. And a ShipStation account on a plan with store imports and the API, which is Standard or higher.
Three ways in, pick what you need. The store feed, in Connect ShipStation below, is all most stores need: paid orders go to ShipStation and every shipment comes back with its tracking number. It needs no API key. An API v1 key only makes ShipStation import each order straight away. An API v2 key adds labels from the order screen, rates at checkout, stock and delivery updates.
In ShipStation. The Connect ShipStation section walks you through it: open Settings › Selling Channels › Store Setup › Connect a Store or Marketplace and choose Custom Store. Paste the URL, username and password it shows, type the five status words into the matching boxes exactly as shown, then press Test Connection and Connect in ShipStation. The Status row turns Connected once ShipStation has read the feed.
💡 Note: Your API keys are stored by WP EasyCart Premium. If Premium is deactivated, everything that needs a key pauses until it is active again. The store feed keeps working without any key.
Connect ShipStation
ShipStation reads your orders from this store as a Custom Store and posts each shipment back. No API key, and nothing that expires.
4 settingsOnly answer over HTTPS
The feed sends customer names and addresses, so it refuses plain http:// requests. Turn it off only on a site that has no HTTPS at all.
Check the connection
Check now calls the feed the way ShipStation does. It tells you when a firewall, a security plugin, Cloudflare, a cache or your host gets in the way, and what to change. Some hosts stop a site calling itself; then use Test Connection in ShipStation instead.
New password
Make a new password makes the password ShipStation logs in with and shows it once, in the setup steps above. Only a scrambled copy is kept, so a lost password means making a new one. The old password stops working at once, so paste the new one into ShipStation straight away.
Switch to the store feed now
Only shows on a store upgraded from the classic connection. Switch now stops sending orders the classic way. Orders placed so far stay in the ShipStation store they went to; new orders come through the feed. Press it once the Custom Store is connected in ShipStation.
Moving from the classic connection
For stores that used version 1 of the extension
no stored settingsVersion 1 pushed each paid order to ShipStation with your API key. After the update, that classic connection keeps running, so no order is missed while you set up the store feed. The Status row shows Classic connection on until then, and EasyCart screens remind you to finish.
Add the Custom Store in ShipStation as described above. Once ShipStation has read the feed twice, at least ten minutes apart, or you press Switch now, the switch happens on its own. Orders up to that point stay in the ShipStation store they were sent to, and newer orders come through the feed. Until the switch the feed stays empty, so no order reaches ShipStation twice.
Your API key and order key prefix carry over. The switch matters because ShipStation keys now expire every few months, and the feed never does.
Orders
Which orders ShipStation sees, and what it gets. Orders with nothing to ship ( downloads, gift cards ) never go.
14 settingsStatuses that count as paid
Orders in these statuses wait in ShipStation’s Awaiting Shipment. Pick none to use every paid status except the shipped ones and Ready for Pickup.
Statuses held in ShipStation
Orders in these statuses wait in ShipStation’s On Hold, so nobody ships them yet.
Statuses cancelled in ShipStation
An order moved to one of these is cancelled in ShipStation, so nobody ships it. An order deleted in EasyCart is cancelled there too.
Send unpaid orders
Bank transfer and other pending orders show in ShipStation’s Awaiting Payment. Off, an order appears once it is paid.
Leave out local pickup orders
Orders the customer collects from the store stay out of ShipStation.
Order number prefix
Shown before the order number in ShipStation. WEB- shows order 1042 as WEB-1042. Up to 10 characters.
Order key prefix ( unique per store )
Keeps this store’s orders apart from other stores on the same ShipStation account. One is made for you. Letters and numbers only, up to 20. Changing it makes ShipStation see every order as new, so set it once and leave it.
ShipStation custom field 1
What goes into ShipStation’s custom field 1: nothing, the coupon code, PO number, payment method, payment terms, EasyCart order ID, the first 100 characters of the customer’s notes, the gift recipient’s email, or the subscription and shipment number. Custom fields show in ShipStation’s order grid, and its automation rules can use them.
ShipStation custom field 2
The same choices, for custom field 2.
ShipStation custom field 3
The same choices, for custom field 3.
Send product images
Pickers see each item’s picture in ShipStation and on packing slips.
Send discounts as a line
The order’s discount shows as its own line, so ShipStation’s totals match the order.
Send the order’s private notes
Your team’s private notes on the order go to ShipStation’s internal notes. The customer’s notes always go.
Send the last 30 days again
Send again marks every order from the last 30 days as changed. ShipStation reads them again on its next import and updates what it has. Use it after changing the settings above.
⚠️ Careful: Leave the order key prefix alone once ShipStation has your orders. A new prefix makes every order look new to ShipStation, and they arrive a second time.
Everyday shipping
Shipments come back
What happens when ShipStation ships, how to follow an order, and monthly boxes.
When ShipStation ships
Each shipment comes back to the order with its items, carrier and tracking number.
2 settingsWho emails the customer
EasyCart sends your shipped email with the tracking link as each shipment comes back. Choose ShipStation to use ShipStation’s own shipping email instead. The extension never sends both.
Mark the order shipped
Moves the order to Shipped once everything in it has shipped. When only part of an order ships, the order screen and the email show what went, and the status waits for the rest.
💡 Note: If you keep EasyCart as the sender, leave ShipStation’s own shipment emails off for this store, so customers get one email, not two.
Following an order
The ShipStation card, the orders list and Send to ShipStation again
no stored settingsEvery order screen has a ShipStation card. It says whether the order is In ShipStation and when ShipStation last read it, Waiting for the next import, or Not sent and why: local pickup, nothing to ship, not paid yet, or a draft. A monthly subscription order lists each box with its date.
Send to ShipStation again, on the card and in the order’s More menu, marks the order changed so ShipStation reads it again on its next import, or straight away with an API v1 key. Edits, cancellations and refunds reach ShipStation on their own; use this when an order looks out of date there.
The Orders list has a ShipStation column and a filter for In ShipStation, Not in ShipStation yet and Not sent. Tick orders and choose Send to ShipStation again from the bulk actions to resend several at once.
When ShipStation ships, the package lands on the order with its items, carrier and tracking number. ShipStation packs its own way, so the items it shipped become one package, and whatever is left keeps waiting.
Subscriptions
A subscription paid every 3 months or every year can ship a box every month. Each month becomes its own ShipStation order, held until its date.
4 settingsShip subscriptions monthly
Off: each payment is one shipment. Every subscription: a plan paid every 3 months ships 3 monthly boxes, a yearly plan 12. Chosen products: only the products you pick below. Weekly and daily plans always ship with each payment.
Products that ship monthly
Shown when Ship subscriptions monthly is Chosen products. Search for the subscription products whose payments cover several months.
Ship each month on
The same day of the month as the order, or a fixed day from 1 to 28. The first box always ships right away; later boxes wait in ShipStation’s On Hold until their date.
Cancel the boxes still to come when the subscription ends
When the customer cancels the subscription, the months not yet due are cancelled in ShipStation. Boxes already shipped are not touched.
Activity
ShipStation’s visits to the store feed, shipments that came back, and anything that went wrong.
no stored settingsThe last section of the settings page lists ShipStation’s latest visits: each import, with how many orders it read, and each shipment that came back, with its order number. A visit that failed is marked, with the reason, such as a shipment for an order this store does not know.
When ShipStation goes quiet. If ShipStation has not read the feed for six hours, the Status row turns Quiet, and EasyCart screens show a notice when orders changed in that time. Check that automatic import is on for this store in ShipStation, then press Check now. The same notices warn you when a key is about to expire or ShipStation stops accepting it.
With an API key
Labels, rates and stock
Optional keys for faster imports, labels from the order screen, rates at checkout and stock.
Import right away ( API v1 key )
Optional. ShipStation imports on its own every couple of hours; with an API v1 key, each paid order asks it to import straight away.
6 settingsAPI v1 key
From ShipStation › Settings › Account › API Settings › API v1 › Generate. Only the account owner can make keys. WP EasyCart Premium stores it encrypted, so after saving the box only shows dots and the last four characters.
API v1 secret
The secret made with the key. Saving checks both with ShipStation and warns you if ShipStation turns them down.
Key expires on
ShipStation keys last 3, 6 or 12 months, and ShipStation shows the date next to the key. Enter it here and you get a reminder on EasyCart screens two weeks before.
Import right after each paid order
After each paid or changed order, asks ShipStation to import the store feed straight away, at most every few minutes, instead of waiting for its own schedule.
ShipStation store
The Custom Store you added for this site. When the account has only one, it is found for you.
Check the key
Check now asks ShipStation for your stores with this key and says how many it found.
Labels, rates and stock ( API v2 key )
Optional. Buy ShipStation labels from the order screen, show ShipStation rates at checkout, keep stock in step and get delivery updates. There is no test mode: every label is real.
8 settingsAPI v2 key
From ShipStation › Settings › Account › API Settings › API v2 › Generate. Stored encrypted by WP EasyCart Premium. Saving checks it with ShipStation and, with Delivery updates on, sets them up.
Key expires on
The date ShipStation shows next to the v2 key. You get a reminder two weeks before, because labels, rates at checkout and stock stop when it expires.
Ship from
The ShipStation ship-from location labels and rates at checkout start from. Leave it on ShipStation’s default unless you ship from several. Locations are made in ShipStation under Settings › Shipping › Ship From Locations.
Label file
The file your labels come as: PDF, PNG image, or ZPL for thermal printers.
Label size
4×6 suits label printers. Letter prints on office paper.
Delivery updates
ShipStation tells the order when a package is in transit, out for delivery, delivered or has a problem, and a delivered package can move the order to Delivered. The updates arrive through WP EasyCart Premium. Tracking is also read back twice a day, in case one goes missing.
Check the key
Check now reads your carriers and ship-from locations, and lists them.
Set up delivery updates again
Set up tells ShipStation where to send delivery updates again. You need it after the site’s address changes; the Status row warns you when it has.
⚠️ Careful: ShipStation has no test mode. Every label bought from the order screen is real and charged to your ShipStation account, so void a test label straight away.
Buying a label from an order
Compare your ShipStation carriers, buy and print on the order screen
no stored settingsWith an API v2 key, each package waiting to ship has a ShipStation label button, and Create shipping label lists ShipStation too. The label window compares every carrier on your ShipStation account, ShipStation’s own discounted ones included, from your ship-from location. Check the weight and size, pick a delivery confirmation if you want one, press Get rates, choose a rate marked cheapest or fastest, and buy. A package leaving the country gets a customs declaration from each product’s HS code and country of origin.
Once bought, the package carries the tracking number and new buttons:
Print label: opens the label file again.
Customs form: when the carrier made one.
Void: cancels a label you will not use. ShipStation asks the carrier for a refund; USPS refunds can take a few weeks.
Return label: makes a prepaid return label. The carrier charges it when it is used, or however it bills returns.
Without an API v2 key, ShipStation’s row in Create shipping label opens your ShipStation orders instead. Labels bought in ShipStation still come back to the order through the feed; void those in ShipStation.
Rates at checkout
Live rates from your ShipStation carriers, including ShipStation’s own discounted ones, as shipping choices at checkout.
4 settingsShow ShipStation rates at checkout
Offers the services you pick below as shipping choices at checkout, priced live for each cart. Needs the API v2 key, WP EasyCart PRO, and Live shipping rates as the store’s rate method under Settings › Shipping. If ShipStation does not answer within 8 seconds, checkout shows your other rates without it.
Services to offer
The services from your ShipStation carriers to offer. Each one becomes its own live rate. The Status row counts how many are on.
Markup
Added to each rate, as a percent of it. Up to 500%.
Handling fee
A fixed amount added to each rate, once per order.
Stock from ShipStation
Every hour, ShipStation Inventory’s stock is written to the products and option combinations with the same SKU. Only from ShipStation to EasyCart.
4 settingsKeep stock in step with ShipStation
Every hour, stock in ShipStation Inventory is written to the products and option combinations with the same SKU. Needs the API v2 key and ShipStation Inventory on your ShipStation plan. A product must track stock and have a SKU. Nothing is written back to ShipStation.
Stock to use
Available is on hand minus what ShipStation has already set aside for orders. On hand is everything on the shelf.
Only this inventory warehouse
A ShipStation inventory warehouse ID, to read only that warehouse. Leave it empty to add up every warehouse.
Read stock now
Read now reads stock straight away instead of waiting for the hourly read. The Status row then shows how many SKUs ShipStation has, how many products changed, and how many SKUs match no product.
Keep going
Related panels
Where each order’s packages and tracking live.
Packages, the rate method and live rates.
The rates your checkout offers.
Stock tracking and SKUs, which stock from ShipStation needs.
Try the PRO features free for 14 days
Anything marked PRO comes with WP EasyCart PRO or Premium. Take the whole thing for a run on your own store before you decide.








