Commerce integration guide

Shippo + UbiGrowth workflows

Shippo is a multi-carrier shipping API and platform covering label creation and tracking. This guide covers the records that matter, how the connection should be scoped, and what the first bounded workflow should be.

Introduction

Make Shippo part of the workflow, not another silo.

Validate connector availability for your workspace

This guide covers how a team designs a commerce workflow around Shippo 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 Shipment, Rate, Transaction, Label, Tracking Status, Address, and Parcel. Shippo separates the Shipment (intent) from the Transaction (the purchased label), so a shipment can exist with no label and rates expire between the two.

Shippo 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. Shippo 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 Shippo integration actually reads and writes.

Integration design starts from the objects the system really exposes, not from a generic connector diagram. These are Shippo's.

ShipmentRateTransactionLabelTracking StatusAddressParcel

Identity and matching

Shippo separates the Shipment (intent) from the Transaction (the purchased label), so a shipment can exist with no label and rates expire between the two.

Start here

Consume Tracking Status webhooks and route exceptions — stalled, returned, delayed — to support before the customer asks, with the order and recipient address already attached.

What this will not do

It will not choose the right service. Rate shopping optimises cost; delivery promise is a commercial decision the workflow should be given, not make.

The constraint to plan around

Address validation is advisory for some carriers and blocking for others, so the same address can produce a label with one carrier and a hard failure with another.

Build notes

What you actually have to reason about in Shippo.

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.

FieldWhy it matters
shipment vs transactionintent versus the purchased label, with rates expiring between them
rate object_idthe specific rate being purchased, time-limited
tracking_statusthe delivery lifecycle including exception states worth acting on
address validation resultsadvisory for some carriers, blocking for others
parcel dimensionswrong dimensions produce carrier adjustments billed after the fact

Authentication

API token with test and live modes clearly separated. Test mode produces labels that are not real, which is exactly the right development boundary.

Events and delivery

Webhooks deliver tracking updates and transaction events. Tracking exceptions are the highest-value subscription because they let support act before the customer complains.

Workflow

How the Shippo workflow runs.

The operating sequence, from reading the source system through to the result landing back where it belongs.

01Read order and customer state02Resolve the customer03Trigger from a real event04Run the lifecycle action

Step 01

Read order and customer state

Connected Shippo 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 Shippo workflow is allowed to write anything.

01Resolve the customer across channels02Treat order state as the trigger

Step 01

Resolve the customer across channels

Decide how a customer in Shippo 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 Shippo workflow.

  1. 01

    Decide which records Shippo owns and which the workflow may act on, starting read-only.

  2. 02

    Define the customer identity match across order, marketing, and support systems before enabling any follow-up.

  3. 03

    Pick one lifecycle moment — post-purchase, fulfilment exception, or repeat-purchase timing — and instrument only that.

  4. 04

    Once tracking exceptions route to support, add proactive customer notification so the customer hears from you before they ask.

Governance

Controls that matter.

01

Control 01

Order, refund, and fulfilment changes require explicit authorization rather than automated convenience.

02

Control 02

Customer messaging honours consent, preference, and channel rules.

03

Control 03

Payment and personal data stay in the systems that already govern them, at scoped access.

Failure modes

How a Shippo 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

Carrier adjustment charges appear weeks later.

Cause

Parcel dimensions or weight were wrong at label purchase.

Fix

Validate dimensions against the actual product data before purchasing.

Symptom 02

A label purchase fails for one carrier and works for another.

Cause

Address validation is blocking for some carriers and advisory for others.

Fix

Validate the address first and handle the carrier-specific outcome explicitly.

Symptom 03

A rate is rejected at purchase time.

Cause

The rate expired between quoting and buying.

Fix

Re-quote if the gap exceeds the validity window rather than retrying the stale rate.

What changes at scale

Label volume drives cost directly. Tracking webhooks scale well; rate shopping on every order is the expensive part and can often be cached by lane.

Examples

What a working Shippo workflow looks like.

Bounded scenarios rather than a feature list. Each one can be verified against work the team already does.

Shipping workflows

With Shippo 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 Shippo 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.

  • Address validation is advisory for some carriers and blocking for others, so the same address can produce a label with one carrier and a hard failure with another.
  • Purchasing a label is a real charge, and carrier adjustments for incorrect dimensions arrive weeks later. Automated purchasing needs dimension validation before it needs retry logic.
  • When service selection is a commercial decision. Rate shopping optimises cost; the delivery promise made at checkout should be given to the workflow rather than chosen by it.
  • Marketplace and platform policies constrain what can be automated around Shippo, 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

Shippo integration questions.

What records does a Shippo integration actually work with?

The primary records are Shipment, Rate, Transaction, Label, Tracking Status, Address, and Parcel. Shippo separates the Shipment (intent) from the Transaction (the purchased label), so a shipment can exist with no label and rates expire between the two.

What should the first Shippo workflow be?

Consume Tracking Status webhooks and route exceptions — stalled, returned, delayed — to support before the customer asks, with the order and recipient address already attached.

What will a Shippo integration not do?

It will not choose the right service. Rate shopping optimises cost; delivery promise is a commercial decision the workflow should be given, not make.

What is the main constraint to plan around?

Address validation is advisory for some carriers and blocking for others, so the same address can produce a label with one carrier and a hard failure with another.

What changes about a Shippo integration at scale?

Label volume drives cost directly. Tracking webhooks scale well; rate shopping on every order is the expensive part and can often be cached by lane.

How does authentication work for Shippo?

API token with test and live modes clearly separated. Test mode produces labels that are not real, which is exactly the right development boundary.

Does Shippo support webhooks, and can they be trusted?

Webhooks deliver tracking updates and transaction events. Tracking exceptions are the highest-value subscription because they let support act before the customer complains.

What is the risk of writing to Shippo?

Purchasing a label is a real charge, and carrier adjustments for incorrect dimensions arrive weeks later. Automated purchasing needs dimension validation before it needs retry logic.

When is connecting Shippo the wrong call?

When service selection is a commercial decision. Rate shopping optimises cost; the delivery promise made at checkout should be given to the workflow rather than chosen by it.

What should a Shippo 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 Shippo 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 Shippo 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 Shippo, and who decides.

Connecting Shippo 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.

Goes to UbiGrowth, with the page you asked from attached. We do not sell or share it. Prefer to talk? Call 972-823-1294.

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.