Commerce integration guide
ShipStation + UbiGrowth workflows
ShipStation is a shipping and fulfilment platform that consolidates orders from multiple sales channels. This guide covers the records that matter, how the connection should be scoped, and what the first bounded workflow should be.
Introduction
Make ShipStation part of the workflow, not another silo.
Validate connector availability for your workspace
This guide covers how a team designs a commerce workflow around ShipStation with UbiGrowth: which records stay authoritative, how the connection should be scoped, what the first bounded workflow should be, and how to tell whether it worked.
The records that matter are Order, Shipment, Store, Carrier, Service, Label, and Warehouse. ShipStation imports Orders from connected Stores and keys them on the store order number, which is not unique across stores. Cross-store reporting needs the store id alongside it.
ShipStation is not currently on UbiVibe's verified connector list. This page is an implementation design reference: use it to specify the workflow, then validate whether the connection is available and correctly scoped for your workspace before you make it a dependency. The verified UbiVibe connections today are Salesforce, HubSpot, Gmail, Google Drive, Slack, and GitHub.
Grow is the usual destination for this connection, because the value shows up as outreach, reply handling, scheduling, and pipeline execution against the connected records.
Why teams evaluate this connection
Integrations create value when they remove operating friction.
The first design decision is not which API endpoint to call; it is which system owns the record, what event should trigger work, who owns the exception path, and what successful completion means.
Commerce platforms generate a continuous stream of events, and most merchants use almost none of it. ShipStation records what was ordered and by whom, but the follow-up, retention, and service work that should follow from that record usually happens in a different tool with a different view of the customer.
The result is that the same customer is treated as new by marketing, as an order number by fulfilment, and as an unknown by support, which is exactly the experience that erodes repeat purchase rates.
You're likely here because
- Order data and customer follow-up live in separate tools
- Support answers order questions without order context
- Lifecycle campaigns run against stale exported segments
Record model
What a ShipStation integration actually reads and writes.
Integration design starts from the objects the system really exposes, not from a generic connector diagram. These are ShipStation's.
Identity and matching
ShipStation imports Orders from connected Stores and keys them on the store order number, which is not unique across stores. Cross-store reporting needs the store id alongside it.
Start here
Read Orders awaiting shipment past the fulfilment target and route them with the carrier service that was promised at checkout, so a delay is visible before the customer notices it.
What this will not do
It will not resolve inventory. ShipStation ships what the store says exists; stock truth stays in the commerce platform or the WMS.
The constraint to plan around
Label creation is a billable, largely irreversible action — voiding has carrier-specific windows. Any automated labelling needs a hard guard, not a retry.
Build notes
What you actually have to reason about in ShipStation.
The fields that carry meaning, how the connection authenticates, and whether the event surface can be trusted. This is the part that decides whether the integration works in month three.
| Field | Why it matters |
|---|---|
| orderNumber vs orderId | the store's number is not unique across stores; the internal id is |
| storeId | which connected store an order came from |
| orderStatus | awaiting_payment, awaiting_shipment, shipped, cancelled |
| serviceCode / carrierCode | the shipping method promised at checkout |
| requestedShippingService | what the customer chose, versus what was actually used |
Authentication
API key and secret over Basic auth, account-wide. Rate limits are strict and enforced with retry-after headers that must be honoured rather than ignored.
Events and delivery
Webhooks cover order and shipment events. Because label creation is billable, event-driven design avoids the polling loops that make accidental duplicate labels more likely.
Workflow
How the ShipStation workflow runs.
The operating sequence, from reading the source system through to the result landing back where it belongs.
Step 01
Read order and customer state
Connected ShipStation data provides the real order, customer, and fulfilment state rather than a periodic export.
Step 02
Resolve the customer
The customer is matched across order, marketing, and support systems using a defined rule, including the ambiguous case.
Step 03
Trigger from a real event
Follow-up is driven by an actual order or fulfilment event, so the message matches the customer experience.
Step 04
Run the lifecycle action
Post-purchase, exception, or repeat-purchase follow-up runs with the product and timing context attached, under review while it is being proven.
Design decisions
The commerce decisions this connection forces.
Each of these has to be settled before the ShipStation workflow is allowed to write anything.
Step 01
Resolve the customer across channels
Decide how a customer in ShipStation is matched to the same person in marketing, support, and any other channel, including what happens when the match is ambiguous.
Step 02
Treat order state as the trigger
Follow-up should be driven by real order and fulfilment state rather than by a periodic export, otherwise the message and the customer experience diverge.
Implementation path
How to implement the ShipStation workflow.
- 01
Decide which records ShipStation owns and which the workflow may act on, starting read-only.
- 02
Define the customer identity match across order, marketing, and support systems before enabling any follow-up.
- 03
Pick one lifecycle moment — post-purchase, fulfilment exception, or repeat-purchase timing — and instrument only that.
- 04
After late-shipment routing works, add carrier performance comparison so the service selection is evidence-based.
Governance
Controls that matter.
Control 01
Order, refund, and fulfilment changes require explicit authorization rather than automated convenience.
Control 02
Customer messaging honours consent, preference, and channel rules.
Control 03
Payment and personal data stay in the systems that already govern them, at scoped access.
Failure modes
How a ShipStation integration breaks in production.
Not generic integration advice. These follow from how this system actually behaves, which is why they look nothing like the list on the next guide over.
Symptom 01
Duplicate labels are purchased for one order.
Cause
A retry loop recreated labels, and each purchase is billable.
Fix
Make label creation idempotent against your own order key, and never retry blindly.
Symptom 02
Cross-store reporting double-counts orders.
Cause
orderNumber is not unique across stores.
Fix
Key on orderId with storeId, not on the store's order number.
Symptom 03
Requests are throttled aggressively.
Cause
Rate limits are strict and were not honoured.
Fix
Respect the retry-after header rather than backing off arbitrarily.
What changes at scale
Rate limits are strict relative to order volume for busy merchants. Webhook-driven processing avoids the polling that causes most throttling here.
Examples
What a working ShipStation workflow looks like.
Bounded scenarios rather than a feature list. Each one can be verified against work the team already does.
Fulfillment workflows
With ShipStation connected, follow-up runs against real order and customer state rather than a segment exported last month.
Post-purchase lifecycle
A specific order event in ShipStation triggers follow-up with the product and timing context attached, instead of a generic scheduled campaign.
Limitations and considerations
What to validate before you depend on this.
- Label creation is a billable, largely irreversible action — voiding has carrier-specific windows. Any automated labelling needs a hard guard, not a retry.
- Creating a label charges for postage and is only voidable within carrier-specific windows. A retry loop that recreates labels spends real money and produces duplicate shipments.
- When inventory accuracy is the requirement. ShipStation ships what the store says exists; stock truth stays upstream.
- Marketplace and platform policies constrain what can be automated around ShipStation, particularly for customer contact; check the rules before designing the workflow.
- Order, refund, and fulfilment writes carry direct customer and financial consequences and need explicit authorization.
FAQ
ShipStation integration questions.
What records does a ShipStation integration actually work with?
The primary records are Order, Shipment, Store, Carrier, Service, Label, and Warehouse. ShipStation imports Orders from connected Stores and keys them on the store order number, which is not unique across stores. Cross-store reporting needs the store id alongside it.
What should the first ShipStation workflow be?
Read Orders awaiting shipment past the fulfilment target and route them with the carrier service that was promised at checkout, so a delay is visible before the customer notices it.
What will a ShipStation integration not do?
It will not resolve inventory. ShipStation ships what the store says exists; stock truth stays in the commerce platform or the WMS.
What is the main constraint to plan around?
Label creation is a billable, largely irreversible action — voiding has carrier-specific windows. Any automated labelling needs a hard guard, not a retry.
What changes about a ShipStation integration at scale?
Rate limits are strict relative to order volume for busy merchants. Webhook-driven processing avoids the polling that causes most throttling here.
How does authentication work for ShipStation?
API key and secret over Basic auth, account-wide. Rate limits are strict and enforced with retry-after headers that must be honoured rather than ignored.
Does ShipStation support webhooks, and can they be trusted?
Webhooks cover order and shipment events. Because label creation is billable, event-driven design avoids the polling loops that make accidental duplicate labels more likely.
What is the risk of writing to ShipStation?
Creating a label charges for postage and is only voidable within carrier-specific windows. A retry loop that recreates labels spends real money and produces duplicate shipments.
When is connecting ShipStation the wrong call?
When inventory accuracy is the requirement. ShipStation ships what the store says exists; stock truth stays upstream.
What should a ShipStation integration automate first?
Start with one bounded workflow that removes a measurable handoff, duplicate-entry step, reporting delay, or follow-up gap. Expand only after the first workflow is reliable.
Does UbiGrowth require ShipStation to be replaced?
No. The operating model is designed around connecting to systems that should remain authoritative and building workflows around them rather than forcing a wholesale replacement.
Is connector availability identical for every workspace?
No. Availability can depend on provider configuration, authentication, scopes, workspace setup, and deployment state. Validate the required connection before treating it as an operational dependency.
Can follow-up be triggered by ShipStation order events?
Yes, and it should be. Follow-up driven by real order and fulfilment state is materially more accurate than a periodic exported segment.
Can the workflow change orders or issue refunds?
Those actions carry direct customer and financial consequences and require explicit human authorization rather than automated convenience.
How is the same customer recognised across channels?
Through an identity match rule you define, including what happens when a match is ambiguous. Resolution is rarely perfect, so design for the ambiguous case.
How this access is governed
What ARIA is allowed to do in ShipStation, and who decides.
Connecting ShipStation is a permission decision, not just a setup step. These are the controls that decide what ARIA can reach, what it can change, what gets recorded, and how you take the access back.
Required permissions
ARIA works through the scopes the connection was granted, and no others. Authorization happens at the provider, so the permissions being requested are shown by the system itself before anything is connected.
What it can reach
Reachable systems are the intersection of what your organization approved in the connector registry and what the requesting identity is permitted to use. Identity resolves before execution, not after.
What it can do
Actions run through explicit execution paths with state, spend, and failure boundaries — a bounded worker path rather than an open-ended agent loop with a credential.
Credential handling
Credentials live in the governed connection layer and are resolved through canonical connection identity. They are not pasted into individual workflows, prompts, or generated artifacts.
Action logging
Execution carries state and traces: what triggered the work, which connection it used, and what came back — including an explicit failure when something did not run.
Approval and revocation
Consequential actions can be made to require a person to approve them. Access can be changed or revoked at the connection, and ARIA loses that reach without unpicking the work already completed.
Start with ARIA
Ask ARIA to run this integration.
Describe the outcome you need across this system. ARIA works out the scopes, data, and actions the job requires, and operates inside the access you grant — which you can change or revoke.
- ARIA acts only through the systems and permissions you connect.
- Connections use scoped credentials you can change or revoke.
- Actions are recorded, and consequential ones can require approval.
Start here
Turn the integration into a working business outcome.
Start with ARIA to describe the outcome, then continue into the product path that fits the workflow. Connector availability and required scopes should be validated for the specific workspace before production use.