ShipStation Integration
Connect your FirearmCart store with ShipStation for multi-carrier shipping and label printing.
Features
| Feature | Description |
|---|---|
| Order push | Fulfillments sent to your ShipStation queue |
| Real-time rates | Compare rates across your ShipStation carriers at checkout |
| Label printing | Print shipping labels in ShipStation |
| Tracking sync | Tracking updates flow back to FirearmCart automatically |
Prerequisites
Before connecting, you need:
- Active ShipStation subscription
- Carrier accounts connected in ShipStation (UPS, FedEx, etc.)
- API key and secret from ShipStation
Getting API Credentials
- Log into ShipStation
- Go to Settings > Account > API Settings
- Generate new API Key
- Copy API Key and Secret
Setting Up
- Navigate to Plugins > Marketplace
- Find ShipStation
- Click Activate
- Enter your API Key and API Secret
- Pick your Store — FirearmCart lists the stores on your ShipStation account and selects it for you if you only have one
- Click Activate Plugin
Your credentials are verified against ShipStation before activation, and the tracking webhook is registered for you automatically — there is nothing to paste into ShipStation by hand. Once active, a ShipStation entry appears under Plugins in the sidebar.
Configuration Options
Configure these on Plugins > ShipStation:
| Setting | Description |
|---|---|
| Ship From Address | Address, apartment/suite, city, state, ZIP — used to calculate rates |
| Carriers | Which of your ShipStation carriers to use for real-time rates |
| Services | Which services from each carrier to offer at checkout |
| Enable real-time rates at checkout | Master switch for checkout rating through ShipStation |
| Max box weight (lb) | Weight ceiling used when splitting an order across multiple boxes |
| Test Connection | Verify your API key and secret authenticate with ShipStation |
Only one ShipStation connection is allowed per store.
Order Push
Orders reach ShipStation per fulfillment, not automatically on every order:
- Customer places order in FirearmCart
- The order’s fulfillments are processed — automatically if you have fulfillment auto-processing turned on in Settings > Fulfillment, otherwise when you process them from the order page
- Each ShipStation-routed fulfillment is pushed into your ShipStation queue
- Create the shipping label in ShipStation
- Tracking syncs back to FirearmCart
- Customer receives shipping notification
What Gets Pushed
- Order number (order ID plus fulfillment ID)
- Customer email
- Bill-to address (always the customer)
- Ship-to address — the FFL for firearm fulfillments, otherwise the customer’s shipping address
- Line items: SKU, name, quantity, unit price, UPC
- Amount paid, shipping and tax
- The order note
Dropship lines are stripped before the push — only warehouse-shippable items are sent.
Real-Time Rates
With Enable real-time rates at checkout on, ShipStation returns live rates at checkout:
- Rates come from the carriers and services you selected
- Rated against your Ship From address and the customer’s destination
- Options that aren’t legal for the shipment’s item class (for example, handguns) are filtered out before the customer sees them
- The customer’s selected rate is applied to the order
FFL Shipping
For firearm orders:
- The FFL’s address is used as the ship-to on the fulfillment pushed to ShipStation, with the FFL’s business name as the company
- The customer remains the bill-to
- When a label is purchased through ShipStation rating rather than in the ShipStation UI, adult signature is set automatically for handgun and long-gun shipments
Tracking Sync
Tracking flows back two ways, and the two are de-duplicated by tracking number:
- Webhook — ShipStation’s
SHIP_NOTIFYnotification, registered automatically at activation with a per-store secret - Polling — every 10 minutes FirearmCart also queries ShipStation for shipments on any fulfillment still awaiting tracking, because
SHIP_NOTIFYis delivered best-effort and can be delayed or dropped
When tracking arrives the fulfillment is marked shipped, registered for tracking updates, and the customer notification fires.
Troubleshooting
Orders Not Reaching ShipStation
- Use Test Connection on the ShipStation page to confirm the API credentials still authenticate
- Confirm the fulfillment is actually routed to ShipStation
- Confirm the fulfillment has warehouse-shippable items — dropship-only fulfillments are never pushed
- Check that the fulfillment was processed (automatically or from the order page)
Tracking Not Updating
- Give the 10-minute polling sweep a chance to run — it picks up shipments the webhook missed
- Use Test Connection to confirm the API connection
- If the webhook registration failed at activation, deactivate and re-activate the plugin to re-register it
- Enter tracking manually on the fulfillment if needed
Related Documentation
- Integrations Overview - All integrations
- Fulfillment - Order fulfillment
- Shipping - Shipping configuration
- Shipping Firearms - Firearm shipping requirements

