Skip to main content

ShipStation Installation Instructions

Step-by-step instructions for installing and configuring the ShipStation integration on iPaaS.com, including generating the ShipStation V1 and V2 API credentials, entering your subscription settings, and enabling multi-address shipments.

See what the ShipStation integration can do →

This article walks you through installing and configuring the ShipStation integration on iPaaS.com. You will generate the API credentials ShipStation requires, subscribe to the integration from the marketplace, enter your subscription settings, complete the additional configuration that order shipments depend on, and verify that the integration is working.

Before You Begin

The ShipStation integration connects to two generations of the ShipStation API, and each uses its own credential:

  • V1 API credentials (an API Key and an API Secret): used to bring shipments and shipping methods from ShipStation into iPaaS.com.

  • V2 API credential (a single V2 API Access Key): used to create shipments in ShipStation from iPaaS.com orders.

Obtain all three values before you start so you can enter them during setup. Both API generations are generated from the same page in ShipStation.

  1. Log in to your ShipStation account as the Account Owner. ShipStation only allows the account owner to generate API keys.

  2. Go to Account Settings, select Account from the side navigation, then choose API Settings.

  3. Select the API Version from the dropdown and click Generate API Key. Generate the V1 keys first (an API Key and an API Secret), then repeat for V2 (a single API key).

  4. ShipStation emails a verification link to your user email address the first time you generate keys. Open the link, return to the API Settings page, and click Generate API Key again.

  5. Set the expiration for the key (3, 6, or 12 months) and click Generate.

  6. Copy each value immediately and store it in a secure location. You will paste them into your iPaaS.com subscription settings.

ShipStation API Settings page showing the API Keys section

ShipStation API Settings page with V2 selected in the API Version dropdown

Important Notes

  • ShipStation shows an API key only once, immediately after it is generated and only to the user who generated it. If you navigate away before copying it, generate a new key.

  • ShipStation API keys expire on the schedule you chose when generating them (3, 6, or 12 months). ShipStation emails a reminder before a key expires. Generate a replacement, update the matching value in your iPaaS.com subscription settings, and only then delete the old key so transfers are not interrupted.

  • V1 and V2 keys are not interchangeable. Only one V2 key can be active at a time, while ShipStation allows two V1 keys so you can rotate them.

  • API access requires a ShipStation plan that includes it. At the time this documentation was written, ShipStation states that V1 and V2 API access is available on its Standard, Accelerate, or higher plans and that keys on lower plans stop working. ShipStation also offers a separate developer product (ShipStation API, formerly ShipEngine) whose free plan can create shipments through the V2 API, but that product has no V1 API, so the inbound shipment, shipping method, and store lookups this integration relies on are not available with it. Confirm your plan with ShipStation before generating keys.

  • Treat every key like a password. Anyone with these values can access your ShipStation account and data.

You should also note two names from your ShipStation account, because your order source supplies them on each order and the integration looks them up by name when creating shipments (see Additional Configuration for Order Shipments below):

  • The name of each Ship From Location (warehouse) the shipments can ship from, found under Account Settings, then Shipping, then Ship From Locations.

  • The name of the Store the shipments should be created under, found under Account Settings, then Selling Channels, then Store Setup. Every ShipStation account includes one manual store by default (typically named Manual Orders), which is a suitable choice when orders do not come from a connected selling channel.

Installation Instructions for Integration Setup

  1. In iPaaS.com, go to Subscriptions Management, then Subscriptions, and click Search Certified Integration Marketplace and Subscribe.

    Subscriptions page with the Search Certified Integration Marketplace and Subscribe button highlighted
  2. Locate and click the ShipStation integration tile in the marketplace.

    ShipStation integration tile in the marketplace
  3. On the Subscription Detail page, click Subscribe.

  4. Enter a name for the subscription and select a version. The name can be any value that is relevant and unique within the company where the subscription is created.

    • Format: [Product Name] - [Environment/Purpose]

    • Example: ShipStation - Production

  5. Select Create Default Mappings (recommended). This pre-populates the subscription with the standard ShipStation mapping collections so you have a working starting point.

    NOTE: If you prefer to build all mappings yourself from scratch, leave this box unchecked.

  6. Enter your subscription settings on the Subscription Settings page. The settings specific to the ShipStation integration are:

    • API Url (required): The base address iPaaS.com uses to reach the ShipStation V1 API for your account.

    • API Key (required): The V1 API Key you copied from ShipStation.

    • API Secret (required): The V1 API Secret you copied from ShipStation.

    • V2 API Base URL (required): The base address iPaaS.com uses to reach the ShipStation V2 API, through which orders are sent to ShipStation.

    • V2 API Access Key (required): The V2 API key you copied from ShipStation.

    • Enable Multi Address Shipment (optional): Set to True to create one ShipStation shipment per destination address when an order's line items ship to different addresses. Leave it unset or set it to False to create a single shipment per order. See Additional Configuration for Order Shipments below before enabling it.

      • Default Value: False

    • Concurrent Batch Executions (required): The maximum number of batch executions the integration processes at the same time. The field is pre-filled with the default; leave it unless you have a reason to change it.

      • Default Value: 10

    NOTE: iPaaS.com does not save the subscription settings while either V2 setting is empty. If your subscription's settings were saved before these two settings became required, enter both before sending orders: until they are present, orders cannot be sent to ShipStation (see SHST-AUTH-1002 in the ShipStation Error Messages article).

    Subscription Settings page showing the required V1 and V2 credential fields, Enable Multi Address Shipment, and the throughput settings
  7. The Subscription Settings page also includes the standard iPaaS.com throughput controls (for example, API Throttle Limit, API Throttle Seconds, and Concurrent Connections). These govern how frequently and how much data the integration moves at once. Reduce them if you encounter rate-limit errors. The default values shown on the page are appropriate for most subscriptions.

  8. Click Apply to save the settings.

Authentication Configuration

The integration authenticates differently against each ShipStation API generation, and no separate sign-in or token-refresh step is required after setup.

  • V1 API: HTTP Basic authentication. iPaaS.com combines the API Key and API Secret you entered and sends them with every request that reads shipments and shipping methods from your ShipStation account.

  • V2 API: API-key authentication. iPaaS.com sends the V2 API Access Key as a request header with every request that creates or updates shipments in your ShipStation account.

ShipStation API Keys

  • Location: In ShipStation, go to Account Settings, select Account, then API Settings. Choose the API Version from the dropdown to generate a V1 or V2 key.

  • Description: The V1 API Key identifies your account and the V1 API Secret authorizes the request. The V2 API Access Key does both on its own.

  • Required: Yes, all three. The V1 API Key and API Secret are used for the shipments and shipping methods brought into iPaaS.com and for the store lookup when orders are sent, and the V2 API Access Key is used for every order sent to ShipStation.

Important Notes

  • Enter each key exactly as it appears in ShipStation, with no extra spaces.

  • If you regenerate or rotate a key in ShipStation, update the matching value in your iPaaS.com subscription settings, or the integration will no longer be able to connect for the transfers that use it.

  • The subscription connection test does not, at the time this documentation was written, confirm that your credentials are valid. Confirm authentication by running a test transfer (see Post-Installation Verification) rather than relying on the connection test alone.

Additional Configuration for Order Shipments

When an iPaaS.com order is sent to ShipStation, the integration creates a ShipStation shipment for it (a sales order is created alongside so the order is visible in ShipStation). No shipping label is purchased; the shipment arrives in ShipStation with a Pending status so your team can select the carrier and service, confirm the package details, and purchase the label in ShipStation. The settings in this section control where that shipment is created and whether an order can be split into several shipments.

Custom Fields for Order Shipments

The Ship From Location, store, currency, and weights of each shipment are read from custom fields that your order source populates on the order, so every order carries its own values and nothing in the ShipStation subscription's mappings needs to be edited. Create the custom fields on the subscription that supplies the orders (your order source, not the ShipStation subscription), then map your order source's values into them on the order source's own mappings.

To create each custom field:

  1. Open the order source subscription, then go to its Custom Fields, and click Add Custom Field.

  2. Enter the Name exactly as shown in the table, and select the Module and Data Type shown.

  3. Save the custom field, then map the value into it on the order source's mapping for that module (the order, its addresses, or its line items).

Name

Module

Data Type

Required

ShipStation Ship From Location

Transaction Address

String

Yes

ShipStation Store

Transaction

String

Recommended

Currency

Transaction

String

No

Package Weight

Transaction Address

String

No

Package Weight Unit

Transaction Address

String

No

Weight Unit

Transaction Line

String

No

Acceptable values and what happens when a custom field is empty:

  • ShipStation Ship From Location: The name of a Ship From Location exactly as it appears in ShipStation under Account Settings, then Shipping, then Ship From Locations. Letter case and spaces before or after the name are ignored. Example: Main Warehouse. Populate it on every address that can receive a shipment; each address can name a different location. When it is empty or matches no location, that address's shipment is not created and the transfer reports the address (see SHST-EXTN-1004 in the ShipStation Error Messages article), while the order's other shipments are still sent.

  • ShipStation Store: The name of a store exactly as it appears in ShipStation under Account Settings, then Selling Channels, then Store Setup. Letter case and surrounding spaces are ignored. Example: Manual Orders. When it is empty or matches no store, ShipStation files the shipment under your account's default store; a misspelled name is not reported, so confirm the spelling. The store is set when the shipment is first created and cannot be changed afterward.

  • Currency: A three-letter ISO 4217 currency code that ShipStation supports, in any letter case, applied to the amount paid, shipping paid, and tax paid on each shipment. Examples: usd, cad, eur, gbp, aud. When it is empty, usd is used. ShipStation rejects a value that is not a currency code it recognizes, such as a currency name or symbol, and the order's shipments are not created.

  • Package Weight: The packed weight of the address's shipment as a number, with a period as the decimal separator and no unit text. Examples: 12.5, 3. When it is empty, 0 is sent and, unless the line items carry weights, the weight is entered per package in ShipStation before the label is purchased. A value that is not a number fails the order's transfer.

  • Package Weight Unit: pound, ounce, gram, or kilogram, singular or plural, in any letter case. Example: pound. When it is empty, ounce is used.

  • Weight Unit: The unit of the line item's weight: pound, ounce, gram, or kilogram, singular or plural, in any letter case. Example: pound. When it is empty, pound is used.

Important Notes

  • ShipStation rejects weight-unit abbreviations such as lb, lbs, oz, or kg with the message "Requested value 'lb' was not found", and the affected shipment is not created. Spell the unit out.

  • ShipStation recalculates the package weight shortly after it creates a shipment. When the order's line items carry a weight, the package weight becomes their total weight (each item's weight multiplied by its quantity), so the Package Weight custom field matters only for orders whose line items have no weight. A line item's weight is the weight of one unit. ShipStation shows every package weight in ounces, so a weight entered in another unit appears converted (for example, 2 grams appears as 0.07 ounces).

  • Until the ShipStation Ship From Location custom field is populated with a location that exists in your account, order transfers fail with a message that no warehouse or ship-from address is set for the shipping address.

A caution on the other shipment fields. The Add/Update ShipStation Shipment Address FROM iPaaS.com collection also exposes fields for the carrier, the shipping service, the shipment status, package dimensions, insured value, and label reference messages. The shipped mappings leave them unmapped on purpose so every shipment arrives as a Pending shipment that your team reviews in ShipStation. Mapping them can hand ShipStation a shipment that is already carrier-assigned and marked ready, which ShipStation automation or batch processing may then label and charge without anyone auditing it. Do not map these fields unless you or your MiSP have confirmed the result in a staging environment.

Multi-Address Shipments

Set Enable Multi Address Shipment to True only when your orders can ship to more than one address and each line item identifies its own destination. The integration then creates one shipment per distinct destination address, containing only the line items for that address, and numbers the shipments "[order number] (1 of N)", "(2 of N)", and so on. With the setting off, every line item ships in one shipment to the order's primary shipping address, and any destination the line items carry is ignored.

The destination is read from a custom field on each line item and resolved to the matching address on the order. Because an order source knows its own address identifiers but not the identifiers iPaaS.com assigns, the field carries the order source's identifier for the address, and the integration looks the address up from it. The value must be exactly the external id the order source registers on the order's address in iPaaS.com.

  1. Open the order source subscription, then go to its Custom Fields, and click Add Custom Field.

  2. Enter ShipToAddressExternalId as the Name, select Transaction Line as the Module, and choose String as the Data Type.

  3. Save the custom field, then map the destination address identifier from your order source into it on the order source's line item mapping. Leave it empty on orders that ship to a single address.

Examples of acceptable values, which depend on the order source:

  • Shopify: the order's shipping address is registered as the order id followed by |SHIP, for example 450789469|SHIP.

  • Counterpoint: the order's ship-to address is registered under the order document number, for example 1234567.

  • Any other source: the same external id shown on the address of the order in iPaaS.com, under the order source's system.

Important Notes

  • When the setting is True, a line item whose destination is empty ships with the order's primary shipping address (or, if no address is flagged primary shipping, its first address that is not the billing address). A line item whose destination does not match an address on the order is not shipped, and the transfer reports it (see SHST-EXTN-1004 in the ShipStation Error Messages article) while the order's other destinations are still sent. Confirm that your order source populates the field correctly before enabling the setting.

  • Line items that share a SKU but ship to different addresses are split by address, so the same SKU can appear on more than one shipment.

  • The setting can be turned on or off at any time. Orders already sent to ShipStation are not re-split; the setting applies to orders transferred after the change.

Post-Installation Verification

After completing the installation, perform these checks to confirm the integration is working.

Credential Test

  • Run a small test transfer in each direction (for example, bring shipping methods in from ShipStation, and send a single test order to ShipStation).

  • Confirm each transfer completes without an authentication error. A successful inbound transfer verifies the V1 API Key and API Secret; a successful order transfer verifies the V2 API Access Key.

Data Sync Test

  • Send a sample order from iPaaS.com to ShipStation and confirm a shipment with a Pending status appears under Shipments in your ShipStation account, showing the order number, the line items, and the Ship From Location you configured. ShipStation may display the ship-to address in its standardized form (for example, upper-case street and city with a nine-digit ZIP code).

  • If Enable Multi Address Shipment is True, send a sample order whose line items name two different addresses and confirm two shipments appear, numbered (1 of 2) and (2 of 2), each containing only its own line items.

  • Bring a sample shipment from ShipStation into iPaaS.com and confirm the tracking record is created and attached to its order.

Functionality Test

  • Run an end-to-end business process that exercises the mappings you rely on.

  • Validate key behavior such as field mappings and the resulting records in both systems.

  • Review the integration's activity in the iPaaS.com Dashboard under Integration Monitoring.

Support and Troubleshooting

If you run into an issue, review the integration's activity in the iPaaS.com Dashboard under Integration Monitoring, then check the Error Logs for details on any failed transfer. You can also click the Help button on any iPaaS.com page to contact Support or search the documentation.

Related Documents

Did this answer your question?