Table of Contents

SPS Commerce

Colin Updated by Colin

SPS Commerce offers, among other things, a leading solution for business-to-business data exchange, taking much of the pain out of setting up and maintaining your EDI connections.

ShipStream's SPS Commerce integration makes a direct connection to your SPS Commerce account and simplifies the setup of your trading partners to get you launched quickly and with minimal effort.


In a nutshell, there are two components to setting up EDI via SPS Commerce:

  1. Setup the Global Integration to connect to your SPS Commerce account (only performed once)
  2. Add a Merchant Integration to map your Trading Partners to the correct ShipStream Merchants and Brands by Vendor ID and Trading Partner ID (performed once per merchant)

The "Global Integration" establishes the connection to SPS Commerce and acts as a communication channel for the SPS Commerce "Merchant Integration", of which you may setup any number of subscriptions. This allows the configuration to be managed per-Merchant as part of the plugin system giving your merchants maximum flexibility and visibility while keeping the EDI data and connection management siloed appropriately.

  • When an EDI file is received from SPS Commerce, ShipStream will parse the file and attempt to match it to a plugin subscription based on the Vendor ID.
  • Merchants will be able to see plugin errors that are logged for troubleshooting so long as the incoming EDI files matched the Merchant's SPS Commerce plugin subscription using the Vendor ID.
  • If a Merchant cannot be matched to the incoming file's Vendor ID, the EDI Transaction will be left in "Merchant Not Found" status and will not be visible to any merchants.
  • All sent and received documents can be seen at System > Integrations > EDI Documents.

Supported Fulfillment Models

ShipStream currently supports the Drop Ship (B2C) and Bulk Import (B2B) fulfillment models. Please let us know if you are interested in supporting other fulfillment models.

The following document types are utilized:

  • Orders - Receive orders for goods fulfillment
    • 850, 875, 940, ORDERS, PurchaseOrders
  • OrderAcks - Acknowledge receipt of or reject Orders
    • 855, ORDRSP, PurchaseOrderAcks
  • Shipments - Notify of shipped goods including tracking details
    • 856, 943, 945, AdvanceShipNotices, DESADV

Setup Global Integration

Before you can start, you will need an account with SPS Commerce. If you don't have one, let us know and we'll get you introduced!

You do not need to visit the SPS Commerce Developer Center or create an SPS Commerce "App" or have an FTP account. ShipStream uses the SPS Commerce Transaction API to connect to your SPS Commerce account by authenticating via the SPS Commerce website as described below. Your SPS Commerce account credentials should never be shared with ShipStream or anyone outside of your organization.
ShipStream's SPS Commerce integration expects all files to be exchanged in RSX format using JSON encoding and conforming to RSX version 7.7.7. Your SPS Commerce account manager will work with you to convert EDI files from any trading partner in any format to this standardized format.

Once you have your SPS Commerce account, head over to your ShipStream instance and follow these instructions.

  1. Login and click System > Integrations > Global Integrations (if you don't see this you may need to add or update your User Roles).
  2. Below "Setup new Global Integration" click "SPS Commerce".
  3. If your Location IDs are known and differ from your ShipStream Warehouse IDs (see System > Enumerations > System > Warehouses), add them to the Location ID Map.
  4. Click "Save and Continue Edit".
  5. Click the "Authorize" button and complete the authorization with your SPS Commerce account.
  6. When you are returned to the ShipStream page for the SPS Commerce integration you should see your company name listed in the Connection Status.

The connection setup is now complete and ShipStream can now pull and push data files to and from your SPS commerce account!

You are now ready to proceed to Setup Merchant Integration below.

Setup Merchant Integration

Once your Global Integration is setup you still need to setup a Merchant Integration subscription for each merchant that will use SPS Commerce.

  1. Login and click System > Integrations > Merchant Integrations (if you don't see this you may need to add or update your User Roles).
  2. Click "Add New Subscription".
  3. Select the appropriate Merchant and click "SPS Commerce" in the list of plugins.
  4. Configure the plugin as appropriate (details below) and click "Save Subscription".

Plugin Configuration

On the subscription page, expand the Plugin Configuration section to configure the SPS Commerce plugin subscription to each merchant's specific needs.


If not active, incoming EDI files will not be matched against this subscription and no outgoing EDI files will be generated for activity on behalf of this merchant.

Enable Test Mode

Selecting "Yes" will prefix all incoming file queries and outgoing file uploads with "test/".

Vendor ID

The Vendor ID placed in the EDI files by SPS Commerce must either match the Merchant's "Code" or, if different, the correct value must be specified in the Vendor ID field.

Trading Partner ID

If the Trading Partner IDs setup with SPS Commerce already match the ShipStream Brand codes, there is no need to map the Trading Partner IDs, otherwise add a row for each Trading Partner ID for which you will be receiving orders and select the appropriate Brand for each.

If different trading partners have different requirements regarding shipping labels and packing slips, you should consider creating a separate Brand for each trading partner to allow full flexibility in configuring the trading partners independently of one another.
Shipping Method Translation

As every order must have a Shipping Method assigned, the integration will make it's best effort to map the incoming CarrierAlphaCode and ServiceLevelCode fields to the closest matching Shipping Method. But, you may override this and specify a Shipping Method Translation to map the CarrierRouting and ServiceLevelCode values coming from SPS Commerce to the ShipStream Shipping Method of your choice.

The CarrierRouting value is a free-form field so will vary by Trading Partner. The ServiceLevelCode should be somewhat standardized and the expected values are listed at the end of this page.

If neither Shipping Method Translation nor the automatic mapping are able to resolve a Shipping Method, the plugin will throw an error with the message "A suitable Shipping Method was not found..." indicating that either the automatic mapping or the Shipping Method Translation should be updated to match the values contained in the EDI file.


To map any value for CarrierRouting and the ServiceLevelCode for "Standard Ground" service (SG) to a Virtual Shipping Method which includes only ground methods and performs Rate Shopping.

Inventory Advice

To report your inventory levels to your trading partners you will simply need to add an Inventory Advice configuration for each Trading Partner which is entered in the first field, and the time interval selected for that Trading Partner in the second field.

Once saved, you can also force an upload to occur immediately by clicking "Upload Inventory Advice" in the Actions section.

Service Level Codes




Three Day Service


A.M. Service




Express Service


Delivery Confirmation


Door Service


Proof of Delivery with Signature


First Class


Standard Service


Inside Delivery


Expedited Service - Worldwide


International Service


Express Service - Worldwide


Last Mile Delivery (typically services that use USPS for the last-mile delivery - e.g. FedEx Ground Economy, UPS SurePost, DHL SmartMail, etc.)






Next Day Air


Next Flight Out


Next Day Hundred Weight


Next Morning


Next Day




Primary Service Area - Next Day by 10:30 A.M.


Priority Mail


Primary Service Area - Next Day by 9:30 A.M.


Priority Mail Insured


P.M. Service


Primary Service Area - Next Day by Noon


P.O. Box/Zip Code


Primary Service Area - Next Day by 5:00 P.M.


Primary Service Area - Second Day by Noon


Pooled Shipment


Premium Service (typically seen as White Glove Service, but varies by carrier or provider )


Same Day


Second Day Air


Saturday Service


Second Day


Standard Ground


Second Day Hundred Weight


Standard Ground Hundred Weight

How did we do?

Freight Club