ShipStation

ShipStation is a web-based shipping software that helps eCommerce retailers manage and streamline order fulfillment across multiple sales channels and carriers.

Data integration: Skyvia supports importing data to and from ShipStation, exporting ShipStation data to CSV files, replicating ShipStation data to relational databases, and synchronizing ShipStation data with other cloud apps and relational databases.

Backup: Skyvia Backup supports ShipStation backup.

Query: Skyvia Query supports ShipStation.

Establishing Connection

To create a connection to ShipStation, specify an API Key and API Secret.

Getting Credentials

To locate API key and API Secret, do the following:

  1. Go to your ShipStation account.
  2. Click the gear icon in the upper left corner.
  3. Click Account -> API Settings.
  4. Select the API version. Click Generate API Key.

    Connection Editor window

  5. Copy the generated API Key and API Secret, if applicable.

Creating Connection

To connect to ShipStation, select the API version and enter the obtained API Key. If you’re using API v1, you’ll need both an API Key and an API Secret.

Connection Editor window

API Keys for API v1 and API v2 are not interchangeable.

Connector Specifics

Object Peculiarities

Orders

If you map the Items field to constant or expression in your integration, adjust mapping according to the following format.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[
  {
    "OrderItemId": 102165090,
    "LineItemKey": "48510350416394",
    "Sku": "B0006ZZGZI",
    "Name": "Texas Instruments TI-83 Plus Programmable Graphing Calculator",
    "ImageUrl": "http://ecx.images-amazon.com/images/I/21S41356K0L.jpg",
    "Weight_Value": 8,
    "Weight_Units": "ounces",
    "Quantity": 1,
    "UnitPrice": 45,
    "TaxAmount": 0,
    "ShippingAmount": 4.95,
    "Adjustment": false,
    "CreatedDate": "2013-08-01T07:24:09Z",
    "UpdatedDate": "2013-08-01T07:24:09Z"
  }
]

Filtering Specifics

ShipStation supports filtering for the following objects and fields:

API v1

Objects Operator Fields
Customers = State, CountryCode
OrderItems = OrderStatus
  >, >=, <, <= OrderDate, OrderPaymentDate, OrderCreatedDate, OrderUpdatedDate
Orders = OrderStatus, CustomerUsername
  >, >=, <, <= OrderDate, PaymentDate, CreatedDate, UpdatedDate
Packages = CarrierCode
Services = CarrierCode
ShipmentItems >=, <= ShipDate
  >, >=, <, <= ShipmentCreatedDate
Shipments = OrderId, CarrierCode, TrackingNumber
  >=, <= ShipDate
  >, >=, <, <= CreatedDate
StoreRefreshStatus = StoreId

API v2

Objects Operator Fields
Batches = Status
Labels = Status, ShipmentId, TrackingNumber, BatchId, CarrierId, ServiceCode
  >, >=, <, <= CreatedDate
Manifests = CarrierId, WarehouseId
  >, >=, <, <= ShipDate, CreatedDate
SheduledPickups = CarrierId, WarehouseId
  >, >=, <, <= CreatedDate
Shipments = ShipmentStatus, ShipmentNumber, ShipTo_Name, ExternalShipmentId
  >, >=, <, <= CreatedDate, UpdatedDate
SkuInventoryLevels = InventoryWarehouseId, InventoryLocationId

Use these filters to improve performance and save API calls. You can use filters with other fields or operators, but it may increase API call usage.

Sorting Specifics

ShipStation supports ascending/descending sorting for the following objects and fields:

API v2

Object FieldS
Batches CreatedDate, ProcessedAt
Labels CreatedDate
Shipments CreatedDate, UpdatedDate

Nested Objects

The following fields store complex structured data in JSON format:

API v1

Object Field
Orders Items

API v2

Object Field
Carriers Options, Packages, Services
Labels AlternativeIdentifiers, Packages
Shipments Items, Packages, ShipTo_Geolocation, TaxIdentifiers
Webhooks Headers

You can use our Nested Objects mapping feature in the Import integrations to insert or update the nested values in such fields. Select the Separate Tables for the Unwind Nested Objects option when using the new replication runtime to replicate the nested data into separate tables.

Incremental Replication and Synchronization

API v1

Skyvia supports Incremental Replication for the following ShipStation objects: Customers, Fulfillments, OrderItems, Orders, Products, Shipments, Stores, Warehouses. Skyvia can track only new records for the Fulfillments, Shipments, and Warehouses objects.

Skyvia supports Synchronization for the Orders and Warehouses objects. Skyvia can track only new records for the Warehouses object.

API v2

Skyvia supports Incremental Replication for the following ShipStation objects: Batches, InventoryLocations, InventoryWarehouses, InvalidShipmentRates, Labels, Manifests, ScheduledPickups, ShipmentRates, Shipments, Warehouses. Skyvia can track only new records for the InvalidShipmentRates, Labels, Manifests, ScheduledPickups, ShipmentRates, and Warehouses objects.

Skyvia supports Synchronization for the InventoryLocations and InventoryWarehouses objects.

DML Operations Support

Skyvia supports DML operations for such ShipStation objects:

API v1

OPERATION OBJECT
UPDATE, DELETE Orders
UPDATE Warehouses
DELETE Webhooks

API v2

OPERATION OBJECT
UPDATE, DELETE InventoryLocations, InventoryWarehouses, PackageTypes, Webhooks
DELETE Batches, ScheduledPickups

Stored Procedures (API v2)

UpdateSkuStockLevels

To update stock levels, use the following command:

call UpdateSkuStockLevels(:transaction_type, :inventory_location_id, :sku, :quantity, :cost_amount, :cost_currency, :condition, :lot, :usable_start_date, :usable_end_date, :effective_at, :reason, :notes, :new_inventory_location_id, :new_cost_amount, :new_cost_currency, :new_condition)

Parameter Description
transaction_type Required parameter. Type of update to perform. Allowed values: increment, decrement, adjust, modify.
inventory_location_id Required parameter. ID of inventory location.
sku Required parameter. SKU identifier.
quantity Required parameter. Quantity to increment, decrement, or set.
cost_amount Cost amount.
cost_currency Currency of cost amount.
condition Inventory condition. Allowed values: sellable, damaged, expired, qa_hold.
lot Lot or batch identifier.
usable_start_date Timestamp when stock becomes usable.
usable_end_date Timestamp when stock expires.
effective_at Timestamp when the transaction becomes effective.
reason Reason for stock adjustment.
notes Notes for stock adjustment.
new_inventory_location_id Target location ID to which stock will be moved.
new_cost_amount New cost amount.
new_cost_currency New cost currency.
new_condition New condition for the existing stock. Allowed values: sellable, damaged, expired, qa_hold.

GetShipmentByExternalId

To get shipment by external ID, use the following command:

call GetShipmentByExternalId(:external_shipment_id)

Parameter Description
external_shipment_id Custom external ID.

CancelShipment

To mark shipment as cancelled, use the following command:

call CancelShipment(:shipment_id)

Parameter Description
shipment_id ID of the shipment.

AddTagToShipment

To add a tag to the shipment, use the following command:

call AddTagToShipment(:shipment_id, :tag_name)

Parameter Description
shipment_id ID of the shipment.
tag_name The tag to be added.

RemoveTagFromShipment

To remove an existing tag from the shipment, use the following command:

call RemoveTagFromShipment(:shipment_id, :tag_name)

Parameter Description
shipment_id Shipment ID.
tag_name The tag to be removed.

StopTrackingPackage

To stop tracking the package, use the following command:

call StopTrackingPackage(:carrier_code, :tracking_number)

Parameter Description
carrier_code Carrier code.
tracking_number Package tracking number.

VoidLabel

To void the label, use the following command:

call VoidLabel(:label_id)

Parameter Description
label_id Label ID.

Supported Actions

Skyvia supports all the common actions for ShipStation.

OSZAR »